Elasticsearch应该安装在与站点相同的服务器上吗?

时间:2012-10-16 14:57:03

标签: c# asp.net-mvc optimization elasticsearch

我正在开发一个ASP.NET MVC 4商业网站,但由于我的背景是前端Web开发人员使用HTML / CSS / Javascript和C#使用XNA所有这些服务器和数据库业务正在努力。

目前,该网站使用带有NEST的elasticsearch索引来执行产品搜索,因为产品数据库很大,我喜欢elasticsearch提供的智能查询。这一切在我当地的测试环境中都很有效。

我的问题是:将弹性搜索客户端和索引存储在与实际站点不同的主机上是否通常是个好主意,还是可以将它放在同一台服务器上? 我知道这里有空间问题,但是我听说弹性搜索查询还会占用服务器资源,这些资源可以更好地用于处理其他任务,例如即将到来的大量付款?

1 个答案:

答案 0 :(得分:2)

这实际上取决于您的负载,数据和当前服务器。您的网站上有多少用户?你的指数有多大?您当前的服务器有多强大?

将弹性搜索放在单独的计算机上通常是最好的做法,甚至不止一个,以便利用其分布式功能。使用两台计算机,您可以在其上分配分片并配置一个副本(默认值),以便每台计算机都包含整个数据副本。如果负载增加,您可以随时向集群添加新节点,只要您分配了足够的分片(通常的做法是过度分配分片)。

另一方面,我也在Java应用程序中使用它,你可以阅读我最近写的this文章。