分类: Web框架
-
本文记录了在 Ubuntu 26.04 上使用 Trae CN 编辑器和 Docker 容器搭建 Go + Gin 开发环境的完整流程。文章介绍了宿主机配置 Git 认证、安装 Go 及扩展的方法,重点阐述了通过挂载目录复用 Git 配置、持久化 Go 模块缓存以及在容器内成功运行 Gin 服务的步骤,最终实现了宿主机负责编辑、容器负责运行的高效工作流。
-
本文记录了在 Ubuntu 26.04 上利用 Docker 搭建 Go Gin 开发环境的全过程。通过编写 Dockerfile 预装 Git,构建 Go 1.26 Alpine 镜像,并编写 docker-compose.yml 接入现有的 MySQL 和 Redis 自定义网络。最终实现了在容器内运行 Gin 应用,成功验证了数据库连通性及 API 请求,实现了代码与数据库容器的分离部署。
-
本文针对列表接口响应超时的优化过程,探讨了在 Spatie\QueryBuilder 中强制使用组合索引的适用场景。通过 SQL 执行耗时分析发现,当查询条件包含 shipping_at_gmt 与 shipping_status、shipping_type 或 operated_source 时,强制使用组合索引有效;但在包含 operator_user_id 且数据量极大时会导致负优化。基于此总结出针对性规则,最终实现后的打印调试结果符合预期。
-
针对 Spatie\QueryBuilder 中查询 SQL 强制使用索引的需求,文章参考了列表接口响应超时的优化方法,介绍了具体的实现步骤。通过配置生成的 SQL 语句已符合预期,成功强制查询使用指定索引。
-
本文记录了在 WSL-Ubuntu 环境下使用 Docker 搭建 Hyperf 框架时解决 Redis 连接失败问题的过程。文章排查了连接拒绝的原因,确立了基于 WSL 的最佳开发架构,通过创建 Docker 公共网络实现了 Redis、MySQL 容器与 Hyperf 项目的互通。最终通过修改 .env 配置文件,成功启动服务并实现了通过 localhost 访问。
-
本文记录了在 WSL-Ubuntu 环境下的 Docker 中安装 Hyperf 项目的全过程。操作中主要遇到了因容器 PHP 版本与 Pest 测试框架依赖不匹配而导致的 Composer 报错问题。作者分析了版本冲突原因,并通过在安装时跳过 Pest 组件及清理容器目录的方案,最终成功创建了 Hyperf 项目。
-
本文记录了使用 Go 和 Gin 构建 RESTful API 的全过程,涵盖了 WSL 与 Docker 的环境配置。文章首先尝试了 GoLand 配合 Docker,但因路径映射和 GOROOT 配置的复杂性,最终转向 VS Code 结合 Dev Containers。通过配置 devcontainer.json 和 docker-compose.yml,实现了在容器内挂载代码、安装依赖及运行服务。文章还解决了 Go 版本不兼容导致的依赖获取问题,并完成了代码向 GitHub 仓库的提交与托管配置。
-
本文记录了在 WSL-Ubuntu 环境下利用 Docker 安装 Hyperf 框架的过程。在完成目录创建与挂载配置后,项目创建初期因容器内 PHP 版本为 8.1,无法满足 Pest 测试框架及其依赖对 PHP 8.2 的要求,导致依赖解析失败。最终通过清理容器内残留文件并在安装过程中跳过 Pest 组件,成功完成了 Hyperf 项目的创建。
-
文章针对 PHPStorm 中提示 @property-read 错误的问题进行了分析,指出在 Yii2 框架的 yii\swiftmailer\Mailer 组件中,transport 并非通过公开属性设置,而是通过 setTransport() 方法进行配置。由于直接设置属性的方式属于间接调用 magic setter,导致 PHPStorm 无法通过静态分析识别该属性。文章最终通过调整配置方式解决了该报错,使代码不再出现提示。
-
针对行业资讯页面缓存未及时更新的问题,排查发现后台新增文章后前台列表需等待5分钟才同步。经对比分析,生产环境文章更新时间较北京时间早8小时,导致缓存依赖的更新时间判断失效。通过修改php.ini时区设置并在Yii2中配置MySQL连接时区为+08:00,成功确保了文章更新时间为北京时间,解决了缓存同步延迟问题。
