পাইথন স্ক্রিপ্ট সংশোধন করা হলে আমি কীভাবে uWSGI পুনরায় চালু করব?


38

কোথায় আছে তা মনে করতে পারছি না, তবে আমি ইউডাব্লুএসএসআই পড়েছিলাম যখন কোনও প্রকল্পের স্ক্রিপ্টটি সংশোধন করা হবে তখন সে জ্যাঙ্গো বিকাশ সার্ভারের মতো নিজেকে পুনরায় লোড করতে পারে। আমি এটি ডক্সে বা ইন্টারনেটগুলিতে খুঁজে পাচ্ছি না । কিভাবে আমি এটি করতে পারব?

আমি আমার ওয়ার্কিং মেশিনগুলিতে উবুন্টু 12.04 এবং স্টেজ অ্যান্ড প্রোডাকশন সার্ভারে জাজানো 1.4 এবং ইউডাব্লুএসজিআই 1.2 তে ডেবিয়ান স্কিজে ব্যবহার করি।

উত্তর:


39

তথ্যসূত্র: http://projects.unbit.it/uwsgi/wiki/Management

যদি আপনি --touch-reload=/path/to/special/file/usually/the.iniবিকল্পটি দিয়ে উউসগি শুরু করে থাকেন তবে আপনার ইউডাব্লুএসজিআই পুনরায় লোড করা সেই ফাইলটির সাথে সেই ফাইলটি পুনরায় লোড করার স্পর্শকাতর বিষয় is

touch /path/to/special/file/usually/the.ini

যদি আপনি "autoreload" সামর্থ্য চাই, এই ডগা যে এই কাজ পায় হল: http://projects.unbit.it/uwsgi/wiki/TipsAndTricks#uWSGIdjangoautoreloadmode


35

আরও py-autoreload=Nনতুন প্রকাশে একটি বিকল্প রয়েছে। Nচেকের ফ্রিকোয়েন্সি (সেকেন্ডে) সেট করুন (3 একটি ভাল মান) good


12
অনুযায়ী "শুধুমাত্র উন্নয়নে ব্যবহার" uwsgi ডক্স
scytale

4
টাচ-লোডের মতো দেখে মনে হচ্ছে / / কিছু / ফাইল একটি নিরাপদ বিকল্প
স্কাইটিলে

10

আপনি যদি জাঙ্গো অটোরিলোড হারাতে না চান তবে এই পুনরায় লোড পদ্ধতিটি নিবন্ধ করুন (যেমন: সেটিংসে।

import uwsgi
from uwsgidecorators import timer
from django.utils import autoreload

@timer(3)
def change_code_gracefull_reload(sig):
    if autoreload.code_changed():
        uwsgi.reload()

এখন আপনি যদি আপনার কোড পরিবর্তন করেন তবে এটি আবার লোড হবে।

লেখক: সিমোন ফেদারিসি


1
এটি পুরোপুরি কাজ করে। এছাড়াও শর্তসাপেক্ষ যুক্ত করা হয়েছে যাতে এটি কেবল বিকাশের পরিবেশে ডাকা হয়।
2upmedia

0

uwsgi কিল সিগন্যাল ব্যবহার করে পুনঃসূচনা করার অনুমতি দেয়। আমি এটি নীচের হিসাবে ব্যবহার করি:

# ps -efa | grep uwsgi | grep prod
app  13390 13383  0 07:40 ?        00:00:00 /usr/local/bin/uwsgi --ini /etc/uwsgi/apps-enabled/app_prod.ini
app  13417 13390  0 07:40 ?        00:00:00 /usr/local/bin/uwsgi --ini /etc/uwsgi/apps-enabled/app_prod.ini
app  13419 13390  0 07:40 ?        00:00:00 /usr/local/bin/uwsgi --ini /etc/uwsgi/apps-enabled/app_prod.ini
# kill -HUP 13390

আপনি যদি একই কমান্ডটি চালনা করেন তবে দেখতে পাবেন যে চাইল্ড প্রোকস পিড বদলে যাবে কারণ তারা মাস্টার দ্বারা পুনরায় তৈরি করা হয়েছে। মাস্টার / ওয়ার্কার প্রোক গণনাগুলির জন্য uwsgi কনফিগারেশনও পরীক্ষা করে দেখুন। এই পদ্ধতিটি উত্তরযোগ্য বা অন্যান্য অটোমেশন সরঞ্জামগুলির সাথে সংহত করা সহজ তাই দূরবর্তী ব্যবহারের পক্ষে সহজ হয় goes

এটি আপনার মূল প্রকট - টুচ-পুনরায় লোড দিয়ে শুরু করার দরকার নেই।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.