awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
ithewei avatar

ithewei/libhv

0
View on GitHub↗
7,521 stars·1,356 forks·C·BSD-3-Clause·9 vuesgithub.com/ithewei/libhv/wiki↗

Libhv

libhv is a high-performance C/C++ network library and event-driven I/O framework used to build TCP, UDP, SSL, HTTP, WebSocket, and MQTT clients and servers. It provides a non-blocking event loop for managing network sockets, timers, and system signals across multiple threads.

The project is distinguished by its integrated support for specialized network roles, including a full HTTP web server with RESTful routing and middleware, an MQTT messaging client for IoT communication, and the ability to implement SOCKS5 and HTTP proxies. It also features a reliable UDP implementation to ensure ordered packet delivery and congestion control over connectionless transport.

Broad capabilities include asynchronous network programming with multi-threaded event loops, transport-layer encryption via SSL/TLS, and protocol-agnostic packet unpacking. The library also covers structured data parsing for JSON and INI formats, static file serving, and the management of bidirectional real-time communication.

Features

  • Network Protocol Implementations - Implements a wide array of network communication protocols including TCP, UDP, SSL, HTTP, WebSocket, and MQTT.
  • Network Server Implementations - Implements high-performance server capabilities for TCP, UDP, SSL, HTTP, WebSocket, and MQTT.
  • Network Service Frameworks - Provides a comprehensive framework for building TCP, UDP, SSL, HTTP, WebSocket, and MQTT clients and servers.
  • Event-Driven I/O - Provides a high-performance event-driven I/O framework to handle massive volumes of concurrent connections.
  • MQTT Clients - Implements a lightweight MQTT client for publishing and subscribing to messages via brokers.
  • Web Servers and APIs - Includes a full HTTP server implementation with support for document roots and file uploads.
  • MQTT Messaging Integrations - Implements an MQTT client to enable lightweight publish-subscribe messaging patterns for IoT communication.
  • C++ Networking Libraries - A high-performance networking library providing TCP, UDP, SSL, HTTP, WebSocket, and MQTT implementations for C++.
  • Publish-Subscribe Messaging - Implements a lightweight publish-subscribe messaging model via the MQTT protocol.
  • MQTT Clients - Implements a lightweight MQTT client for publish-subscribe messaging in IoT and machine-to-machine environments.
  • Network Communication Implementations - Provides the concrete implementation of communication logic for multiple standard network protocols.
  • WebSocket Clients and Servers - Implements both client and server sides of the bidirectional WebSocket protocol for real-time communication.
  • WebSocket Servers - Implements server-side management of persistent, bidirectional communication channels for real-time data exchange.
  • HTTP/2 Support - Supports the implementation of the HTTP/2 protocol, including multiplexing and secure connections.
  • HTTP and WebSocket Clients - Implements both HTTP and WebSocket clients and servers for versatile web service development.
  • HTTP Servers - Provides a high-performance HTTP server for processing incoming web requests using handler functions.
  • HTTP Service Frameworks - Provides a framework for building HTTP servers and clients with routing, middleware, and static file serving.
  • Message Queuing Protocols - Provides full protocol support for creating MQTT-compliant clients and servers.
  • Network Clients - Provides a set of network clients for maintaining persistent connections across TCP, UDP, SSL, HTTP, WebSocket, and MQTT.
  • Network Protocols - Implements various network protocols to handle raw TCP and UDP traffic for clients and servers.
  • Multi-Threaded Event Distribution - Distributes network connections across a pool of event loops running in background threads for multi-core utilization.
  • Event-Driven UDP Clients - Implements UDP clients that send and receive datagrams using a high-performance event-driven loop.
  • Packet Unpacking Strategies - Provides protocol-agnostic packet unpacking to consume data via single lines, byte counts, or delimited packages.
  • Secure Communication Protocols - Provides implementations of SSL/TLS encryption and HTTP protocols for secure data transmission.
  • Non-Blocking Socket I/O - Implements non-blocking socket I/O to prevent execution stalls during network communication.
  • Secure Socket Wrappers - Provides wrappers that integrate security layers around standard network sockets for encrypted communication.
  • TCP and Unix Socket Listeners - Creates TCP listeners that accept incoming network connections and trigger callbacks for data reception.
  • TCP Stream Handlers - Handles incoming TCP messages from clients and enables broadcasting data to connected peers.
  • UDP Transport Implementations - Provides a reliable transport layer over UDP with congestion control and acknowledgement to ensure ordered delivery.
  • WebSocket Clients - Provides a client implementation for establishing and managing bidirectional WebSocket connections over HTTP.
  • WebSocket Services - Provides full implementations of WebSocket clients and servers for real-time bidirectional communication.
  • Asynchronous Event Loops - Features a non-blocking event loop for managing network sockets, timers, and system signals.
  • Event Loops - Uses a multi-threaded event loop architecture to handle concurrent network connections asynchronously.
  • Network Encryption - Secures data transmission using SSL/TLS to provide encrypted communication channels.
  • Secure Network Communication - Encrypts network data transmissions using secure socket layers for private communication.
  • SSL/TLS Connection Security - Wraps network sockets in SSL/TLS using certificates and keys to encrypt communication.
  • Transport Layer Encryption - Secures network data transmission by wrapping sockets in SSL/TLS layers using certificates.
  • Asynchronous Network Programming - Provides a framework for building high-performance servers and clients that handle concurrent connections via event loops.
  • HTTP Request Clients - Implements an HTTP client to execute standard methods for interacting with web resources.
  • HTTP Servers - Provides a high-performance HTTP server engine with built-in routing, multi-threading, and SSL/TLS support.
  • Real-Time Communication - Enables persistent, bidirectional data streaming between clients and servers using WebSockets.
  • HTTP Routing - Provides a routing system for directing incoming HTTP traffic to specific handlers based on URL patterns.
  • Pattern-Based Route Mapping - Maps incoming HTTP request URLs to handlers using dynamic path parameters and middleware chains.
  • Network Load Balancing Strategies - Allows configuration of processing threads and load balancing strategies for network connections.
  • Length-Delimited Message Framing - Uses length-delimited message framing to parse incoming byte streams into distinct network messages.
  • Protocol Packet Parsers - Provides components to decompose raw binary network streams into protocol-specific packets using various framing modes.
  • Message Framing Modes - Reconstructs application messages from raw byte streams using fixed-length, delimiter-based, or length-field parsing.
  • Background Task Schedulers - Includes background task schedulers for managing recurring operations and periodic jobs.
  • Interval-Based Task Execution - Provides mechanisms for triggering operations at fixed time intervals using background timers.
  • Task Scheduling - Implements task scheduling to trigger callback functions after specified time delays.
  • Process Scaling - Distributes connection handling across multiple independent worker processes to maximize CPU utilization.
  • Connection Reconnection Policies - Includes a configurable retry delay strategy to automatically restore lost network connections.
  • Connection Establishment Protocols - Implements the mechanisms required to initiate and upgrade network connections across various transport protocols.
  • TCP Socket Clients - Provides the capability to establish TCP connections to remote hosts for raw data stream exchange.
  • System Polling Optimizations - Uses system-specific polling mechanisms to handle high-volume concurrent connections with minimal overhead.
  • Websocket Connection Managers - Implements a manager for persistent WebSocket connections with heartbeat monitoring and automatic reconnection logic.
  • HTTP Clients - Provides an event-driven HTTP client for sending requests and parsing responses efficiently.
  • HTTP Proxies - Implements an HTTP proxy server that forwards requests by parsing headers, bodies, and request lines.
  • HTTP Request Utilities - Provides utilities for manipulating HTTP request methods, headers, and payloads for various data formats.
  • Traffic Routing Proxies - Implements traffic routing proxies to direct network requests through intermediary servers.
  • Connection and Session Management - Provides systems to track and regulate the lifecycle of active network connections and session-specific data.
  • Connection Stability Features - Builds bidirectional data channels with integrated support for heartbeats and automatic reconnection.
  • Networking Proxies - Provides a library to implement SOCKS5 and HTTP proxies for routing and intercepting network traffic.
  • Congestion Controllers - Implements congestion control algorithms to optimize transmission rates and ensure reliable UDP delivery.
  • gRPC Implementations - Supports high-performance structured remote procedure calls using gRPC over HTTP/2.
  • Protocol Abstraction Layers - Implements a layered architecture that supports high-level protocols like HTTP and MQTT on common transport layers.
  • SOCKS5 Servers - Implements a SOCKS5 proxy server that handles authentication and address resolution for traffic routing.
  • Real-Time Messaging - Supports persistent bidirectional connections and broker-based messaging for real-time data exchange.
  • UDP Socket Managers - Provides a datagram listener for handling connectionless packets with asynchronous socket management.
  • SOCKS5 Proxies - Provides a proxy implementation that supports both SOCKS5 and HTTP for routing and intercepting network traffic.
  • Stream Parsing Utilities - Offers protocol-agnostic packet unpacking to reconstruct application messages from raw byte streams.
  • Connection State Management - Tracks connection and disconnection events to provide easy access to peer addresses and session state.
  • Secure Connection Initialization - Allows establishing TCP connections with optional SSL/TLS encryption and configurable timeouts.
  • TCP Proxies - Provides a TCP proxy for intercepting and forwarding raw traffic streams to backend hosts.
  • Traffic Proxying - Provides utilities for intercepting and routing network traffic between systems via proxy servers.
  • Multi-Threaded Load Balancing - Balances incoming connections across multiple worker threads by assigning sockets to different event loops.
  • UDP Endpoint Implementations - Implements network endpoints for connectionless data transfer using standard or reliable UDP.
  • UDP Proxies - Provides the capability to intercept and forward UDP traffic to backend destinations.
  • Unix Domain Socket Support - Provides support for local inter-process communication using Unix domain sockets.
  • System Signal Handling - Implements OS-level signal handling to manage graceful shutdowns and process interrupts.
  • Object-Oriented Event Loop Wrappers - Encapsulates low-level event loop interfaces into C++ classes to simplify asynchronous development.
  • Dispatch Queues - Provides dispatch queues to safely schedule functions for execution within the event loop across threads.
  • Request Middleware - Features a middleware system for intercepting and processing HTTP requests before they reach the final handler.
  • Static Asset Serving - Implements a web server capability for delivering static files and assets from local directories.
  • Asynchronous Event Loop - Cross-platform library for event loop management.
  • Systèmes de build - A versatile network library for TCP, UDP, and HTTP services.
  • Network Communication Libraries - Simplified cross-platform network library for TCP, UDP, and WebSockets.
  • Network Frameworks - Easy-to-use network library for TCP, UDP, and WebSocket services.
  • Windows Environments - Listed in the “Windows Environments” section of the Awesome C awesome list.

