JGroups seems to be in existence since late 90's. Why do we need Netty when we have JGroups? Is it because JGroups is based on thread pooling while Netty is asynchronous? Is that the only difference?
Asked
Active
Viewed 729 times
2 Answers
7
JGroupss goal is clustering and reliable messaging, with a focus on group communication, ie. sending messages to a group of nodes (one-to-many). Its mainly used to implement decentralized peer-to-peer systems.
Netty's focus is (afaict) point to point messaging (one-to-one). A typical implementation would be a client-server architecture.
Disclaimer: I'm the JGroups lead, and don't know too much about Netty...

Bela Ban
- 2,186
- 13
- 12
-
1There is a task to use Netty as a transport for JGroups, scheduled for JGroups 5.x (we already have UDP, TCP and TCP_NIO2). – Bela Ban Oct 29 '19 at 15:30
-
See https://github.com/jgroups-extras/jgroups-netty – Bela Ban Jul 06 '20 at 12:33
4
Netty is a general purpose network framework with which you can write "any" network related application. So it is much more generic then JGroups.

Norman Maurer
- 23,104
- 2
- 33
- 31