分类: 云计算
-
本文针对基于Yii 2的ActiveRecord导致Redis CPU使用率达到100%的问题进行了分析。通过监控发现,随着比赛数据增加,响应时间恶化,Redis CPU飙升。经排查,deleteAll和count查询方法在模型Key数量较大时消耗了大量资源。验证测试表明,将count调整为exists以及重构部分ActiveRecord为Redis原生命令后,CPU使用率显著下降。最终结论是insert性能优于one/exists,count/all消耗最大,建议在单模型Key数量超过10000时避免使用ActiveRecord进行查询操作。
-
本文介绍了在 Yii2.0 框架下实现 Redis 锁定机制的具体流程。文章首先设置锁定过期时间并获取 Redis 连接,使用 SETNX 命令获取锁及 DEL 命令释放锁。针对高并发场景下锁过期的竞争问题,作者对比了两种算法,最终采用基于 GETSET 的第二种方案确保只有一个客户端能获取过期锁。验证通过后,将获取与释放锁的逻辑抽象为独立的类文件,完成了功能封装。
-
本文记录了在阿里云ECS的CentOS 7系统下,基于OneinStack部署LNMP环境并运行Yii2高级应用程序模板的流程。内容包括自动格式化SSD数据盘、修改安装路径、添加虚拟主机及FTP上传程序。操作中针对404错误配置了URL重写规则,并编译安装了Fileinfo与Redis扩展,最终配置PHP使用Redis存储Session及删除默认目录以完成安全设置。
-
本文记录了在OneThink框架中整合阿里云OSS PHP-SDK2.0.4,实现Web端直传、服务端签名及上传回调的流程。文章首先介绍了设置Bucket的CORS配置,随后详细说明了复制函数、新建上传表单方法、调整模板路径、迁移静态资源以及配置服务端签名接口的操作步骤,并包含Web服务器重写规则的配置。最终通过测试验证了文件直传与回调接口的写入功能成功实现。
-
本文介绍了在OneThink框架中整合阿里云OSS PHP-SDK 2.0.4的实现过程。内容包括复制SDK文件到指定目录、注册命名空间及修改类文件后缀名,接着在配置文件中设置内外网访问域名。文章详细说明了如何实例化OssClient类上传本地文件,以及基于ThinkPHP上传类定制OssUpload类,最终通过表单实现文件直接上传至OSS的功能。
-
本文介绍了阿里云ECS数据盘原地扩容的实现流程。在控制台扩容并重启实例后,通过命令确认磁盘容量变化。先卸载已挂载的磁盘,若提示设备忙需查找并结束占用进程。随后使用fdisk命令删除原有分区并新建分区,利用resize2fs指令调整文件系统大小以保留数据,最后将磁盘重新挂载至原目录完成扩容。
-
针对阿里云OSS启用CDN后text/javascript格式文件未进行gzip压缩的问题,文章记录了排查与解决过程。经确认CDN配置支持该格式,但实际未生效,通过提交工单排查发现页面优化开关异常,经人工处理后修复。验证发现状态码200时响应头包含gzip,状态码304时不包含,最终百度站长平台不再提示未启用压缩。
-
本文详细介绍了在阿里云服务器ECS的CentOS 6.5 64位系统上部署LAMP环境的过程。内容包括使用PuTTY连接服务器,对数据盘进行分区、格式化并挂载至指定目录,安装配置Apache服务并设置虚拟主机,安装PHP及常用扩展模块,以及配置VSFTPD服务以支持文件管理。最终验证了Web服务与PHP环境的可用性,实现了基础运行环境的搭建。
-
针对 Apache 服务器下 utf-8 编码网页正常显示而 GB2312 编码网页为乱码的问题,经排查发现原因是 httpd.conf 文件中 AddDefaultCharset 设置为 UTF-8 所致。通过在虚拟主机配置中将 AddDefaultCharset 设置为 gb2312 以覆盖全局默认设置,最终实现了 GB2312 编码网页的正常显示。
-
针对禅道被曝出的跨站攻击漏洞,文章分析了位于 checkupdate.html.php 文件的问题代码。解决方法是将原始的输出代码修改为使用 htmlspecialchars 函数进行处理,从而有效地防止了跨站脚本攻击风险。
