2

我是 uwsgi 的新手,并试图了解它是如何工作的。

在 uwsgi 中说我有两个设置说

1)

uwsgi --socket /tmp/uwsgi.sock --socket 127.0.0.1:8000 --master --process 2 --workers 1

这是一个 uwsgi 进程,有 2 个子进程,每个子进程都有 3 个线程监听端口 8000

2)

uwsgi --socket /tmp/uwsgi.sock --socket 127.0.0.1:8000 --master --process 2 --workers 3
uwsgi --socket /tmp/uwsgi2.sock --socket 127.0.0.1:8001 --master --process 2 --workers 3

同样 2 个 uwsgi 进程监听端口 8000 和 8001

疑问1:我们可以将uwsgi进程配置为像(2)一样运行并在nginx中配置它们吗?

疑问2:nginx什么时候对请求进行负载均衡(a)如果它有多个监听多个端口的uwsgi进程(b)如果它有一个带有多个子进程的uwsgi进程

(a) 或 (b) 哪个更好,或者这不是使用 nginx 负载平衡 uwsgi 进程的正确方法,如果不是如何?

4

1 回答 1

2

第一种方法更明智,避免了 nginx 将请求传递给已经很忙的工作人员。

您可能会找到一些关于雷鸣群问题的博客文章或文档,我建议您阅读以下内容: http: //uwsgi-docs.readthedocs.org/en/latest/articles/SerializingAccept.html

基本上,除非您有非常特定的需求(和限制),否则第一种方法是要走的路。

于 2013-08-09T06:57:04.063 回答