m2wsgi

সফটওয়্যার স্ক্রিনশট:
m2wsgi
সফটওয়্যার বিবরণ:
সংস্করণ: 0.5.2
তারিখ আপলোড: 15 Apr 15
ডেভেলপার: Ryan Kelly
লাইসেন্স: বিনামূল্যে
জনপ্রিয়তা: 8

Rating: nan/5 (Total Votes: 0)

.

m2wsgi একটি পাইথন Mongrel2 উপর পাইথন Apps এর সহজ স্থাপনার, যার ফলে Mongrel2 ওয়েব সার্ভারের জন্য WSGI গেটওয়ে হ্যান্ডলার প্রদান করে মডিউল & nbsp হয়; আপনি পাইথন অ WSGI হ্যান্ডলার উন্নয়নশীল জন্য দরকারী তার সমর্থন ক্লাস খুঁজে পেতে পারে.

কমান্ড লাইন ব্যবহার করে

এই প্যাকেজ ব্যবহার করার সবচেয়ে সহজ উপায় কমান্ড-লাইন থেকে লঞ্চার হিসাবে হয়:
পাইথন -m m2wsgi dotted.app.name TCP: //127.0.0.1: 9999
এই নির্দিষ্ট অনুরোধ পোর্টের উপর Mongrel2 সাথে সংযোগ করে উল্লিখিত WSGI app এর মাধ্যমে তাদের পাশ দিয়ে অনুরোধ পরিচালনার শুরু হবে. ডিফল্টরূপে আপনি সব অনুরোধ পরিচালনার একটি একক কর্মী থ্রেড পেতে হবে; তাই মত থ্রেডের সংখ্যা বৃদ্ধি:
পাইথন -m m2wsgi --num-থ্রেড = 5 dotted.app.name TCP: //127.0.0.1: 9999
থ্রেড আপনার বিষয় নয় অথবা, যদি তাই মত প্রায় বিট পরিহার eventlet ব্যবহার করুন:
পাইথন -m m2wsgi --io = eventlet dotted.app.name TCP: //127.0.0.1: 9999
আমি যেমন gevent অন্যান্য আই মডিউল জন্য সমর্থন যোগ করতে আগ্রহী নই; অবদান স্বাগত জানাই.
কর্মসূচি ব্যবহারের
আপনি আরো জটিল চাহিদা আছে, আপনি আপনার অ্যাপ্লিকেশন থেকে m2wsgi ব্যবহার করতে পারেন. প্রধান বর্গ একটি সহজ সার্ভারের ইন্টারফেস উপলব্ধ করা হয়, যা 'WSGIHandler' হয়. উপরে কমান্ড লাইন ব্যবহার সমতুল্য:
m2wsgi.base আমদানি WSGIHandler থেকে
হ্যান্ডলার = WSGIHandler (my_wsgi_app, "TCP: //127.0.0.1: 9999")
handler.serve ()
আপনার হ্যান্ডলার এবং Mongrel2 মধ্যে সংযোগ উপর তীক্ষ্ণ স্বরূপ নিয়ন্ত্রণ জন্য, আপনার নিজের সংযোগ বস্তু তৈরি:
m2wsgi.base আমদানি WSGIHandler, সংযোগ থেকে
Conn = সংযোগ (send_spec = "TCP: //127.0.0.1: 9999",
& Nbsp; recv_spec = "TCP: //127.0.0.1: 9999",
& Nbsp; send_ident = "9a5eee79-dbd5-4f33-8fd0-69b304c6035a")
হ্যান্ডলার = WSGIHandler (my_wsgi_app, Conn)
handler.serve ()
ইতিমধ্যে আমরা এই এক আছে না,
আসলে বেশ কিছু:
& Nbsp; * https://github.com/berry/Mongrel2-WSGI-Handler
& Nbsp; * https://bitbucket.org/dholth/mongrel2_wsgi
তাদের কেউ সম্পূর্ণরূপে আমার চাহিদা পূরণ করা. বিশেষ করে, এই প্যাকেজের জন্য স্বচ্ছ সমর্থন আছে:
& Nbsp; * chunked প্রতিক্রিয়া এনকোডিং
& Nbsp; বড় অনুরোধ সংস্থা * "ASYNC আপলোড"
& Nbsp; * টার্মিনাল আই এন্ডের (যেমন eventlet, gevent)
এটি Mongrel2 জন্য বিশেষভাবে আপ স্থল থেকে ডিজাইন এর. এটি বিনামূল্যে জন্য কার্যকারিতা অনেক পায়, এবং কোড ফলে সহজ এবং হালকা.
উদাহরণস্বরূপ, যদি আপনি যেমন খুঁজে পেতে পারে হিসাবে একটি threadpool এবং অনুরোধ কিউ কোন স্পষ্ট ব্যবস্থাপনা আছে CherryPy সার্ভার. পরিবর্তে, আপনি শুধু আপনি স্বয়ংক্রিয়ভাবে তাদের অনুরোধ লোড-মধ্যে সামঞ্জস্য বজায় রাখা হবে mongrel2 (zmq মাধ্যমে) তাদের সব একই হ্যান্ডলার সকেট সাথে সংযোগ আছে, এবং, প্রয়োজন হিসাবে অনেক থ্রেড শুরু.
একইভাবে, কোড পরিবর্তন করে যখন পুনরায় লোড করার জন্য কোন স্পষ্ট সমর্থন আছে. শুধু পুরাতন হ্যান্ডলার হত্যা করা এবং একটি নতুন শুরু. আপনি নির্দিষ্ট হ্যান্ডলার UUID জানা ব্যবহার করছেন, তাহলে zmq হস্তান্তর gracefully এরকম নিশ্চিত করা হবে

আবশ্যক :.

  • পাইথন

সীমাবদ্ধতা

  • একাধিক থ্রেড চলমান সময়, Ctrl-C পরিচ্ছন্নভাবে প্রক্রিয়া থেকে প্রস্থান করুন না. ব্যাকগ্রাউন্ড থ্রেড () একটি ব্লক recv মধ্যে আটকে মত মনে হয়.
  • zmq লোড-ব্যালেন্সিং অ্যালগরিদম আদর্শ নয়, যা লোভী রাউন্ড-রবিন হয়. উদাহরণস্বরূপ, এটি অন্যান্য থ্রেড উপলব্ধ, এমনকি যদি তাদের অপেক্ষা, যার ফলে একটি ধীর এক হিসাবে একই থ্রেড বিভিন্ন দ্রুত অনুরোধ নির্ধারণ করতে পারেন. আমি ভাল কিছু করতে পারেন যে একটি zmq অ্যাডাপ্টারের কাজ করছি.

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

django-supervisor
django-supervisor

20 Feb 15

dexml
dexml

5 Jun 15

withrestart
withrestart

28 Feb 15

মন্তব্য m2wsgi

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