صفر مكالمات نظامية: بناء خادم ويب عالي الأداء باستخدام io_uring

2025-08-22

تتناول هذه المقالة تطور بناء خوادم الويب عالية الأداء، من مرحلة pre-forking المبكرة إلى select/poll، ثم epoll، وأخيرًا تحقيق صفر مكالمات نظامية باستخدام io_uring. قام الكاتب بتطوير خادم ويب تجريبي يسمى tarweb يستخدم io_uring لإضافة جميع العمليات بشكل غير متزامن إلى قائمة انتظار kernel، وبالتالي تجنب تكلفة المكالمات النظامية المتكررة. بالإضافة إلى ذلك، تم تحقيق المزيد من تحسينات الأداء باستخدام kTLS والملفات بدون واصفات. على الرغم من وجود تحديات متبقية، مثل إدارة الذاكرة ومخاوف أمان io_uring، إلا أن المشروع يُظهر إمكانية تحقيق مكاسب أداء كبيرة في سيناريوهات التزامن العالي.