我们目前在apache上运行SaaS应用程序,该服务器是电子商务网站(它是商店建设者)。我们目前在该应用程序上托管了1000多个客户端,现在遇到可扩展性问题(即使在相当大的20核80GB RAM +所有SSD磁盘服务器上,CPU也会超过90%)。
我们正在寻求nginx专家的帮助,他们可以: 1.解释运行nginx作为Web服务器与使用它作为反向代理之间的区别。有什么好处? 2.我们还想使用nginx作为负载均衡器(并且已经在测试中设置了),但是我们还没有在负载均衡器上启用缓存。因此,虽然它有助于重定向请求,但它并不真正直接为任何流量提供服务,它只是将所有内容传递给两个apache服务器之一。
问题是我们有很多来自apache服务器的用户生成内容,我们如何使缓存只对nginx缓存的某些页面无效?如果我们设置一个cron来每1分钟左右清除一次这个缓存,那就没那么有用......因为缓存几乎不存在。
-
在给定上述场景的情况下,还需要全面了解构建的最佳架构。
是吗
请帮忙!
答案 0 :(得分:0)
横向扩展以支持更多客户端是一个不错的选择。建议首先评估造成瓶颈的原因,应用程序内存,长时间运行的请求等。
Nginx与其他Web服务器相同: Nginx是HTTP服务器,而不是servlet引擎。鉴于此,您可以检查它是否符合您的需求 它是一个快速的Web服务器。您需要评估将其用作针对其他Web服务器的单个独立Web服务器的好处。速度和记忆可能有所帮助。
Nginx作为负载均衡器:
您可以使用nginx处理缓存到期。 nginx documentaion有很好的细节http://nginx.com/resources/admin-guide/caching/