当前位置: 首页 > news >正文

网站建设想法建设项目环保备案网站

网站建设想法,建设项目环保备案网站,ppt免费模板在哪下载,全网营销老婆第一人前言 问题都是逐步暴露的#xff0c;没有显现出来的问题不代表不存在#xff0c;只是有更低级的问题先出现了而已。特别是对于 service 来说#xff0c;问题出现之后#xff0c;必须要找到根因#xff0c;找到根因之后#xff0c;解决方案可以分布实施#xff0c;否则所…前言 问题都是逐步暴露的没有显现出来的问题不代表不存在只是有更低级的问题先出现了而已。特别是对于 service 来说问题出现之后必须要找到根因找到根因之后解决方案可以分布实施否则所谓的中间临时方案很可能只是拆西墙补东墙甚至可能是错的。做 service 不能抱侥幸心理问题是一定会出现的。(所以真正的中间方案、临时方案一定是找到根因心里有完整的解决方案后的分步骤实现过程而已)不同的阶段不同的措施找到2/8点四两拨千斤以最小的代价收获最大的效果。做 service 的严谨性非常重要前期并不会多花时间后期反而会节省很多时间。 最先体现出来的问题用户访问列表、用户信息等速度极慢 原因分析 网络数据库访问每次访问数据库都发起了一次连接当访问多张表时发起多次连接 改进方案 修改数据库主从的位置联合查询存储过程数据库连接池 2/8点 将核心流程的数据库查询做存储过程 效果用户的查询基本控制在 1s 以内了1s以内的查询对于用户来说可能就基本无感了因此该阶段暂告一段落 接着出现问题日本量激增造成了大量的访问错误(其实访问错误一直存在只是大家没有关注) 分析 基本还认为是网络问题、数据库问题造成访问速度慢最终导致服务器性能不够但是即使激增后的用户量原理上来说也不可能将我们目前的服务资源消耗完所以必须要进一步寻找根因 最严重的问题 IOS APP 在 1s 内发送大量的查询 userinfo 请求导致服务启动太多的进程消耗完服务器资源 尝试的改进方案将服务器上除 php 外的其他服务迁移到其他负载低的服务器在 APIGateway 上对 userinfo 接口做 60s 的缓存降低服务的压力(这样用户在一分钟内的频繁请求就会被 API 网关过滤) 效果 负载降下来了在问题出现的时候服务仍然基本处于可用的状态 为什么在 API 网关上做缓存 依托于完善的公有云做接口限制否则服务做限制仍然会消耗掉服务的进程资源基于 API 网关做限制其实要求 接口是标准的 rest 风格缓存都是针对 get 请求的但是我们的接口并不是 rest原则上做不了接口缓存。只是由于 userinfo 接口刚好携带有每用户唯一的鉴权头域能实现方法级的缓存 问题在 logging 上仍然有访问超时的现象发生 分析 偶尔还是出现服务器资源被占完的情况但是当前同时访问的用户数量其实并不多分析日志后发现API 网关的缓存偶尔会失效造成一部分压力还是透传到了 php 服务但是透传后的压力应该不至于会造成服务器满载所以需要从以上两个访问找原因 问题 APIGateway 的缓存有效期是 60s 当超过 60s 之后缓存失效此时新来的请求还是会透传到后端服务然后在重建数据这个机制本身是没问题的。但是问题在于第一个请求得到响应的时间太长有的甚至达到接近 10s在响应没有回来之前缓存是无法重建的所以10s内的并发压力全部透传到了后端服务那么问题基本上指向了后端服务为什么一个请求需要耗时那么久 尝试的解决方案 增加数据库连接池方案 proxysql解决连接数据库慢的问题修改 php-FPM 的配置将初始进程数量调整到50个最多的空闲进程调整为52个对所有能做 redis 缓存的数据做 redis缓存 效果 访问速度加快非常明显但是在PC上做200个并发访问的时候仍然有访问超时的现象出现(502,504) 分析 发现 nginx 对频繁的访问会自动返回499对应504 解决方案 修改 nginx 的配置 效果 504的问题解决了但是还是会返回502的现象 分析 FPM的初始进程数量是50个并发激增的时候创建进程比较耗时 解决方案 将初始进程调整为 100个 效果 响应时间明显缩短但是还有少量 502 的现象 分析 FPM 原理上是一个消耗内存的框架但是为什么现在是 CPU 先被占满呢打开日志查找慢响应的具体原因发现BUG有一个BUG会导致循环查询一个数据其他的 php 服务没有使用数据库代理Php 服务之间走的是 curl 来访问 解决方案 解决BUG所有的 php 服务都走数据库代理要查询数据的时候直接访问代理不走 curl其实服务之间的访问走接口会更合理但是php没有 UDS 等高性能服务 效果 在三台 PC上发起测试基本没有 502 出现但是后面的请求访问延时仍然偏大 可能的原因 开发测试环境的读数据库是在美国与生产环境相反生产环境的条件应该要比这个好开发测试环境的数据库服务并不是独占资源有可能数据库本身的访问会被影响表设计优化(基于完整的用户故事设计表而不是单个小需求)Mysql 查询方法优化Mysql 本身配置优化proxysql有更好的配置选项Php 服务还有继续优化的余地服务器本身的配置优化 这个阶段的优化目标已经达到所以暂时先不往下探索。 过程中我们还计划要做但是没有做的事情 对所有的接口做参数的合法性校验对所有的接口做调用频率的限制做log的代理用来将服务的错误日志发送到 GCP 的logging同时将日志文件上传到 S3做代码走读梳理流程
http://www.pierceye.com/news/948483/

相关文章:

  • 网站建设要做什么会计科目网站建设的展望 视频
  • 那种广告式网站怎么做网站为什么具有网络营销价值
  • 包头建站怎么下载网站动态图片
  • 大企业网站建设哪里好qq网站登录入口
  • 手机网站有什么区别是什么wordpress模板2zzt
  • 想做个网站报价蔬菜价格怎么做公司做网站一般多少钱
  • 南宁老牌网站建设公司公司网站搭建教程
  • 网站首页快照更新快常见的电子商务网站网址
  • 外贸网站导航wordpress category 404
  • 漯河市网站建设在线教育网站建设
  • 便宜网站建设模板网站网站做推广需要营业执照
  • 网站地址栏图标文字企业网站设计公司
  • 公司做网站推广有没有用网址导航被更改了怎么换回来
  • 好看云在线网站模板下载 迅雷下载 迅雷下载地址免费建小程序网站
  • 通州网站制作游戏网站域名
  • 医疗网站前置审批要多长时间营销型外贸网站广州
  • 哈尔滨网站建设oeminc购买手表网站
  • 营销推广公司兰州seo培训
  • 南城网站建设公司php购物网站开发实例源码
  • 无锡网站备案百度应用市场
  • 高端房产网站建设上传空间网站
  • 上海城建建设官方网站中企动力网站价格
  • 网站建设中国十强阜阳网站制作公司多少钱
  • 网站建设公司 温州虚拟机电脑网页版
  • 网站建设原理与实践深建市住房和城乡建设局网站
  • 南通建设招聘信息网站平面设计工作室怎么接单
  • 手机网站开发技巧wordpress网站外包
  • 南昌外贸网站建设宿州做企业网站
  • 专题网站建站给医院做网站赚钱吗
  • 泉州市做网站网站建设培训需要多少钱