1 数据存储NFS系统
2 DRBD实现NFS文件高可用
3 文件读写分离,即系统实时的将文件分发到读服务器上,rsync+inotify 实现触发同步
( 1 小图片可以处理(200-300k),单个图片过大不行,
2 总容量过大几个T可能不行,
3 web服务器过多则主服务器带宽不够)
4 NFS双主多从可以解决并发读和单点问题,但是如果并发写大会有很多问题:
1)每秒300张以上图片,同步会延迟,需要开启多线程同步,优化监控事件,磁盘IO与网络IO
2)图片总量达到3T以上,则单台容量不够,可以讲数据放到多个硬盘上,然后做挂载 ,
比如:原来有5个目录,则把每个目录都拿出来做一个一主多从的文件服务器
5 NoSql存储方案,cassandra,mongoDB,mysql主从等来做文件存储
其他东西的了解:
Mysql 并发支持小于1000,如redis缓存服务器可以支持10W并发。
mysql 数据大于10,也不行了
http://blog.nosqlfan.com/
内存缓存数据库:
memcachedb,Tokyo Tyrant,支持分布式和数据持久化,可以支持几万并发。
缓存内存设置:用10-20G也就行了,要小于总容量的3/5,太大的话重启预热时间会比较长
lvs 负载均衡 ,心跳互为主备
haproxy 代理
squid 做缓存静态数据
mfmaster 存储 或NFS 用drbd做同步
静态化数据web集群ngix