Historique des stars

Graphique de l'historique des stars pour ithewei/libhvGraphique de l'historique des stars pour ithewei/libhv

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Libhv

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Libhv.
  • yhirose/cpp-httplibAvatar de yhirose

    yhirose/cpp-httplib

    16,597Voir sur GitHub↗

    This is a header-only C++ library that provides implementations for HTTP clients, HTTP servers, and a WebSocket framework. It allows for the creation of network services and the consumption of remote APIs without requiring a separate compilation step or external binary linking. The project features backend-agnostic TLS integration for secure HTTPS and WSS communication and employs a thread-pool model to process concurrent requests. It distinguishes itself with a full-duplex WebSocket state-machine and a middleware-based request pipeline that supports regular-expression path routing. The libr

    C++
    Voir sur GitHub↗16,597
  • qihoo360/evppAvatar de Qihoo360

    Qihoo360/evpp

    3,767Voir sur GitHub↗

    evpp is a C++ network library and framework designed for building high-performance network services using TCP, UDP, and HTTP protocols. It provides an asynchronous event loop to manage nonblocking I/O operations and concurrent network connections across multiple threads. The framework includes specialized tools for asynchronous DNS resolution and a system for asynchronous task scheduling using a managed thread pool. It also features a nonblocking HTTP server and client with integrated connection pooling. The project covers low-level transport layer connectivity for TCP and UDP, as well as hi

    C++
    Voir sur GitHub↗3,767
  • warmcat/libwebsocketsAvatar de warmcat

    warmcat/libwebsockets

    5,296Voir sur GitHub↗

    libwebsockets is an event-driven networking framework written in C. It provides a suite of tools for implementing HTTP servers and clients, WebSocket bidirectional communication, MQTT client messaging, and TLS-enabled socket encryption. The project distinguishes itself through a non-blocking event-loop architecture capable of scaling to high connection volumes by distributing network sessions across multiple service threads. It uses a protocol-based callback system and a pluggable event loop integration that allows the networking core to synchronize with external system event libraries. The

    C
    Voir sur GitHub↗5,296
  • zaphoyd/websocketppAvatar de zaphoyd

    zaphoyd/websocketpp

    7,702Voir sur GitHub↗

    This is a header-only C++ library and asynchronous network framework used to implement WebSocket clients and servers. It provides a full implementation of the WebSocket protocol, including handshakes, subprotocol negotiation, and frame parsing. The framework is distinguished by a policy-based transport layer and template-driven protocol negotiation, allowing the underlying network implementation to be swapped between raw buffers, streams, or custom policies. It supports per-message deflate compression to reduce data transmission volume and integrates Transport Layer Security for encrypted bid

    C++
    Voir sur GitHub↗7,702
