9 مستودعات
Architectural patterns where each client connection is managed by a dedicated worker thread.
Distinct from Process-Per-Connection Architectures: None of the candidates describe the general thread-per-connection concurrency model for web servers.
Explore 9 awesome GitHub repositories matching software engineering & architecture · Thread-Per-Connection Models. Refine with filters or upvote what's useful.
Zinx is a lightweight TCP server framework written in Go that provides a structured foundation for building scalable network applications. It combines a goroutine-pool worker model for concurrency control with message-ID-based routing, enabling efficient packet dispatching to registered handler functions. The framework distinguishes itself through its modular plugin architecture, which organizes server components like routers, connections, and message modules as interchangeable plugins for extensibility. It uses packet-header length prefixing for reliable TCP stream framing, assigns a dedicat
Assigns a dedicated goroutine per TCP connection for continuous packet reading and non-blocking I/O.
NanoHTTPD is a lightweight, embeddable HTTP server for Java applications. It allows developers to integrate web server capabilities directly into a Java project to handle incoming requests without requiring a standalone installation. The project provides specialized implementations for an HTTPS web server, a WebSocket server for bidirectional real-time communication, and a static file web server. These capabilities enable secure network traffic through SSL certificates and the delivery of local files with automatic MIME type detection. The server includes systems for request routing and hand
Assigns a dedicated worker thread to manage each client connection until the request-response cycle is completed.
This project is an open source relational database management system and SQL database designed for storing and managing structured data. It functions as a relational database for ensuring consistency and reliability, while also operating as a vector database for storing and querying high-dimensional vector embeddings. The system incorporates a columnar storage engine to optimize analytical query processing and large-scale data aggregation. It further enables vector similarity search, allowing users to find similar items by querying vector embeddings. The software covers a broad capability su
Employs a model where each client connection is managed by a dedicated worker thread.
CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom
Explains per-thread context execution for kernel-level isolation.
This is a collection of academic programming projects that accompany an operating systems textbook, designed to teach core OS concepts through hands-on implementation. The projects span the major subsystems of an operating system, including process scheduling, memory management, file systems, and concurrency, with students building components from scratch in a simulated environment. The projects are structured to cover the full range of OS internals, from low-level kernel development to user-space system programming. Students implement lottery-based CPU schedulers, dynamic heap memory allocat
Creates a multi-threaded HTTP server that handles multiple client requests simultaneously.
SpoofDPI هو تطبيق شبكة وخادم وكيل محلي مصمم كأداة لمكافحة الرقابة. يعمل كوكيل للالتفاف على فحص الحزم العميق (DPI) يقوم بتجزئة وتعديل طلبات HTTP الصادرة للتهرب من مرشحات الشبكة والرقابة. يحقق المشروع ذلك من خلال تنفيذ تجزئة طلبات HTTP، وتقسيم الطلبات الفردية إلى حزم أصغر متعددة لإرباك جدران الحماية. كما يقوم بمعالجة تدفق TCP وتعتيم حركة مرور الشبكة لإخفاء طبيعة طلبات الويب وتجاوز حظر المحتوى الإقليمي. يتضمن النظام قدرات لإعادة توجيه الشبكة الشفافة وإدارة التكوين القائمة على الملفات لتنسيق كيفية التعامل مع حركة مرور الشبكة.
Uses a goroutine-per-connection model to enable non-blocking I/O and parallel processing of network traffic.
Boom هو أداة توليد حمل HTTP واختبار ضغط قائمة على Go. تعمل كبديل حديث لأداة ApacheBench، مصممة لإرسال كميات كبيرة من الطلبات إلى خوادم الويب لقياس الأداء والاستقرار. تركز الأداة على تحديد نقطة الانهيار لخدمات الويب وواجهات برمجة التطبيقات من خلال محاكاة أحمال حركة مرور كثيفة. تُستخدم لقياس عدد الطلبات في الثانية التي يمكن للخادم التعامل معها قبل مواجهة أوقات استجابة متزايدة أو أخطاء. تغطي قدراتها اختبار ضغط خادم الويب وتحليل أداء واجهة برمجة التطبيقات لتحديد مشكلات الاستقرار واختناقات الأجهزة.
Utilizes a goroutine-per-connection model to maintain thousands of simultaneous connections without OS thread overhead.
هذه أداة توجيه شبكة مكتوبة بلغة Go تعمل كموجه حركة مرور من الطبقة الرابعة (layer 4). تعمل كمحول شبكة TCP مصمم لتوجيه حركة المرور الواردة من منفذ محلي إلى عنوان وجهة بعيد. ينفذ المشروع إمكانيات الوكيل العكسي (reverse proxy) وتوجيه المنفذ المحلي لإعادة توجيه حزم الشبكة من واجهة محلية محددة إلى خادم خلفي. يدير توجيه حركة مرور الشبكة عن طريق ربط المستمعين بعناوين IP ومنافذ محلية، وتمرير البيانات الخام بين العملاء والوجهات البعيدة.
Implements a model that assigns a dedicated goroutine to every incoming TCP connection for parallel processing.
هذا المشروع عبارة عن إطار عمل لقياس الأداء واختبار ضغط بروتوكول الشبكة مصمم لتقييم استقرار النظام في ظل ظروف التزامن العالي. يعمل كأداة سطر أوامر تحاكي أحجاماً هائلة من الطلبات المتزامنة لتحديد اختناقات البنية التحتية والتحقق من موثوقية الخدمة. تتميز الأداة بتنسيقها المحايد للبروتوكول، مما يسمح باختبار الحمل عبر معايير متنوعة بما في ذلك HTTP و WebSocket و gRPC و Radius. تدعم تكوينات طلبات معقدة، مما يتيح للمستخدمين حقن رؤوس مخصصة، وبيانات ثنائية، وحمولات خارجية لمحاكاة سلوكيات عملاء متنوعة. لضمان سلامة البيانات أثناء اختبارات الضغط، يستخدم إطار العمل برمجيات وسيطة للتحقق قابلة للتوصيل تنفذ منطقاً مخصصاً مقابل استجابات الخادم في الوقت الفعلي. بعيداً عن توليد الحمل الأساسي، توفر الأداة مراقبة شاملة من خلال تجميع مقاييس الأداء في تدفقات حية لمراقبة الإنتاجية، وزمن الوصول، وتوزيعات الأخطاء. تولد تقارير إحصائية مفصلة وتتكامل مع خدمات استخبارات خارجية لتوفير تحليل وأداء مؤتمت للنظام. تتم إدارة البرمجيات وتكوينها بالكامل من خلال معلمات سطر الأوامر، مما يسهل التكامل في سير عمل الاختبار المؤتمت.
Uses lightweight execution threads to manage millions of simultaneous network connections with minimal memory overhead per request.