绿地项目的Netty或java.net.Socket?

绿地项目的Netty或java.net.Socket?,java,sockets,netty,Java,Sockets,Netty,启动绿地项目时,是否建议现在使用Netty project而不是java.net.Socket 何时使用Netty以及何时使用java.net.Socket 该项目将连接到Redis。一个是同步的,另一个是异步的,因此您需要选择编程方式。在简单的情况下,同步方法更为明显,但随着需求的增加,异步方法通常会胜出。Async在节约系统资源和灵活性方面无疑是赢家。为此,Netty本身就是一个伟大的现代Java库。我会使用Netty 当您想要执行同步操作(使用OIO)时,它非常简单 它可以通过修改nett

启动绿地项目时,是否建议现在使用Netty project而不是
java.net.Socket

何时使用Netty以及何时使用java.net.Socket


该项目将连接到Redis。

一个是同步的,另一个是异步的,因此您需要选择编程方式。在简单的情况下,同步方法更为明显,但随着需求的增加,异步方法通常会胜出。Async在节约系统资源和灵活性方面无疑是赢家。为此,Netty本身就是一个伟大的现代Java库。

我会使用Netty

  • 当您想要执行同步操作(使用OIO)时,它非常简单
  • 它可以通过修改netty管道进行扩展,允许您在运行时轻松修改或添加行为(这似乎是redis客户端可能想要做的事情)
  • 如果必须,您可以切换到异步操作(使用NIO/NIO2/AIO),而无需修改所有处理程序。(提示:您可能希望将Redis封送器/解封送器实现为netty通道处理程序)
    我只为redis java客户端实现了SUB(如PUB/SUB),在订阅时不必阻塞就好了。

    您要开始什么样的项目?你需要sockets或netty做什么?所以你想为redis创建自己的java客户端,而不是使用现有的?是的,当然!不是因为当前的LIB不好,而是因为我可以因为redis是关于性能的,所以我说netty非常适合它。即使netty是异步的?我不明白你说的“即使”是什么意思。你是说异步等于性能降低吗?