发布网友
共1个回答
热心网友
1. 记录每个API访问请求的日志。(ElasticSearch本身不支持这个功能,只有slowLog和服务日志)
2. 支持大量的客户端连接。ES官方的blog中推荐使用keep-alives,在nginx和ES之间使用长连接。我理解是因为在通常情况下,ES都是架构中的底层,访问它的一般是固定的上层服务,这种情况是适用于使用keep-alive的。(实际上不管用不用keep-alive,nginx都可以起到支持更大量客户端连接的作用)
3. 负载均衡的请求Elasticsearch服务器。
4. 缓存数据,减少同一内容再次请求Elasticsearch服务器。
5. 提供主动健康检测(仅nginx plus),不断检测后端Elasticsearch服务器是否正常,并主动的进行切换。(当某台ES挂掉的时候,nginx不分发请求到此结点,当结点重新恢复正常时,自动归位)
6. 报告丰富的监控指标(仅nginx plus),提供监控和管理。
7. 安全验证。只让持有账户名密码的客户端访问到ES集群。
8. 对特殊接口如"_shutdown"*访问。(这个功能相当实用)
9. 带角色的访问控制(比如user角色拥有数据访问权限,admin角色拥有集群管控权限)