作为 Java 开发有必要系统深入学习下 netty 吗

2022-09-09 09:47:52 +08:00
 rqxiao

工作几年来没用过。但 rocketmq ,dubbo 等 都用了 netty 。netty 是 java 网络编程的王者。

目前 nio 和 netty 入门都了解了。netty 是高级 java 迈不去的坎?

5555 次点击
所在节点    Java
28 条回复
bootvue
2022-09-09 09:50:49 +08:00
frank1256
2022-09-09 09:53:06 +08:00
需要,但不用需要的这么彻底,比“了解”多一点就行,java 生态里,像我这样的低 level 码农没有机会造轮子。深入学习只是为了能看懂源码,以及面试装逼。
RedBeanIce
2022-09-09 09:56:50 +08:00
楼主的目标是提升自己嘛?

经过一段时间思考,我认为很多时间学这些东西都没有用,我们更应该活在当下的去学习经常会用到的东西,然后去学习自己感兴趣的 or 未来可能会用到的

例如我活在当下,可能 mybatis 是最需要研究的,还有 spring ,mysql ,es ,kafka 等等,,,当然每个人所处的岗位是不一样的,楼主和我不一样,请因地制宜。

最后回复楼主的问题,需要了解 netty ,但是似乎楼主可能处于高段位?我也好像觉得我们公司高工不会 netty
wxw752
2022-09-09 10:02:59 +08:00
公司的 ws 服务器就是我用 netty 写的,可以去学一下,真的没多难。
leeyuzhe
2022-09-09 10:08:32 +08:00
用法有必要学习,原理或者源码看个人需求
assiadamo
2022-09-09 10:33:21 +08:00
只用 java ,聚焦网络层和性能的需要重点了解,其他的就是学习他的编码风格、设计模式、数据结构啥的

但更重要的是了解操作系统级的 socket 编程以及 TCP/IP 协议细节
KevinBlandy
2022-09-09 11:15:55 +08:00
我个人觉得 netty 是集并发编程,设计模式,socket 编程,响应式的各种优秀实践于一身的大成。可以好好读一读。
DeepRedApple
2022-09-09 11:22:54 +08:00
yazinnnn
2022-09-09 11:30:11 +08:00
netty

vertx

kotlin

quarkus
⬇ ⬇ ⬇ ⬇ ⬇
(接受各种 Monad) (拒绝各种 monad) 注重性能 注重云原生 缝合怪
⬇ ⬇ ⬇ ⬇ ⬇
haskell clojure rust go .net/F#
⬇ ⬇
范畴论 scheme/racket
yazinnnn
2022-09-09 11:32:58 +08:00
netty

vertx

kotlin-

quarkus
⬇------------------------⬇--------------------⬇---------------------⬇-------------------⬇
(接受各种 Monad)------(拒绝各种 monad)-----------注重性能---------------注重云原生--------------缝合怪
⬇------------------------⬇--------------------⬇---------------------⬇-------------------⬇
haskell--------------clojure----------------rust--------------------go----------------.net/F#
⬇-----------------------⬇
范畴论---------------scheme/racket


这缩进...
securityCoding
2022-09-09 13:14:21 +08:00
网络框架,学学也可以
Jooooooooo
2022-09-09 13:26:00 +08:00
重点要学的其实是 nio 那一套.
awalkingman
2022-09-09 13:38:12 +08:00
写 java 的程序员有两种,一种是用过 netty 的,一种是没用过 netty 的。
xianyv
2022-09-09 13:40:49 +08:00
学了学 netty 的皮毛,只是会用,到现在也没研究源码. 混迹在中小公司中,几乎没有用武之地
zoharSoul
2022-09-09 14:01:12 +08:00
没有必要
keppelfei
2022-09-09 14:11:24 +08:00
有段时间弄了一个即时通讯的项目,学习了不少,netty 真的很不错。
iyaozhen
2022-09-09 14:27:28 +08:00
有必要,你要是高级 JAVA ,不懂这个说不过去
ma836323493
2022-09-09 15:21:44 +08:00
netty in action. 学学手动撸一个出来
huang119412
2022-09-09 15:30:07 +08:00
netty 源码其实挺简单的,比 J.U.C 简单。可以研究一下
zr8657
2022-09-09 15:32:12 +08:00
有,学 netty 的过程会复习计算机网络和 IOS 知识,我学完以后对网络有了新的认知

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/878812

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX