Go vs Netty: What are the differences?
What is Go? An open source programming language that makes it easy to build simple, reliable, and efficient software. Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
What is Netty? Asynchronous event-driven network application framework. Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.
Go can be classified as a tool in the "Languages" category, while Netty is grouped under "Concurrency Frameworks".
"High-performance" is the primary reason why developers consider Go over the competitors, whereas "High Performance" was stated as the key factor in picking Netty.
Go and Netty are both open source tools. Go with 59.6K GitHub stars and 8.25K forks on GitHub appears to be more popular than Netty with 19.7K GitHub stars and 8.92K GitHub forks.
Uber Technologies, Pinterest, and Heroku are some of the popular companies that use Go, whereas Netty is used by Outbrain, Appian, and Rapido. Go has a broader approval, being mentioned in 892 company stacks & 589 developers stacks; compared to Netty, which is listed in 11 company stacks and 14 developer stacks.