我在cpp上写了数据处理器,它应该处理很多请求并做很多计算,请求是相互连接的。现在我想到了简单的水平可扩展性。
将 memcached 与复制(每个处理器上的一个实例)一起使用来存储操作数据是一个好主意吗?这样每个处理器实例都可以在相同的时间内处理每个请求。
memcached 复制的速度和稳定性如何?
我在cpp上写了数据处理器,它应该处理很多请求并做很多计算,请求是相互连接的。现在我想到了简单的水平可扩展性。
将 memcached 与复制(每个处理器上的一个实例)一起使用来存储操作数据是一个好主意吗?这样每个处理器实例都可以在相同的时间内处理每个请求。
memcached 复制的速度和稳定性如何?
非常快,memcached 的一个主要潜在缺点是它不是持久的。虽然使用缓存层时的一个常见设计考虑是“缓存中的数据可能随时消失”,但这可能会导致痛苦的预热时间和/或代价高昂的缓存踩踏事件。
我会看看 Couchbase。 http://www.couchbase.com/ 它将缓存的数据存储在 RAM 中,但也会定期将其刷新到磁盘,因此如果机器重新启动,数据仍然存在。
动态添加节点也很容易。
只是为了好玩,您还可以查看 Riak:http ://basho.com/riak/ 。随着缓存需求的增长,很容易添加节点,并且很容易启动和运行。还专注于键/值存储,这对于缓存对象很有用。