目前在设计一个用户规模100万的系统,需要设计一个共享缓存并向最少8个节点提供缓存调用接口。打算低成本解决这个问题。
数据持久化不需要,但是高可用必须有,高性能必须有。
单节点要满足10000tps。每10万用户耗内存1G。双机双工负载均衡。读写比率大概是2:8。
一开始我想到的是使用这样的简单架构,后端存储使用redis,前端用tornado多进程负载,达到10000tps没有什么问题。不过redis并不支持双工模式,在应用层解决复制不是很好。
其次想到的是ehcache + bigmemory,性能上还不敢确定,有人测试比redis还牛,还是得自己测试一下才行。ehcache企业版支持分布式模式,没用过。如果使用免费的bigmemory32G,还是得自己解决数据复制问题。
还有什么更好的建议没。
后期扩容200万,我想老板已经赚翻了,上中间件,实时数据库啥的都不是问题了。
数据持久化不需要,但是高可用必须有,高性能必须有。
单节点要满足10000tps。每10万用户耗内存1G。双机双工负载均衡。读写比率大概是2:8。
一开始我想到的是使用这样的简单架构,后端存储使用redis,前端用tornado多进程负载,达到10000tps没有什么问题。不过redis并不支持双工模式,在应用层解决复制不是很好。
其次想到的是ehcache + bigmemory,性能上还不敢确定,有人测试比redis还牛,还是得自己测试一下才行。ehcache企业版支持分布式模式,没用过。如果使用免费的bigmemory32G,还是得自己解决数据复制问题。
还有什么更好的建议没。
后期扩容200万,我想老板已经赚翻了,上中间件,实时数据库啥的都不是问题了。