标签: Go
-
针对 PHP / Go 双栈后端开发者远程求职信息过载的问题,作者将原有近 30 个网址和 10 个频道精简为核心资源看板。该方案保留 10 个覆盖综合聚合、语言垂直及 Web3 赛道的岗位网站,去重后精选 5 个 Telegram 频道用于被动接收信息,并单列 2 个发现源用于每月低频巡检。最终通过每日被动刷新、每周主动投递与每月渠道迭代的三档节奏,在降低信息噪音的同时兼顾了全职远程、自由职业与独立开发的多线探索需求。
-
针对大语言模型在结构化数据匹配上的不足,文章记录了使用 Go 语言结合百度翻译 API 进行标签自动化清洗的工程化实践。通过 Docker 搭建开发环境,编写脚本读取标签数据,调用 API 将中文标签翻译为英文并在现有标签库中进行索引碰撞。脚本最终处理了 3592 条数据,成功匹配 277 条对应关系,将结果输出为 UTF-8 格式的 CSV 文件,为后续 WordPress 数据库的合并与清理操作提供了可靠的数据支撑。
-
本文记录了在 Ubuntu 26.04 上使用 Trae CN 编辑器和 Docker 容器搭建 Go + Gin 开发环境的完整流程。文章介绍了宿主机配置 Git 认证、安装 Go 及扩展的方法,重点阐述了通过挂载目录复用 Git 配置、持久化 Go 模块缓存以及在容器内成功运行 Gin 服务的步骤,最终实现了宿主机负责编辑、容器负责运行的高效工作流。
-
本文记录了在 Trae CN 中尝试使用微软官方 Dev Containers 扩展的踩坑过程。在配置扩展市场地址并尝试安装官方扩展后,无论通过在线安装还是手动导入 VSIX 文件,扩展始终显示“用户已全局禁用”且无法激活。查阅官方论坛确认目前 Trae CN 尚不支持 Dev Containers,因此最终放弃该方案,计划改用宿主机 Go 配合容器内运行及 Docker 扩展辅助的混合模式进行后续开发。
-
本文记录了在 Ubuntu 26.04 上利用 Docker 搭建 Go Gin 开发环境的全过程。通过编写 Dockerfile 预装 Git,构建 Go 1.26 Alpine 镜像,并编写 docker-compose.yml 接入现有的 MySQL 和 Redis 自定义网络。最终实现了在容器内运行 Gin 应用,成功验证了数据库连通性及 API 请求,实现了代码与数据库容器的分离部署。
-
因百度 Sitemap 提交不可用,作者转而通过 API 主动推送,并结合 MySQL 8.0 与 Gin 实现增量提交方案。在 AI IDE 选型中,作者对比了多种工具后,因习惯 VS Code 键位及对国产模型的需求,最终选择了 Trae 国内版。安装过程中,作者遇到了架构选错导致依赖报错,以及登录页面加载卡顿的问题,分别通过下载对应 x64 版本和重新触发授权解决,最终顺利进入开发环境。
-
本文探讨了 Go 语言中 goroutine 发生未捕获 panic 导致程序崩溃的问题,通过对比使用和不使用 recover 的示例,分析了 defer 与 recover 机制的工作原理。结果显示,在 goroutine 中利用 defer 嵌入 recover 调用,能有效捕获异常值并阻断其传播,从而隔离单个协程的故障。这确保了主线程及其他正常运行协程不受影响,避免了进程整体退出,是保障生产环境服务稳定性的关键实践。
-
本文介绍了 Go 语言标准库内置的模板引擎,重点对比了 text/template 与 html/template 的区别与适用场景。文章从 PHP 转向 Go 的开发视角出发,详细讲解了模板定义、解析与执行的三步流程,以及动作、变量与管道等基础语法。此外,还深入分析了 html/template 的上下文感知自动转义机制,强调了其在防范 XSS 攻击方面的安全优势,帮助读者快速掌握 Go 模板渲染的核心用法。
-
在 Go 语言中,从未关闭的 channel 读取数据可能导致阻塞甚至死锁,特别是在多 goroutine 场景下难以把握关闭时机。文章探讨了如何使用 select 语句配合 default 分支实现非阻塞读取,通过 for-select 结构同时监听多个 channel,在没有数据时立即执行 default 逻辑而非等待。这种方式避免了显式关闭 channel 的必要性,提供了更灵活的并发流程控制,是处理多数据源和防止死锁的有效手段。
-
本文基于 Go 语言对比了传统串行实现与多协程并发实现统计 1 至 200,000 范围内素数的性能差异。传统方法使用循环在主线程顺序执行,而并发方法通过 Channel 建立任务队列,实现生产者与多消费者模型的动态负载均衡。测试结果显示,在双核 CPU 环境下,串行实现耗时约 25 秒,多协程并发实现耗时约 12 秒,效率提升 50%,证实利用多核优势能有效减少 CPU 密集型任务的总耗时。
