企业高并发成熟解决方案思考
要想解决高并发的问题,先需要弄清楚企业整体架构
高并发发生在二处:1.负载均衡 2.数据库处
分析完企业整体架构之后 1:开始搭建负载均衡服务器 2:演示负载均衡服务器的效果
第一种:解决方案 DNS
场景:
我说的大数据量处理是指同时需要对数据进行检索查询,同时有高并发的增删改操作;
大数据量的处理
例如腾讯,盛大,动辄数以亿计的帐号,怎么能这么快呢, 于是找到了互联网现在对数据处理的发展:
对于大数据量处理,如果是互联网处理的话,一般分为下面阶段:
第一阶段,所有数据都装入一个数据库,当数据量大了肯定就会出现问题,就像刚刚说的查询,于是想办法
第二阶段,那时肯定想做缓存机制,确实可以,如加上缓存Memcached,但缓存也是治标不治本,数据量太大了也是不行,于是
第三阶段,master-slave模式,进行主从数据库,master提供写,slave进行读,这个适合于有写造成数据库卡的方法,还是不行,于是
第四阶段,垂直分库,这个意义还是不大,于是
第五阶段,进行水平分库,这个不错,记得以前从兴也是按这个分时间水平分库,其实可以分的更细点估计效果更好
-
- 问题2:数据库出现瓶颈 怎么办?
以Mysql为例:
1:对Mysql进行优化
2:缓存,主流缓存Memcached,redis…
3: mysql读写分离 + 主从复制
4:Oracle
5:Oracle读写分离 + 主从复制
6:Oracle Partition 分区
7:Oracle RAC集群(终级解决方案)
此方案:非常贵,即使是淘宝,京东这样的大公司,也是很难受的。
主要方案:水平拆分,库表散列
待续…
备选方案:Mysql主从复制与读写分离
MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践
Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过。但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面。
因此,一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部署与实施的。