این دستور chaussette است که می تواند در ارائه دهنده میزبانی رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
chaussette - مستندات Chaussette [تصویر]
جوراب یک سرور WSGI است که می توانید از آن برای اجرای برنامه های Python WSGI خود استفاده کنید.
خاص بودن جوراب این است که می تواند یک سوکت را مانند هر پورت به یک پورت متصل کند
سرور دیگر انجام می دهد or اجرا در برابر قبلا باز پریز برق.
این باعث می شود جوراب بهترین همراه برای اجرای یک پشته WSGI یا Django تحت یک فرآیند و
مدیر سوکت، مانند سیرک or سرپرست. ساختن پوشش وضعیت وضعیت on استاد
می توانید یک برنامه WSGI ساده، یک برنامه جنگو یا یک برنامه Paste را اجرا کنید. به
همه گزینه ها را دریافت کنید، فقط اجرا کنید جوراب --کمک.
دویدن A دشت WSGI کاربرد
جوراب یک اسکریپت کنسولی را ارائه می دهد که می توانید مانند سایر برنامه های WSGI آن را اجرا کنید
سرور WSGI وجود دارد:
$ chaussette mypackage.myapp
کاربرد است
سرویس دهی در localhost:8080
استفاده كردن به عنوان یک باطن
دویدن A DANGGO کاربرد
جوراب به شما اجازه می دهد تا یک پروژه جنگو را اجرا کنید. شما فقط باید وارد کردن پایتون را ارائه دهید
مسیر برنامه WSGI که معمولاً در پروژه جنگو قرار دارد wsgi.py فایل. برای
اطلاعات بیشتر در مورد چگونگی wsgi.py فایل باید به شکلی باشد که جنگو
مستندات.
مثالی در اینجا آورده شده است:
$ chaussette --backend gevent mysite.wsgi.application
کاربرد است
سرویس دهی در localhost:8080
استفاده كردن به عنوان یک باطن
دویدن A پایتون چسباندن کاربرد
جوراب به شما اجازه می دهد پروژه ای را بر اساس a اجرا کنید پــایتــون چسباندن فایل پیکربندی.
شما فقط باید برای ارائه مسیر فایل پیکربندی در استفاده,
پیشوند با خمیر:
مثالی در اینجا آورده شده است:
$ chaussette paste:path/to/configuration.ini
$ برنامه است
$ سرویس در لوکال هاست: 8080
$ با استفاده از به عنوان یک باطن
مورد استفاده معمولی این است که فرآیندهای Chaussette را تحت مدیریت فرآیند و سوکت اجرا کنید.
Chaussette برای اجرا در زیر ساخته شد سیرک، که به صحافی سوکت و
تخم ریزی فرآیندهای Chaussette.
برای اجرای برنامه WSGI با استفاده از Circus، a را تعریف کنید پریز بخش در پیکربندی شما
فایل، سپس یک Chaussette Watcher اضافه کنید.
مثال حداقلی:
[سیرک]
نقطه پایان = tcp://127.0.0.1:5555
pubsub_endpoint = tcp://127.0.0.1:5556
stats_endpoint = tcp://127.0.0.1:5557
[watcher:web]
cmd = chaussette --fd $(circus.sockets.web) --backend meinheld server.app
use_sockets = درست است
تعداد فرآیندها = 5
[سوکت:وب]
میزبان = 0.0.0.0
پورت = 8000
وقتی سیرک اجرا میشود، یک سوکت را روی آن میبندد 8000 پورت کرده و مقدار توصیفگر فایل را ارسال می کند
به فرآیند Chaussette، با جایگزین کردن ${socket:web} با مقدار شماره فایل
سرپرست شامل یک سوکت منیجر از نسخه 3.0a7 است که در سال 2009 منتشر شد
در اصل برای پشتیبانی از فرآیندهای FastCGI و بنابراین بخش پیکربندی توسعه یافته است
نام برنامه fcgi. علیرغم نام، به پروتکل FastCGI وابسته نیست.
Supervisor می تواند سوکت را متصل کرده و سپس فرآیندهای Chaussette را ایجاد کند.
برای اجرای برنامه WSGI با استفاده از Supervisor، یک را تعریف کنید برنامه fcgi بخش در شما
فایل پیکربندی.
مثال حداقلی:
[سرپرست]
logfile = /tmp/supervisord.log
[inet_http_server]
پورت = 127.0.0.1:9001
[Supervisorctl]
serverurl = http://127.0.0.1: 9001
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[fcgi-program:web]
command = chaussette --fd 0 --backend meinheld server.app
process_name = %(program_name)s_%(process_num)s
numprocs = 5
سوکت = tcp://0.0.0.0:8000
توجه کنید --fd 0 استدلال به جوراب. هر یک برنامه fcgi بخش خودش را تعریف می کند
سوکت و توصیفگر فایل همیشه است 0. مشاهده سرپرست کتابچه راهنمای برای جزئیات
اطلاعات.
ناظر سوکت را قبل از ایجاد اولین فرآیند فرزند Chaussette ایجاد می کند.
هنگامی که آخرین فرزند خارج می شود، سوپروایزر سوکت را می بندد.
Chaussette فقط کمی کد چسب در بالای سرورهای WSGI موجود است و
سازماندهی شده در اطراف به عقب به پایان می رسد.
به طور پیش فرض Chaussette از پیاده سازی پایتون خالص بر اساس استفاده می کند wsgiref، اما همچنین
انتهای پشتی کارآمدتری را فراهم می کند. اکثر آنها فقط برای پایتون 2 هستند، اما Chaussette می تواند
تحت پایتون 3 با تعدادی از آنها استفاده شود - در لیست زیر مشخص شده است:
· gevent - بر اساس Gevent's pywsgi سرور
· fastgevent - بر اساس Gevent's wsgi سرور -- سریعتر اما از پخش جریانی پشتیبانی نمی کند.
· meinheld - بر اساس سرور C سریع Meinheld
· پیشخدمت زن -- بر اساس پیشخدمت Pyramid's Pure Web Server Python (py3)
· رویداد - بر اساس سرور wsgi Eventlet
· geventwebsocket -- Gevent's pywsgi سرور همراه با geventwebsocket دستیار
· geventws4py -- Gevent's pywsgi سرور همراه با ws4py دستیار
· سوکتیو - بر اساس gevent-socketio، که یک سرور و کنترل کننده Gevent سفارشی است
پروتکل socketio را مدیریت می کند.
· دوزخ -- بر اساس Bjoern.
· گردباد - بر اساس سرور wsgi Tornado.
با استفاده از -- پس زمینه گزینه و ارائه نام آن
برای برخی از Backend ها، باید مطمئن شوید که کتابخانه های مربوطه نصب شده اند:
· gevent و fastgevent: شکستن نصب gevent
· meinheld : شکستن نصب meinheld
· پیشخدمت زن : شکستن نصب پیشخدمت زن
· رویداد : شکستن نصب رویداد
· geventwebsocket: شکستن نصب gevent-websocket
· geventws4py: شکستن نصب ws4py
· سوکتیو: شکستن نصب gevent-socketio
· دوزخ: شکستن نصب دوزخ
· گردباد: شکستن نصب گردباد
اگر می خواهید سرور WSGI مورد علاقه خود را به عنوان یک Backend به Chaussette اضافه کنید، یا اگر فکر می کنید
شما می توانید یکی از پشتیبان های پایتون 3 را سازگار کنید، برای من یک ایمیل بفرستید!
اگر کنجکاو هستید که هر یک از آن Backendها چگونه عمل می کنند، می توانید بخوانید:
· http://blog.ziade.org/2012/06/28/wgsi-web-servers-bench/
· http://blog.ziade.org/2012/07/03/wsgi-web-servers-bench-part-2/
اکثر سرورهای WGSI در آنجا ویژگیهای پیشرفتهای را برای مقیاسبندی برنامههای وب شما ارائه میکنند
چند رشته ای یا چند پردازشی. بسته به پروژه، روند مدیریت
ویژگیهایی مانند فرآیندهای باززایی که از بین میروند، یا افزودن موارد جدید در حال پرواز، نیستند
همیشه بسیار پیشرفته
از سوی دیگر، ابزارهایی مانند Circus و Supervisor دارای ویژگی های پیشرفته تری برای مدیریت هستند
فرآیندهای شما و همچنین قادر به مدیریت سوکت ها هستند.
هدف از جوراب این است که مدیریت فرآیند و سوکت را به فرآیند اصلی خود واگذار کند
و فقط روی ارائه درخواست ها تمرکز کنید.
با استفاده از یک مدل پیش فورک، مدیر فرآیند یک سوکت را متصل می کند. سپس چنگال Chaussette
پردازش های فرزند که اتصالات را در آن سوکت می پذیرد.
برای اطلاعات بیشتر در مورد این طرح، بخوانید:
· http://blog.ziade.org/2012/06/12/shared-sockets-in-circus.
· http://circus.readthedocs.org/en/latest/for-ops/sockets/
· مخزن: https://github.com/circus-tent/chaussette
· مستندات : https://chaussette.readthedocs.org
· ادغام مستمر: https://travis-ci.org/circus-tent/chaussette
از chaussette آنلاین با استفاده از خدمات onworks.net استفاده کنید