除去从CDN缓存或者数据库优化、动静分离等方面来说,在架构层面上,实现海量数据高并发实时同步访问
概括起来大概可以从以下几个方面去入手,当然NFS的存储也可以是分布式文件系统,这里只是针对中小企业
来说的。
1、inotify(sersync)+rsync 文件级别数据同步方案,处在文件系统之上,效率相对较低。
2、drbd文件系统级别,基于block块同步,速率高,最大缺点是只有主节点坏了才能使用备用节点。
3、第三方软件同步功能,例如mysql主从复制,oracle,mongodb
4、程序双写,直接写两台服务器
5、通过业务逻辑解决(读写分离,备用节点读不到才读主节点,防止延迟),解决多NFS挂载耦合问题。
在逻辑层面可以实现备用节点和主节点切换访问,降低NFS服务器的压力。
6、NFS集群(1、4、5整合),双写主存储,备存储用inotify(sersync)+rsync同步,备节点找不到就去找主节点,可以解决延迟问题。