Voir les 30 alternatives à Libhv→

Questions fréquentes

Que fait ithewei/libhv ?

libhv is a high-performance C/C++ network library and event-driven I/O framework used to build TCP, UDP, SSL, HTTP, WebSocket, and MQTT clients and servers. It provides a non-blocking event loop for managing network sockets, timers, and system signals across multiple threads.

Quelles sont les fonctionnalités principales de ithewei/libhv ?

Les fonctionnalités principales de ithewei/libhv sont : Network Protocol Implementations, Network Server Implementations, Network Service Frameworks, Event-Driven I/O, MQTT Clients, Web Servers and APIs, MQTT Messaging Integrations, C++ Networking Libraries.

Quelles sont les alternatives open-source à ithewei/libhv ?

Les alternatives open-source à ithewei/libhv incluent : yhirose/cpp-httplib — This is a header-only C++ library that provides implementations for HTTP clients, HTTP servers, and a WebSocket… qihoo360/evpp — evpp is a C++ network library and framework designed for building high-performance network services using TCP, UDP,… zaphoyd/websocketpp — This is a header-only C++ library and asynchronous network framework used to implement WebSocket clients and servers.… warmcat/libwebsockets — libwebsockets is an event-driven networking framework written in C. It provides a suite of tools for implementing HTTP… sta/websocket-sharp — websocket-sharp is a C# library implementation of the WebSocket protocol used for building bidirectional client and… tootallnate/java-websocket — Java-WebSocket is a collection of classes for implementing WebSocket clients and servers using pure Java. It provides…