与 KCP 相比,Dragonite 更快,也更适合 Java 生态。
上面的例子,比较简单,形式上看 Dragonite 和传统的 TCP API 是类似。
每个 UDP 虚拟连接都开了一个新的线程来处理,在 UDP 虚拟连接数低于 20 个时候是合适的。
如果需要支持 1000+ 以上的 UDP 虚拟连接,最好是用一个线程池来处理,配合定时器。
Dragonite 为了支持很多链接的情况,提供了 multiplexer,也就是多路复用器。
这样就可以用回掉的方法来处理从不同连接来的 UDP Frame 而不需要开太多的线程。
multiplexerAcceptThread.start();
这句是启动了 多路器的核心线程,想理解多路器原理的读者可以看下。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于