渠道分布式系统从七月份正式上线以来,从小规模试点(五家营业部),到如今的四百五十家营业部,整体上还是比较平稳的经受住了考研。当然,在这一过渡期中,还是遇到了很多之前没有遇到的困难,幸好的是,我们都及时解决掉了。今天主要对主要问题做下记录

  • docker容器运行一段时间就会出现OOM:docker容器跟jdk低版本不兼容问题(需要保证是jdk1.8 180版本以上)
  • 基于eureka服务无法做到服务无感知重启:修改eureka默认配置(增加ribbon重试机制&修改docker关闭服务方式(kill -15代替kill -9))
  • 数据库连接池满了:高并发的情况下,慢sql把连接占用光了,优化sql(覆盖索引&数据跟count分离&大小权限不同查询策略&分表)
  • 数据库死锁:dbcp数据库驱动连接版本太低,参考连接:https://blog.csdn.net/wangyangzhizhou/article/details/52149076
  • 容器OOM,使用@async配置的时候,没有配置异步参数,导致高并发的情况下,线程数会不停的创建,极端情况把服务整死了(自定义异步参数配置,增加异步队列,设置异步队列满之后的处理策略)
  • 数据库同一订单出现重复数据:分布式锁