GO2应对千万级访问量的解决之道
来源:互联网 发布:口取纸打印软件 编辑:程序博客网 时间:2024/05/02 04:44
1, 背景:
GO2 是一套完整的用车解决方案,它详细记录了车辆位置、用户驾驶行为等信息,为用户更好的了解自身驾驶习惯及定位车辆提供了帮助
所有的数据都来源于装载在用户车辆上GO2设备,它会定时发送收集到数据到云端,然后用户通过GO2 APP调用云端API获得相应的数据。
GO2自上线伊始就实现了快速的增长,随着访问量及数据量 的提升,最早的架构已无法承载现有的业务量,因此我们对重新设计了架构以
适应业务需求,以下就是我们应对方案及架构演变的介绍。
2, 架构演变
(1) 原始阶段
-流量:<100W
-架构:双机负载,flask+python
-具体实现及原因:
1,在设备与接口服务间添加代理服务,降低链接次数
2,使用nginx做负载均衡,提高Server可用性
3,使用单台mysql服务器,项目初期降低成本和运维成本
-架构图:
-问题:
1,存储的设备数据延时较大
2,并发能力弱
(2) 成长阶段
-流量:<5000W
-架构:业务分离,Server集群,tornado,MySQL读写分离
-具体实现及原因:
1,创建设备独立Server集群,为加快处理速度及并发能力,采用tornado异步非堵塞框架及celery任务队列(MQ:redis)
2,将使用率高的数据放入redis中,提高查询效率
3,创建MySQL读写cluster,减轻数据库压力
-架构图:
3,未来规划
随着业务量持续的增长,我们不得不未雨绸缪,将不断加大投入、优化架构、提高效率:
-服务划分:SOA化
-统一访问控制:KV集群
-分布式数据库:Hbase
-快速部署、提高伸缩性:Docker
- GO2应对千万级访问量的解决之道
- 千万级访问量架构二
- MySQL千万级访问量架构
- 【WEB静态页面架构经典】架构一个可承受千万级访问量的动态扩展CMS
- 架构一个可承受千万级访问量的动态扩展CMS
- 微信朋友圈:应对春节千亿访问量背后的故事
- 从0到千万级访问量网站架构演变史
- Test Go2
- 新浪付稳:揭秘微博如何10分钟快速应对百亿级访问量
- 网站大访问量如何应对(1)
- 千万级的数据库
- 告诉你如何设计一个日访问量千万级别的系统,谈oracle的高级设计和开发(6)
- 百万级访问量网站的技术准备工作
- 百万级访问量网站的技术准备工作
- 百万级访问量网站的技术准备工作
- 百万级访问量网站的技术准备工作
- 百万级访问量网站的技术准备工作
- 百万级访问量网站的技术准备工作
- Handler
- html问题解决
- iOS设备唯一标识获取策略
- android 解决软键盘遮挡popwindow问题
- 给Jquery动态添加的元素添加事件
- GO2应对千万级访问量的解决之道
- dos命令删除文件夹下的文件 和隐藏文件
- 数据结构实验之二叉树五:层序遍历
- Codeforces Round #367 (Div. 2) C Hard problem(DP)
- 最大二分匹配(匈牙利算法)
- 根据入栈顺序判断出栈序列正确与否
- UITableViewCell的选择状态问题
- java 在项目根目录创建文件
- Cordova文件下载