作者回复: 最近也在思考这个问题,就是有限得时间怎么能讲解那么多细枝末节,所以觉得还是把主线交代清楚,然后剩下的大家一起讨论交流,找出大家都关心的,然后一起研究下,看看可能整理出来比如:netty常见问题100问什么的,这样也是很好的一种方式。
作者回复: 网络知识:《TCP/IP详解》、《图解TCP/IP》、《Wireshark网络分析就这么简单》
Java 网络编程:《Java 网络编程》、《Java TCP/IP Socket编程》
Netty 相关:《Netty权威指南》《Netty实战》(译自《Netty in action》: Norman Maurer)《Netty进阶之路:跟着案例学Netty》
作者回复: 一起努力!
作者回复: 尽量做到,但是反思下,有的时候,讲的时候有的以为大家都知道,就一笔带过了,如果以后发现哪里讲的太粗略,可以留言反馈下,然后一起梳理。
作者回复: 谢谢支持,最开始我也选了jdk来做,发现确实繁琐,虽然学到了知识,但是工程实践还是用大众方案好。只能说java nio也不是白学,第三章就能看出来本质还是java nio编程,只是netty更好用
作者回复: 👍
作者回复: 既然你都用netty做了,单从你的设计来看,没有什么问题,但是你可能需要考虑一些额外的问题,比如你写备份的那个请求和你的主业务之间是同步还是异步?如果失败怎么补偿等等?我们做过类似的事情,都是另外搞了一个独立服务来单独做的,因为这种需求对实时性要求不高。然后补偿也好做,怎么做,也都不影响主服务。另外对于图片这种特别的文件类型,大多都不大,所以可以做一些聚合,比如文件存储成100M,然后里面有很多小文件,这样减小文件碎片,另外文件目录,要分散点,避免1个目录存无数个,不然会很慢,等等了,扯远了;
回正题,你这个问题上来就这样问,我只能说没有问题,肯定也能做通,但是你可以考虑更多的问题,就像开始说的,独立出一个服务专门做这个事情。
作者回复: 因为偏底层了,然后课程设计的时候选取的是最重要的点,所以没有讲这块,怕跑偏,后面我会根据您的意见,把一些类似没提到然后大家觉得重要的问题做成一个小册子,单独再发出来,这样可能会更好点。回头我做好了,找个地方放下,再来想办法通知您!
作者回复: 嗯,一起学习,netty水很深,有的一个小的提交背后的知识和故事都很多,所以只能说先抓住主线,然后再慢慢体会。
作者回复: 谢谢,希望能坚持下去,有所收获!
作者回复: 希望如此!
作者回复: 只要是使用java语言,且需要网络通信,都可以用,覆盖tcp.udp.也支持常用应用层协议,所以都能用,但是假设你不追求高性能,直接基于现有的框架(大多也都基于netty)之类写写业务不涉及通信层,那你可能只需要了解它就行了。
作者回复: 嗯,因为设计课程的时候,是期望有一点基础的,至少对NIO有一点点了解,否则的话,60讲根本没有办法讲完。你说的先讲Helloworld的方式,个人感觉不是太适合netty,因为netty的hello world太简单了,因为大多netty自己做好了,所以当时改了顺序,先讲原理,再讲案例。如果不太习惯的话,可以尝试先实践后原理再结合来看。谢谢
作者回复: 单从问题的描述(描述的不是很清晰)看,不像netty的问题,倒像网络互通性问题,既然提到代理,那你也可以使用netty提供的一些代理handler(Socks5ProxyHandler等)来试试。