Press "Enter" to skip to content

Category: 技术

java调用API超时问题分析

最近用php写了两个API接口,上线之后使用正常,过两天java那边反馈出现请求超时,我自信心反应不php接口的问题,我自己模拟请求,然后 ab 压力测试,并没有出现超时问题。 java小伙伴并不信让我提供日志,我提供php执行日志和nginx请求相应日志,nginx配置了 log_format main ‘$remote_addr *$connection [$time_local] “$request” ‘ ‘$status $body_bytes_sent $request_time $upstream_response_time’; java小伙伴 更相信 $upstream_response_time 重启nginx 让java 小伙伴再请求多次,把日志给到他,他才意识java客户端的问题 最后他定位到了 是红色这块区域代码引起的,接口返回的内容字符串超过一定长度,客户端就必现这个bug

Leave a Comment

Windows-1252字符集转UTF-8

瑞士物流轨迹查询,网站C#开发的,有拉丁文字符集比如 “paketet har ännu inte lämnats över till early bird” 这个物流节点描述。我们需求把物流轨迹描述获取到,并存储起来。 ä 一开始这种类似拉丁文字符自己乱码显示 mb_detect_encoding 识别网页源文件 ,没有提供字符集列表参数,识别失败 浏览器打开调试窗口 输入documnet.charset 显示 windows-1252 编码字符集 把windows-1252 放入mb_detect_encoding($content, array(“ASCII”,”UTF-8″,”GB2312″,”GBK”,”BIG5″,”Windows-1252″) 还是识别失败…

Leave a Comment

配置gitlab CI/CD php项目

最近迁移项目使用gitlab 来做php项目发布平台,gitlab 自带CI/CD ,可以部署自动化测试及发布。我们目前使用它测试项目,发布项目代码到远程服务器上面。 首先gitlab 注册账号,注册成功之后,新建项目,然后把本地电脑项目代码push gitlab项目仓库,我们远程服务器是阿里云ECS 7年前购买的,centos 6.8版本 需要更新git版本 更新2.32.0 //删除系统自带git yum remove git wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.32.0.tar.xz cd git-2.32.0 make prefix=/usr/local/git all make prefix=/usr/local/git install…

Leave a Comment

MySQL ERROR 1267 (HY000): Illegal mix of collations

阿里云RDS升级8.0之后监控一周之后,发现了服务异常,检查发现事务没有同步迁移导致,表分区没有自动创建,导致系统服务异常 然手动迁移,发现数据库字符集不一致,先手动修改字符集统一utf8,迁移存储过程,创建存储过程成功,但是执行失败,提示MySQL ERROR 1267 (HY000): Illegal mix of collations 具体提示(utf8_tolower_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation ‘=’ 看具体错误提示 utf8_tolower_ci 字符集 忽略大小写 数据库 及表我都设置utf8_general_ci,但是配置忽略不区分大小写 导致 修改存储过程, 在 start…

Leave a Comment

阿里云RDS升级问题mysql5.6升级到8.0需要处理的问题

一直用阿里云RDS,系统时间比较久,mysql还是5.6版本,因为是2016年购买的服务,系统服务一直在运行中。 2021年底时候跟老板提了升级阿里云RDS,看了阿里云社区RDS mysql升级情况,在线升级可以升级到5.7版本,不支持升级到8.0。做背景调查时候mysql8.0相比5.6性能提升了30%左右,就确定升级到最新版本使用。 先购买RDS mysql 8.0实例,然后阿里云数据传输服务DTS,从老版本5.6同步到8.0数据,然后开启实时同步。用一个子域名部署新服务,连接mysql 8.0 测试连接 数据展示问题。后续稳定了,全部切换到mysql 8.0连接上面。 最后操作切换时候还是被sql_mode给坑了, mysql 8.0 默认sql_mode值是 “ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION” ONLY_FULL_GROUP_BY 影响 group by sql 语句 STRICT_TRANS_TABLES 这个是开启严格模式,对数据严格验证,影响数据插入,如果某个字段没有设置默认值 就坑大了,导致数据新增插入不了 NO_ZERO_IN_DATE…

Leave a Comment

重新开始记录

周一发现博客被黑了,服务器内存一直100%,检查了一上午挖矿文件隐藏在Mysql里面,不知道啥原因中毒的,mysql没有备份,我删除posts 表,导致之前博客文件全部没有了,重新开始记录吧。

Leave a Comment
Exit mobile version