Java 大型系统高并发大数据的处理方式


页面静态化 (页面层面的缓存)

缓存 (memcached、Redis等,数据缓存、避免多次请求)

集群负载均衡(单机处理能力不足)

分库分表(大量数据的处理、原则分、分、分)

读写分离

队列、MQ、数据库增加加锁(防止并发)

存储(IO最耗性能)

小型机(提交硬件性能,呵呵)

..... 等待再补充


数据库层面:

当数据增加到100万以上,那么,MySQL的效能急剧下降  
常用的优化措施是M-S(主-从)方式进行同步复制
M-M-Slaves方式,两个M可进行切换,Slaves可进行负载均衡
随着用户进一步增加,你的用户表数据超过1千万,这时那个M变成了SPOF
不能任意扩充Slaves,否则复制同步的开销将直线上升
方法是表分区,从业务层面上进行分区
最简单的,以用户数据为例。根据一定的切分方式,比如id,切分到不同的数据库集群去

需要注意的是: 
1、禁用全部auto_increment的字段 
2、id需要采用通用的算法集中分配 
3、要具有比较好的方法来监控mysql主机的负载和服务的运行状态。如果你有30台以上的mysql数据库在跑就明白我的意思了。 
4、不要使用持久性链接(不要用pconnect),相反,使用sqlrelay这种第三方的数据库链接池,或者干脆自己做。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值