Asc*_*iom 5 php ajax amazon-web-services elasticsearch
对于网上商店,我想使用Elasticsearch构建分页产品列表 - 以及这些列表上的过滤器.我想绕过完全运行应用程序的PHP/MySQL服务器,并通过AJAX调用直接从客户的浏览器与Elasticsearch进行通信.优点是:
这种方法会对我们的后端服务器造成巨大负担,但会产生一些新问题.匿名用户将生成大量请求,但我们需要对这些请求进行一些控制:
交通管制:
访问控制:
重要的是不要让一台机器在某个地方处理所有这些原因,这只会重新创建一台负责处理所有事情的机器.我想要真正利用ES集群,而不需要任何必须处理扩展问题的中间件.
我们不希望完全依赖第三方,我们正在寻找一种对我们正在合作的合作伙伴具有一定灵活性的解决方案(例如,在弹性和AWS之间切换).
我一直在寻找一些"Elasticsearch即服务"选项,但我对它们的质量没有信心,或者即使我能解决他们提到的问题:
有没有人有这种方法工作,并找到了解决所有这些问题的良好设置?
我建议的第一件事是限制从安全组后面对 Elastic Search 实例的访问,并且仅允许应用程序服务器 IP 地址访问端口 22、80、9200 和 9300(ElasticSearch 使用的端口)。
至于防止报废,没有绝对的保护解决方案,但是如果您的目标只是限制这些报废程序对您的应用程序服务器和 ES 实例施加的负载,您可以查看https://github.com/davedevelopment/stiphle,其中针对速率受限的用户,他们在页面上使用的示例限制为每秒 5 个请求,这对于普通用户来说似乎非常合理,并且如果需要的话可以进一步降低,以使报废成为一项耗时的工作。