Graham Dumpleton، سازنده mod_wsgi، در مرور بیست سال کار روی این پروژه از سیستم تازهای به نام Muru گفته است. نوشتن mod_wsgi در دسامبر ۲۰۰۶ آغاز شد؛ زمانی که WSGI وجود داشت، اما راه استاندارد و جاافتادهای برای میزبانی برنامههای مبتنی بر آن در production نبود. Apache تقریباً همهجا حضور داشت و mod_wsgi راهی برای استفاده از همان زیرساخت موجود فراهم کرد.
این انتخاب محدودیتهایی هم داشت. در daemon mode، برنامه Python در processهایی جدا از workerهای Apache اجرا میشود، اما مدیریت چرخه عمر آنها همچنان در اختیار Apache است. تعداد این processها در تنظیمات تعیین میشود و تغییر آن به restart کردن Apache نیاز دارد. به گفته Dumpleton، تغییر ظرفیت متناسب با بار یا جایگزینی نسخه برنامه بدون اختلال در requestهای در حال اجرا، در این چارچوب دشوار بود.
Muru تلاشی برای بازنگری در همین مسئله، بدون وابستگی به Apache است. این پروژه نه module آن است و نه صرفاً یک WSGI server برای قرار گرفتن پشت ابزار دیگری. هدف، پوشش اجرای برنامه از لپتاپ تا production است. Muru میتواند برنامههای WSGI و ASGI و سرویسهای gRPC را در یک برنامه کنار هم میزبانی کند. extensionهایی نیز برای انتقال request میان WSGI و ASGI دارد؛ مسیری برای افزودن قابلیتهایی مثل websockets به برنامه موجود WSGI، بدون بازنویسی آن.
بخش دیگری از طراحی به مدیریت نسخههای جدید، routing، گزارش سلامت و restart بدون از دست رفتن requestها مربوط است. Dumpleton میخواهد این موارد جزئی از رفتار پیشفرض سیستم باشند، نه مسئولیتهایی که هر کاربر جداگانه به آن اضافه میکند.
طراحی Muru همچنین ویژگیهای Python را در نظر میگیرد: اثر Global Interpreter Lock (GIL) بر انتخاب process یا thread، زمان لازم برای import و آمادهشدن برنامه و افزایش تدریجی مصرف حافظه. قرار است metricsهایی مانند میزان مشغولبودن threadهای پاسخگو و زمان انتظار requestها، در تصمیمهای مربوط به ظرفیت، مدیریت process و routing نقش داشته باشند.
Muru هنوز در حال توسعه است و نویسنده فعلاً نشانی پروژه را معرفی نکرده است. او میگوید ابزارهای AI بخش عمده نوشتن code را بر عهده دارند و خودش بر معماری، طراحی و تعیین رفتار قابلیتها تمرکز دارد. نوشتههای بعدی قرار است توسعه محلی، deployment روی host یا virtual machine و سپس اجرای Muru در container و Kubernetes را بررسی کنند.





