node.js - 2服务器负载均衡 Node js应用设置中的Elasticsearch部署

我的 Node JS 应用程序具有以下生产设置:

我现在将在此设置中集成 Elasticsearch。我的问题是关于在生产环境中部署 Elasticsearch 的最佳实践。我所有的实例都是虚拟机,我知道 Elasticsearch 使用大量内存。

因此,我应该在自己的服务器(服务器 3)上设置 Elasticsearch,在服务器 1 和服务器 2 上将其设置为集群(很像 Mongo DB 副本集)还是将其作为单独的实例安装在每台服务器上.

选择的方法有什么好处?

非常感谢!

最佳答案

选项 2。

简而言之.. 我肯定会在两台服务器上都设置这个 - 给你两个 Node 。鉴于您所述的选项,这将提供最大的分布、负载平衡、性能和容错性。

确保您仔细手动配置内存分配,将分配总量的 50% 分配给每个 Node 上的堆,其余的留给 Lucene 进行索引。

https://stackoverflow.com/questions/25502669/

相关文章:

python - 如何让 django celery 写入测试数据库以进行功能测试?

mongodb - MongoDB中的有向无环图设计模式

mongodb - Mongorestore:ns 名称太长,最大大小为 128

javascript - 使用 Javascript/Node.js 在代码中执行 mongoimp

mongodb - 一个集合中的许多文档与多个集合

javascript - MongoDB 聚合框架 - 按年份分组

python - Mongo 连接从未发布 - Django 和 Mongoengine 使用 ge

php - 如何安装 PHP 的 MongoDB 驱动程序 — "pecl install mong

mongodb - 使用 pymongo 将 MongoDB 导出为 CSV

regex - MongoDB 中 $cond 中的“like”或 $regex 查询