![](https://img-blog.csdnimg.cn/img_convert/cefe098ab398c7c39ff5a7e465b63f4d.png) [TOC] ## 一、课程介绍 学习本课程,你将收获: - 轻松理解Socket编程中的核心概念及应用场景; - 快速而整体掌握Socket中的在项目中的实际应用案例; - 解读并通过编码实现交通部905.4-2014数据交换协议核心逻辑; - 学习如何设计并实现一套TCP协议; - 从NIO到Netty的实战入门。 你好,我是子涵,大学主修通信工程,互联网公司工作近8年,现任上市公司软件技术架构师一职。经过多年的摸爬滚打,深深的体会到学习编程的最好方式就是通过项目历练,才能更好的“打怪升级”。 子涵认为,作为一个IT人,对技术的关注点除了从SSH、SSM等基础框架的驾驭,还应更多的落脚在多线程、并发处理、NIO及Socket技术上,因为这些技术是开发Java高性能服务器必须要掌握的,而且一些第三方的优秀框架往往也离不开这些技术。 ### 实战案例 这个技术小册,我们选取了一个用于出租车行业数据收集标准——**905.4-2014**协议。它是交通运输部公路科学研究院起草定制的一个协议标准,也是基于TCP之上的一个应用层传输协议。 ### 课程特点 你想阅读本案例中存在的故事吗?为了让大家收获满满,也为了让大家轻松愉快的学习,在本次的实践案例中,子涵先生用代码讲述了一个工人阶级家庭在大社会的车轮下,努力拼搏、可歌可泣故事。 !](images/screenshot_1666707987158.png) ### 章节介绍 - 第1章,先从整体一下我们可以从案例中学到什么,以及在案例中的用到了哪些技术。 - 第2章,介绍在Socket编程过程中一些基础知识,让大家建立起对这块知识内容的一个整体轮廓; - 第3章,结合905.4-2014协议的基本内容,动手实现NIO长连接服务端的实现,以及协议内容的设计和实现思路; - 第4章,实现长连接客户端,以及采用多线程技术进行系统性能测试; - 第5章,介绍Netty相关基础知识,并使用Netty实现长连接服务端的编码; - 第6章,同步结果可视化,做好系统、业务数据监控; - 第7章,提供付费用户的售后服务,做好长期维护。 ### 适用人群 - 具有一定的Java开发基础; - 学习Java开发领域Spring框架之外的东西; - 想快速通过实战项目提升个人能力的同学。 - 想通过实战入门NIO、Netty。 ## 二、为什么要写这么一个小册? 首先基于Netty实现socket数据的同步,在Java开发领域中,这样的业务场景是相对比较冷门的。刚接触这样的项目的时候,虽然在网上也能找到一些材料,但这些材料要么偏重于理论知识的讲解,要么只是实战的“只言片语”,而且业务相对匹配度不高,因此很难找到高质量、系统的实战文档。 我已经经历了摸着石头过河的这个阶段,我深知这个过程如果没有相关的经验会非常坎坷,往往就是走错了方向到最后才醒悟,甚至会严重打击自信心。因此我产生一个念头,我要把这块协议的设计思想、协议的实现框架要做一次整理。我相信在未来的某个时刻,能对某些有缘的小伙伴有所帮助。 ## 三、为什么要付费? 这个小册虽然是我本人整理的第一个技术小册,但倾注了个人较大的精力。从文档的编写、协议的解读、代码的编写,都是为了尽力让读者阅读起来更加顺畅。也许你会注意到,你正在看的这篇文档是看云上排版最“**美丽**”的文档。 另外,我相信这个小册是可以帮助你快速构建一个可以运行的Netty数据解析服务的,如果你正好面临的也是相似的业务场景,请告诉你的老板,我相信你的老板一定会**欣喜若狂**的。 >[danger] 时间就是金钱。在企业生存法则中,时间更是大把的金钱。 ## 四、结束语 1. 多思考,多问为什么,尤其一些重要概念,不能人云亦云,得先说服自己,再说服别人; 2. 网络编程是中高程序员绕不过的坎,与其把难的留到最后,不妨试试让子涵先带你入门。 > 作者:子涵仙人 个人博客:https://blog.csdn.net/l714417743 > 关注微信公众号:码山有道 ![](https://img.kancloud.cn/6d/50/6d50ee0f79d7a63b0dbdce3a0b723ea5_800x500.png) ![](https://img.kancloud.cn/6d/dc/6ddc8e2bdc86cc6d0b01d386d4449e2c_1710x624.png)