我将在AWS EC2服务上使用uwsgi。
我按照这样构建了服务器的工作流程。
Internet
- ElasticLoadBalancer-a
- webserver-nginx
- ElasticLoadBalancer-b
- web-application-django_uwsgi_server
- RDS
因此,在webserver-nginx
和web-application-django_uwsgi_server
之间,将通过http
数据进行通信。
此外,您应该知道我在docker容器上运行web-application-django_uwsgi_server
。比如,docker run --name django_uwsgi -p 8080:8000 djangoproject_and_uwsgi:1.0
我像这样设置uwsgi ini文件。
Docker容器中的uwsgi.ini:
[uwsgi]
chdir = /sampledir
wsgi-file = /sampledir/sample/wsgi.py
master = true
processes = 10
# cron = -5 -1 -1 -1 -1 /path/to/some/script
harakiri=20
max-requests=5000
vacuum = true
enable-threads = true
single-interpreter = true
lazy-apps = true
# From this line, I ask these below options.
http = 0.0.0.0:8000
# the socket (use the full path to be safe
# socket = /path/to/your/project/mysite.sock
# chmod-socket = 664
我是linux和网络的新手,但听说套接字设置比设置http = 8000
更好。因为http开销。
但我在另一个EC2实例上有webserver-nginx
。换句话说,webserver-nginx
和web-application-django_uwsgi_server
不在同一个EC2实例(机器)上。
问题:
在这种情况下,如何正确设置socket
或port
设置?