Top 23 Networking Open-Source Projects
-
OkHttp
Square’s meticulous HTTP client for the JVM, Android, and GraalVM.
-
Alamofire
Elegant HTTP Networking in Swift
Project mention: Is Alamofire the industry standard or does your company handle networking differently? | reddit.com/r/iOSProgramming | 2021-01-24AlamoFire doesn’t support background configurations. Makes it impossible for my company to use AlamoFire for the one part of the app where it’d be useful as we support uploading/downloading unlimited numbers of files at a time (data driven app with offline support). If you’re downloading/uploading 10GB of data, you don’t want to be stuck sitting in an app waiting for it to finish... I’d be shocked if it’s an industry standard with such an important core feature missing.
-
Scout
Get performance insights in less than 4 minutes. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.
-
Dubbo
Apache Dubbo is a high-performance, java based, open source RPC framework.
-
AFNetworking
A delightful networking framework for iOS, macOS, watchOS, and tvOS.
-
Netty
Netty project - an event-driven asynchronous network application framework
Project mention: The Kotlin Foundation – By Jetbrains and Google | news.ycombinator.com | 2021-02-13Java developers are spoiled for choice.
There's everything, from the simplest possible https://sparkjava.com/, to the a little bit nicer https://javalin.io/ (which has a Kotlin wrapper), to the high performance and full framework https://vertx.io/ (which always had great multi-lingual support within the JVM), to the newer and GraalVM-friendly https://micronaut.io/ and https://quarkus.io/ ... for the Enterprise-only crowd, you still have the JEE successor, https://jakarta.ee/ and Oracle's own https://helidon.io/#/ (which likes to position itself as microservice focused, like Micronaut and Quarkus). Not to mention lower level libraries you can use, like https://www.eclipse.org/jetty/ and https://netty.io/.
Ktor has a tough fight to become dominant even in the Kotlin world.
Spring Boot is, still, definitely the most popular option, but it's still just one of very very many!
-
libcurl
A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP. libcurl offers a myriad of powerful features
Find a DoH server list like https://github.com/curl/curl/wiki/DNS-over-HTTPS to filter / block the IPs of DoH services in the firewall.
-
libuv
Cross-platform asynchronous I/O
libuv - Cross-platform asynchronous I/O. MIT
-
fasthttp
Fast HTTP package for Go. Tuned for high performance. Zero memory allocations in hot paths. Up to 10x faster than net/http
I went with fasthttp, which provides high performance, zero memory allocations in hot paths and Up to 10x faster than net/http for a large throughput service. Go provides out of the box http support but for a beginner, it felt much easier to go with a framework, thereby ended up using fiber.
-
Moya
Network abstraction layer written in Swift.
What is the advantage of your library over established solutions like Moya or protocol oriented networking approaches?
-
kcptun
A Stable & Secure Tunnel based on KCP with N:M multiplexing and FEC. Available for ARM, MIPS, 386 and AMD64。KCPプロトコルに基づく安全なトンネル。KCP 프로토콜을 기반으로 하는 보안 터널입니다。
-
CocoaAsyncSocket
Asynchronous socket networking library for Mac and iOS
-
tokio
A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
Official Tokio Tutorial
-
RestKit
RestKit is a framework for consuming and modeling RESTful web resources on iOS and OS X
-
KCP
:zap: KCP - A Fast and Reliable ARQ Protocol
-
Muduo
Event-driven network library for multi-threaded Linux server in C++11
-
gRPC
The Java gRPC implementation. HTTP/2 based RPC
clone https://github.com/grpc/grpc-java
-
Finagle
A fault tolerant, protocol-agnostic RPC system
-
uvloop
Ultra fast asyncio event loop.
-
cilium
eBPF-based Networking, Security, and Observability
cilium/cilium (Go): eBPF-based Networking, Security, and Observability
-
libevent
Event notification library
libevent - Event loop replacement for network servers. BSD-3-Clause
-
Proxygen
A collection of C++ HTTP libraries including an easy to use HTTP server.
-
Mongoose
Mongoose Embedded Web Server Library - a multi-protocol embedded networking library with TCP/UDP, HTTP, WebSocket, MQTT built-in protocols, async DNS resolver, and non-blocking API. (by cesanta)
Perhaps check out mongoose (https://github.com/cesanta/mongoose).
-
ZeroMQ
ZeroMQ core engine in C++, implements ZMTP/3.1
Project mention: can you recommend a production level C++ open source project that I can learn what is the production level code looks like? | reddit.com/r/Cplusplus | 2021-01-22
Index
What are some of the best open-source Networking projects? This list will help you:
Project | Stars | |
---|---|---|
1 | OkHttp | 39,450 |
2 | Alamofire | 35,311 |
3 | Dubbo | 34,752 |
4 | AFNetworking | 33,087 |
5 | Netty | 26,085 |
6 | libcurl | 19,501 |
7 | libuv | 16,823 |
8 | fasthttp | 14,483 |
9 | Moya | 12,855 |
10 | kcptun | 12,327 |
11 | CocoaAsyncSocket | 11,880 |
12 | tokio | 11,168 |
13 | RestKit | 10,283 |
14 | KCP | 9,358 |
15 | Muduo | 9,088 |
16 | gRPC | 8,445 |
17 | Finagle | 7,892 |
18 | uvloop | 7,580 |
19 | cilium | 7,573 |
20 | libevent | 7,178 |
21 | Proxygen | 7,037 |
22 | Mongoose | 6,919 |
23 | ZeroMQ | 6,786 |