计算量大的站点的最佳服务器配置
Best server configuration for site with heavy calculations
我有一个站点,它使用符号数学库执行一些繁重的计算。
当前平均计算时间为 5 秒。
我知道,这个问题问得太宽泛了,但是,这种类型的网站的优化配置是什么?什么服务器最适合这个?
目前,我正在 mod_wsgi 使用 Apache,但我不知道如何正确配置它。
站点平均每秒接收 40 个请求。
我应该设置多少个进程、线程、MaxClients 等?
也许,使用 nginx/uwsgi/gunicorn 更好(我使用 python 作为编程语言)?
无论如何,非常感谢任何信息。
安德鲁,
我相信您可以移动部分部署拓扑。
我的建议是使用 nginx 来传送 HTTP 内容,并使用一些 Web 框架公开您的应用程序,即 tornadoweb(我的偏好,考虑异步核心,如果与 twisted 相比最好记录,即使 twisted 是一个非常好的框架)
您可以通过代理在nginx 和tornado 之间进行通信。配置简单
您可以复制您的服务实例以将您的计算应用程序分布在同一台机器和另一台主机中。它可以很容易地被nginx upstreams配置。
如果您需要更高的性能,您可以将您的应用程序分解成小模块并使用异步消息将其集成。您可以选择使用 zeromq 或 rabbitmq 等解决方案。
然后,您可以拥有不同的拓扑结构,在您的应用程序发展过程中逐渐应用。
第一个拓扑:
nginx -> tornadoweb
第 2 个拓扑:
带负载平衡的 nginx(上游)-> tornadoweb 在 [1..n] 个实例上复制
第 3 个拓扑:
[第二拓扑] -> 你的应用程序通过消息传递集成(zeromq,amqp(rabbitmq),...)
我最喜欢的是第 3 个,作为开始。但是,此时此刻,您应该从第 1 和第 2
开始
有很多选择。但是,这些可能足以简单地组织您的应用程序。
我有一个站点,它使用符号数学库执行一些繁重的计算。
当前平均计算时间为 5 秒。
我知道,这个问题问得太宽泛了,但是,这种类型的网站的优化配置是什么?什么服务器最适合这个?
目前,我正在 mod_wsgi 使用 Apache,但我不知道如何正确配置它。
站点平均每秒接收 40 个请求。
我应该设置多少个进程、线程、MaxClients 等?
也许,使用 nginx/uwsgi/gunicorn 更好(我使用 python 作为编程语言)?
无论如何,非常感谢任何信息。
安德鲁,
我相信您可以移动部分部署拓扑。
我的建议是使用 nginx 来传送 HTTP 内容,并使用一些 Web 框架公开您的应用程序,即 tornadoweb(我的偏好,考虑异步核心,如果与 twisted 相比最好记录,即使 twisted 是一个非常好的框架)
您可以通过代理在nginx 和tornado 之间进行通信。配置简单
您可以复制您的服务实例以将您的计算应用程序分布在同一台机器和另一台主机中。它可以很容易地被nginx upstreams配置。
如果您需要更高的性能,您可以将您的应用程序分解成小模块并使用异步消息将其集成。您可以选择使用 zeromq 或 rabbitmq 等解决方案。
然后,您可以拥有不同的拓扑结构,在您的应用程序发展过程中逐渐应用。
第一个拓扑: nginx -> tornadoweb
第 2 个拓扑: 带负载平衡的 nginx(上游)-> tornadoweb 在 [1..n] 个实例上复制
第 3 个拓扑:
[第二拓扑] -> 你的应用程序通过消息传递集成(zeromq,amqp(rabbitmq),...)
我最喜欢的是第 3 个,作为开始。但是,此时此刻,您应该从第 1 和第 2
开始有很多选择。但是,这些可能足以简单地组织您的应用程序。