年度归档: 2019 年
-
文章针对资源文件表结构扩展性不足的问题,将原有仅用于选题的 plan_asset 表重命名为 asset 表并删除关联字段,同时在选题表中新增以逗号分隔的资源 ID 字段。通过数据迁移脚本将原有关联关系同步更新至新字段,最终将 asset 表重构为通用资源表,由各业务表自行维护与资源的关联。
-
文章介绍了基于 Supervisor 和 bash sleep 实现 Docker 部署中类 crontab 任务以降低内存占用的过程。通过编辑配置文件调整脚本执行间隔,并在测试环境检测运行状态与异常处理情况。实验发现将 sleep 时间控制在合理范围并调整 startsecs 参数可有效降低内存,最终在两个产品环境中验证了该方法能显著减少 Docker 容器的内存占用并符合预期。
-
针对 yiisoft/yii2-app-advanced 项目,本文介绍了在 MySQL 日志表累积数百 GB 数据的背景下,基于控制台命令行实现日志消息自动定时删除的方法。操作包括编写 LogController,在凌晨时段按每日批次删除过期数据,通过延缓执行机制避免性能影响。最终配置保留时间参数后,成功将开发环境日志表数据量缩减至 2.36 GB,达到了清理与性能的平衡。
-
本文针对 Yii 2.0 中文件上传接口在多场景下复用的问题,通过引入 scenario 参数区分不同验证规则,并利用模型规则的 on 属性实现了差异配置。文章详细记录了在 UploadAction 和 Upload 文件中的具体修改过程,结合参数配置,验证了不同场景下对文件扩展名和数量的限制,最终通过在接口中增加场景判断,实现了既允许多文件验证又仅上传首个文件的预期逻辑。
-
文章介绍了基于 supervisord 运行 PHP 命令行脚本的方法,通过编辑配置文件和初始化脚本,实现了利用 Rancher 环境变量控制脚本是否运行。测试表明,当环境变量设置为 true 时脚本正常运行,设置为 false 或未设置时不运行,从而支持集群部署时仅在单机中运行。文章最后建议参考特定网址修复临时文件夹的 Bug。
-
文章针对基于 Rancher 部署时出现的文件上传报错进行分析。通过检查日志确定原因为 PHP 缺少存储上传文件的临时文件夹,对比发现系统默认的 /tmp 目录被覆盖导致权限差异。排查后将相关配置文件迁移至新目录,并修改启动脚本将临时路径替换为 /mcloud,最终通过接口测试验证文件上传恢复正常。
-
本文记录了使用 TortoiseGit 将 feature-netease 分支上的单次提交 ee8290 单向合并至 develop 分支的操作流程。本地 develop 分支出现错误且该 Bug 在特定提交中已修复,通过切换至 develop 分支并利用合并功能中的摘取此提交选项进行操作。过程中遇到冲突并手动解决,最终推送成功,验证了 develop 分支已包含该提交且原分支无变化。
-
针对 Windows 10 中切换至搜狗五笔输入法后无法输入字符的问题,通过检查系统语言设置,发现需调整默认输入法选项。操作过程是将默认输入法从“使用语言列表(推荐)”更改为“中文 (简体,中国) – 微软拼音”。设置完成后切换回搜狗五笔输入法,输入功能恢复正常。
-
本文探讨了在 Yii 2.0 框架中基于数据提供者实现类似禅道任务列表的排序功能。针对默认配置下无法实现主字段相同时按 ID 辅助排序的问题,文章通过配置 yii\data\Sort 属性的 asc 与 desc 元素,定义了包含 ID 的复合排序规则。测试结果表明,调整后的 SQL 查询 ORDER BY 子句能够正确执行单字段或组合字段的升序与降序排列,未定义的字段则回退至默认排序。
