工作几年来没用过。但 rocketmq ,dubbo 等 都用了 netty 。netty 是 java 网络编程的王者。
目前 nio 和 netty 入门都了解了。netty 是高级 java 迈不去的坎?

工作几年来没用过。但 rocketmq ,dubbo 等 都用了 netty 。netty 是 java 网络编程的王者。
目前 nio 和 netty 入门都了解了。netty 是高级 java 迈不去的坎?
1 bootvue Sep 9, 2022 有 |
2 frank1256 Sep 9, 2022 需要,但不用需要的这么彻底,比“了解”多一点就行,java 生态里,像我这样的低 level 码农没有机会造轮子。深入学习只是为了能看懂源码,以及面试装逼。 |
3 RedBeanIce Sep 9, 2022 via iPhone 楼主的目标是提升自己嘛? 经过一段时间思考,我认为很多时间学这些东西都没有用,我们更应该活在当下的去学习经常会用到的东西,然后去学习自己感兴趣的 or 未来可能会用到的 例如我活在当下,可能 mybatis 是最需要研究的,还有 spring ,mysql ,es ,kafka 等等,,,当然每个人所处的岗位是不一样的,楼主和我不一样,请因地制宜。 最后回复楼主的问题,需要了解 netty ,但是似乎楼主可能处于高段位?我也好像觉得我们公司高工不会 netty |
4 rockddd Sep 9, 2022 公司的 ws 服务器就是我用 netty 写的,可以去学一下,真的没多难。 |
5 ThisDay Sep 9, 2022 用法有必要学习,原理或者源码看个人需求 |
6 badbye Sep 9, 2022 只用 java ,聚焦网络层和性能的需要重点了解,其他的就是学习他的编码风格、设计模式、数据结构啥的 但更重要的是了解操作系统级的 socket 编程以及 TCP/IP 协议细节 |
7 KevinBlandy Sep 9, 2022 我个人觉得 netty 是集并发编程,设计模式,socket 编程,响应式的各种优秀实践于一身的大成。可以好好读一读。 |
8 DeepRedApple Sep 9, 2022 有 |
9 yazinnnn Sep 9, 2022 netty vertx kotlin quarkus (接受各种 Monad) (拒绝各种 monad) 注重性能 注重云原生 缝合怪 haskell clojure rust go .net/F# 范畴论 scheme/racket |
10 yazinnnn Sep 9, 2022 netty vertx kotlin- quarkus ------------------------------------------------------------------------------------ (接受各种 Monad)------(拒绝各种 monad)-----------注重性能---------------注重云原生--------------缝合怪 ------------------------------------------------------------------------------------ haskell--------------clojure----------------rust--------------------go----------------.net/F# ----------------------- 范畴论---------------scheme/racket 这缩进... |
11 securityCoding Sep 9, 2022 via Android 网络框架,学学也可以 |
12 Jooooooooo Sep 9, 2022 重点要学的其实是 nio 那一套. |
13 awalkingman Sep 9, 2022 写 java 的程序员有两种,一种是用过 netty 的,一种是没用过 netty 的。 |
14 xianyv Sep 9, 2022 学了学 netty 的皮毛,只是会用,到现在也没研究源码. 混迹在中小公司中,几乎没有用武之地 |
15 zoharSoul Sep 9, 2022 没有必要 |
16 keppelfei Sep 9, 2022 有段时间弄了一个即时通讯的项目,学习了不少,netty 真的很不错。 |
17 iyaozhen Sep 9, 2022 有必要,你要是高级 JAVA ,不懂这个说不过去 |
18 adimn Sep 9, 2022 netty in action. 学学手动撸一个出来 |
19 huang119412 Sep 9, 2022 netty 源码其实挺简单的,比 J.U.C 简单。可以研究一下 |
20 zr8657 Sep 9, 2022 有,学 netty 的过程会复习计算机网络和 IOS 知识,我学完以后对网络有了新的认知 |
21 carytseng Sep 9, 2022 我熟悉 netty 是从对接一个 tcp 的设备开始的,在工作中学习是最深刻的。 |
22 wxlwsy Sep 9, 2022 如果你想研究 netty 底层可以先写点 nio 和 aio 原生代码的非常有用. |
25 urnoob Sep 9, 2022 via Android 我是一个用过并且看过源码的人,我是这么认为的 netty 要看源码就看下从接受链接到 handler 这一条线就可以了。你只要理解数据是怎么过来的就行,不需要细节。这样有助于你使用它。 这个过程中会涉及到 nio 操作,你可以忽略,转而看下 linux 用 epoll 三函数怎么用会清晰很多。也能学到底层一些东西。 内存分配那块没必要看。 |
26 rockddd Sep 10, 2022 @choice4 集群实现也简单,业务逻辑上稍微改改就行,根据 channelId 判断长连接是不是连在当前服务实例中。 如果在当前服务实例就正常处理,否则搞个发布订阅的中间件通知给其他实例,redis,zk,mq 都行。 |