dananhai 2014-08-01
数据库
1、读写分离,主库用于写数据,从库用于读数据
2、分库,根据业务内容,将数据分布到不同的库里
3、使用memcached等高速缓存保存查询结果,避免直接读表
4、合理使用hibernate的ehcache
5、事务性操作,比如并发减少库存数,可以使用乐观锁,尽量少用悲观锁
6、优化sql语句
程序结构
1、使用多线程
2、使用并发框架,如Disruptor
3、响应式、事件式开发,如NIO
4、基于消息机制
5、可能用到多数据源
6、可能用分布式事务
负载均衡
最前端可用LVS,分发到多个nginx,nginx再次分发到webserver