5 repository-uri
Servers that host multiple diverse communication protocols on a single network port.
Distinct from Multi-Protocol Clients: Focuses on the server-side implementation of multi-protocol hosting, whereas the sibling focuses on clients.
Explore 5 awesome GitHub repositories matching web development · Multi-Protocol Servers. Refine with filters or upvote what's useful.
brpc is a high-performance C++ RPC framework and network programming library designed for building distributed systems. It functions as a multi-protocol RPC server capable of hosting and detecting multiple communication protocols, including gRPC, Thrift, HTTP, Redis, and Memcached, on a single TCP port. The project distinguishes itself through high-throughput data transport and memory efficiency, utilizing RDMA-based transport to bypass the kernel TCP stack and zero-copy memory management to eliminate data duplication. It also implements the Raft algorithm for consensus-based state replicatio
Hosts diverse communication protocols on a single port to enable varied client access.
Stalwart is a self-hosted email and collaboration infrastructure that provides an integrated mail server supporting SMTP, IMAP, POP3, and JMAP protocols. It functions as a comprehensive communication hub, combining email hosting with a collaboration server for shared calendars, contacts, and files. The system distinguishes itself through a distributed architecture that uses peer-to-peer cluster coordination to ensure high availability and fault tolerance. It features a built-in security suite that implements an S/MIME and OpenPGP email gateway alongside automated TLS certificate provisioning
Unifies disparate communication standards like IMAP, JMAP, and CalDAV into a single integrated server core.
Armeria este un framework de microservicii bazat pe Netty, utilizat pentru construirea de servicii asincrone de înaltă performanță. Funcționează ca un server RPC multi-protocol capabil să expună servicii gRPC, Thrift și REST pe un singur port unificat. Proiectul se distinge prin capacitatea de a rula simultan diverse protocoale de comunicare și prin consola web integrată de depanare RPC, care permite descoperirea și invocarea apelurilor de procedură la distanță prin JSON. Include, de asemenea, un transcodor gRPC către JSON pentru a permite compatibilitatea clienților web cu serviciile Protobuf. Framework-ul oferă o suită cuprinzătoare de capabilități pentru microservicii, inclusiv clienți RPC reactivi cu circuit breakers și reîncercări, load balancing pe partea clientului și integrarea descoperirii serviciilor cu DNS, ZooKeeper și Consul. Acoperă, de asemenea, observabilitatea sistemelor distribuite prin colectarea de metrici, tracing distribuit și documentație interactivă a serviciilor. Armeria suportă încorporarea containerelor de servlet-uri legacy și se integrează cu framework-uri web terțe pentru a permite coexistența într-un singur proces de server.
Runs gRPC, Thrift, GraphQL, and HTTP on a single unified server to streamline communication.
Granian is a Rust-based HTTP server written specifically to serve Python web applications. It supports the three major Python gateway interfaces—ASGI for asynchronous apps, WSGI for synchronous apps, and RSGI for async requests—while also handling HTTP/1.1, HTTP/2, and WebSocket connections through automatic protocol negotiation. Architecturally, Granian uses a multiprocess worker model that isolates requests across CPU cores and provides configurable threadpool-limited concurrency to control backpressure per worker. It includes built-in Prometheus metrics exposition for connection counts and
Supports HTTP/1.1, HTTP/2, WebSocket, and multiple Python gateway protocols on a single server.
moco is a multi-protocol mock server and programmable API stub used to simulate HTTP, REST, WebSocket, and Server-Sent Events endpoints. It enables the creation of fake backend services to facilitate development and integration testing without requiring a live server. The project distinguishes itself through its ability to act as a network traffic replay tool, capturing real request-response pairs via a proxy and playing them back locally. It also supports bidirectional communication simulations, including WebSocket server simulation and SSE stream simulation with configurable delivery delays
Handles requests and responses across multiple diverse protocols including HTTP, REST, WebSocket, and Server-Sent Events.