2014-01-14 121 views
0

uwsgi(emperor模式)中有很多设置,我不太了解实际使用情况和优点,更不用说设置正确的值了。Python [Django] + Uwsgi设置揭秘

它们是:

  • 信号BUFSIZE
  • 缓冲器尺寸
  • sharedarea

我试图阅读文档例如。 http://uwsgi-docs.readthedocs.org/en/latest/SharedArea.html但我仍然很难真正理解。

请有人能解释这3个设置,以及我如何能为他们制定正确的值?

更多的背景知识,我承载了不少django项目,但它们都是孤立的,这意味着它们并不需要彼此认识,这些设置在我的场景中是否有用?

+1

这些是更高级的选项。如果你没有做任何疯狂的事情,默认值可能会对你有好处。 – rednaw

+1

唯一你应该关心的是缓冲区大小,其他的是非常具体的用法。一般来说,你不在这里找到并不是必需的:http://uwsgi-docs.readthedocs.org/en/latest/WSGIquickstart.html – roberto

回答

2

我曾与一个非常大规模的uWSGI皇帝安装与成千上万的封臣。我们必须调整缓冲区大小,但不能共享区域或信号bufsize。

  • sharedarea是供内部工作人员沟通的。即:进程间通信。但这是非常低的水平。字面上共享内存页面。
  • buffer-size是uWSGI在处理请求时分配用于存储请求标头的内存量。如果您将大量数据存储为Cookie,则默认值可能太小。
  • signal-bufsize这一个我不确定。我从来不清楚我们在这里谈论的是什么信号,而我从来不需要改变它。但是通过阅读这个邮件列表线程(http://lists.unbit.it/pipermail/uwsgi/2013-November/006629.html),它看起来像是与mule进程通信时使用的缓冲区。