在开始新项目时,我们面临选择云VPS提供商的挑战。而且我们面临着许多选择,有些负担得起,有些则不行,其中有些提供更多的vCPU,有些提供更多的ram,SSD等。
不幸的是,我们没有生产级别的Sofadb服务器的经验,也不知道要关注的服务器规格。
最多有300个客户端同时访问我们的couchdb服务器。数量不多,但是其中大多数将数据库复制到其设备中。
这样的设置对更多RAM有好处吗? CPU核?还是更快的SSD?
垂直缩放比水平缩放更有益于我们吗?
有些提供商还通过网络连接了他们的SSD,这会对延迟产生多少负面影响?明显吗?
答案 0 :(得分:3)
首先:全面披露,我为Cloudant工作,所以我的回答可能适用或可能不适用。我无法在CouchDB设置上获得权威,但可以分享Cloudant在该主题上的一些经验。我们的需求不同。
TL; DR -如果我不得不选择一个更大的RAM,更多的内核或更快的SSD的一个,那么我会选择更多的RAM,但所有的事情都没有。
Cloudant的DB节点都具有大量RAM,因为一旦每个节点需要处理的请求数量增加,这将为Erlang VM提供喘息的机会。就SSD而言,配置良好的CouchDB系统应该能够使其主机的磁盘IO饱和,因此,我们在具有本地磁盘的裸机上运行Cloudant。网络存储直接影响延迟。
内核数会影响群集设置中的分片模式,并最终影响吞吐量。
但是,您的电话数量很少。 Couch构建为能够水平缩放。我的建议是为您的节点指定尽可能多的RAM,并避免通过网络连接存储,并通过放置更多节点来扩展规模。
答案 1 :(得分:0)
我想这个问题不能用一般的方式回答,因为太多的因素都会影响最终基础架构的性能。仅举例说明一些方面:
这实际上取决于您的应用程序,CouchDB服务器应实际做什么以及如何使用适当的硬件来改善这些操作。