青云为「足记」App 做的架构重组笔记 
                            
                                                    
                        
                    
                    
  
                    
                    说明
大家最近应该都听说过 「足记」 吧, 非常火爆的 App 创业项目.
足记 在高速增长时暴露出来的问题, 还有 青云 作为基础架构提供商给出的解决方案, 是非常棒的架构案例, 在此分享给大家.
一些数据:
- 网络流量升至 300M 左右;
 - 每秒请求数(qps)达到 3,000;
 - 每天 PV 接近 2 亿;
 - 新增用户每天将近 200 万;
 - 日活跃用户数(DAU)超过 300 万;
 - 累计用户超过 1,000 万并保持继续增长;
 
遇到的问题
- 高峰期服务响应超时甚至不可用;
 - 低峰期请求处理缓慢,用户的直观感受就是经常刷新不了页面;
 - 为了应急采取了服务降级的手段,部分功能不可用;
 - 新功能开发已经停止;
 - 应用服务器 CPU 占用率偏高;
 - 10 台Web服务器的 CPU 利用率都达到80% - 90%, 急需水平扩容;
 - 数据库慢查询(耗时比较长的数据库查询语句)非常多,没有有效利用缓存,导致数据库压力过大、处理效率低。
 
解决方案
- 将Web 服务器进行了水平扩容,将应用服务器数量扩充了三倍;
 - 使用 负载均衡器 做请求分发;
 - 数据库 Slave 集群, 提高数据库可用性;
 - 引入 Redis 数据库,将业务中对一致性要求不高又要频繁读写的数据结构(如计数器和列表)从 MySQL 迁移到 Redis,减少关系型数据库压力,提高查询效率;
 - 进一步增加缓存,降低缓存粒度,降低失效率,提高命中率;
 - 为所有资源添加监控告警;
 - 配置 AutoScaling ;
 
           本帖已被设为精华帖!
        
      
          
                    
                    
          
          
                关于 LearnKu
              
                    
                    
                    
 
推荐文章: