django-signalqueue

সফটওয়্যার স্ক্রিনশট:
django-signalqueue
সফটওয়্যার বিবরণ:
সংস্করণ: 0.5.1
তারিখ আপলোড: 20 Feb 15
ডেভেলপার: Alexander Bohn
লাইসেন্স: বিনামূল্যে
জনপ্রিয়তা: 7

Rating: 3.0/5 (Total Votes: 1)

জ্যাঙ্গো কাঠামো প্রশ্ন জিজ্ঞাসা করতে যাচ্ছে সঙ্গে নিজেদের বিষয়ে সময় যে কেউ একটি নির্দিষ্ট পরিমাণ পর: আমি সত্যিই, জ্যাঙ্গো এর সংকেত ভালোবাসি. কিন্তু যদি শুধু আমি অ্যাসিঙ্ক্রোনাস তাদের দ্রুত সম্পাদন করতে পারে. ভালো লেগেছে, কিছু অন্যান্য থ্রেড বা কিছু, আমি সত্যিই জানি না .... যে একরকম সম্ভব?
ওয়েল, এখন আপনি সহজে জ্যাঙ্গো-signalqueue সঙ্গে তা করতে পারে.
ওয়াচ, আমি আপনাকে দেখাতে হবে. প্রথমত, জ্যাঙ্গো-signalqueue ইনস্টল:
$ এই ইনস্টল করা হবে জ্যাঙ্গো-signalqueue # ইনস্টল পিপ টর্নেডো এবং জ্যাঙ্গো-প্রতিনিধি, যদি প্রয়োজন
আপনি ইতিমধ্যে তাদের আছে কি না ... আপনি, এই ঐচ্ছিক প্যাকেজ কিছু করতে চান করতে পারেন:
$ চোলাই redis # গুলি / চোলাই / apt-get / স্বাদ yajl ইনস্টল
Redis ইনস্টল পিপ $ # সুপারিশ hiredis
$ # Ujson সুপারিশ ইনস্টল পিপ
$ খুব czjson yajl simplejson # এই কাজ ইনস্টল পিপ
$ পরীক্ষার জন্য নাক জ্যাঙ্গো-নাক # ইনস্টল পিপ
আপনি আপনার settings.py মধ্যে আছেন, যখন, আপনার INSTALLED_APPS, এবং একটি কিউ জন্য সেটিংস থেকে জ্যাঙ্গো-signalqueue যুক্ত করুন:
# Settings.py
INSTALLED_APPS = [
& Nbsp; 'signalqueue', # ...
]
SQ_QUEUES = {
& Nbsp; 'ডিফল্ট': {# আপনি SQ_QUEUES মধ্যে 'ডিফল্ট' নামে অন্তত এক অভি প্রয়োজন
& Nbsp; 'নাম': 'signalqueue_default', ঐচ্ছিক # - 'signalqueue_default' ডিফল্ট
& Nbsp; 'ইঞ্জিন': 'signalqueue.worker.backends.RedisSetQueue', প্রয়োজন # - এই আপনার সারিতে এর ড্রাইভার
& Nbsp; 'ব্যবধান': 30, # 1/3 সেকেন্ড
& Nbsp; 'বিকল্প': অভি (),
& Nbsp;},
}
ডিফল্ট SQ_RUNMODE = 'SQ_ASYNC_REQUEST' # ব্যবহার ASYNC প্রেরণ
SQ_WORKER_PORT = 11231 # আপনার সারিতে কর্মী প্রক্রিয়া সহিত আবদ্ধ হবে পোর্ট
সব যে পাশাপাশি, আপনি শুধু আপনার রুট URLConf মধ্যে () signalqueue.autodiscover একটি কল প্রয়োজন:
# Urls.py
আমদানি signalqueue
signalqueue.autodiscover ()
আপনি ASYNC সংকেত, নির্ধারণ করতে পারবেন!
অ্যাসিঙ্ক্রোনাস সংকেত আপনি নিম্নলিখিত জায়গা এক সংজ্ঞায়িত করেছি যে signalqueue.dispatch.AsyncSignal দৃষ্টান্ত আছে:
- Your_app / signals.py (যদি আপনি ইতিমধ্যে এই ফাইলটি ব্যবহার করে এটা সূক্ষ্ম যদি, হিসাবে অনেক না)
- একটি settings.SQ_ADDITIONAL_SIGNALS তালিকা বা Tuple নামে মডিউল
- শীঘ্রই আসছে: signalqueue.register () - তাই যদি আপনি তাদের কোথাও লাগাতে পারেন.
AsyncSignals অনেক পরিচিত আপনি জানেন django.dispatch.Signal দৃষ্টান্ত এবং প্রেম মত ব্যাখ্যা করা হয়েছে:
# Yourapp / signals.py
signalqueue.dispatch আমদানি AsyncSignal থেকে
signalqueue.mappings থেকে ModelInstanceMap আমদানি
# এই দুটি কন্সট্রাকটর একই জিনিস
my_signal = AsyncSignal (providing_args = ['উদাহরণস্বরূপ']) Yuge #
my_other_signal = AsyncSignal (providing_args = {'উদাহরণস্বরূপ': ModelInstanceMap}) ম্যাপিং সঙ্গে #
# কি অনুসরণ যে কোন জায়গায় যেতে পারে না - শুধুমাত্র দৃষ্টান্ত yourapp / signals.py করা প্রয়োজন:
Def কলব্যাক (প্রেরক, ** kwargs):
& Nbsp; মুদ্রণ "আমি,% s-, এতদ্দ্বারা ধন্যবাদ জ্যাঙ্গো-signalqueue জন্য% এর দ্বারা অ্যাসিঙ্ক্রোনাস প্রেষিত করা হয়েছে." % (
& Nbsp; Str (kwargs ['উদাহরণস্বরূপ']),
& Nbsp; প্রেরক .__ name__)
my_signal.connect (কলব্যাক)
... মূল পার্থক্য ম্যাপিং ক্লাস পরিবর্তে একটি প্লেইন তালিকা সহ একটি অভি হিসেবে providing_args যা নির্দিষ্ট দ্বিতীয় সংজ্ঞা হয়. আমরা পরে ম্যাপিং ক্লাস ব্যাখ্যা করব, কিন্তু আপনি আপনার সংকেত জ্যাঙ্গো মডেল দৃষ্টান্ত ক্ষণস্থায়ী হয়, আপনি এই সম্পর্কে চিন্তা করতে হবে না.
কর্মী চলমান হয়, আপনি যেমন সারিতে সংকেত পাঠাতে পারেন:
>>> My_signal.send (প্রেরক = AModelClass, উদাহরণস্বরূপ = a_model_instance)
একটি স্বাভাবিক জ্যাঙ্গো সংকেত মত আপনার সংকেত ফায়ার, আপনি এই কাজ করতে পারেন:
>>> My_signal.send_now (প্রেরক = AModelClass, উদাহরণস্বরূপ = a_model_instance)
এর ... জ্যাঙ্গো-signalqueue উপস্থিত README বিস্ময়কর উপসংহার জন্য আগামীকাল টিউন !!!!!!

আবশ্যক

  • পাইথন
  • জ্যাঙ্গো

বিকাশকারী অন্যান্য সফ্টওয়্যার Alexander Bohn

hdf5-django
hdf5-django

20 Feb 15

django-delegate
django-delegate

15 Apr 15

h5dj
h5dj

20 Feb 15

মন্তব্য django-signalqueue

পাওয়া মন্তব্যসমূহ না
মন্তব্য যোগ করুন
ছবি চালু!