专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

Java开发需要哪些TCP_java

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/5 17:14:33       共计:3571 浏览

Java开发需要哪些TCP?

Java开发需要哪些TCP/IP知识,可能题主是想做一些Java网络编程方面的开发。本人做过一些网络编程的项目,对网络编程有比较深入的了解。个人感觉可能需要以下几方面的知识:

第一、Java网络编程的基础。TCP相关的Socket、ServerSocket,UDP相关的DatagramSocket的使用,这是基础。通过这些的使用可以对Java网络编程有基础的了解。

第二、IP地址、端口号的基础知识。了解什么是IP地址,什么是端口号。既然做网络编程开发,就需要知道IP地址,知道端口号。服务端都有自己的监听端口。客户端连接服务端需要知道服务端的IP地址和端口号。

第三、基本的命令使用。例如IP地址查看命令,端口对应TCP连接情况查看命令。ifconfig(Linux)\ipconfig(windows)。端口号查看netstat等。telnet(windows)检测端口监听是否成功。ping检测对端IP地址是否通。

第四、防火墙的开关和简单配置。很多情况下会发现明明对端IP地址是可以ping通,但是就是连接不上,这个时候很有可能是防火墙配置问题。这个时候可以关闭防火墙,配置简单的路由规则,或者清空防火墙的理由规则。

第五、TCP/IP协议的基础知识。了解TCP/IP协议之间的不同层次之间是如何工作的,有助于理解消息的传送。了解IP协议、TCP协议格式。了解TCP协议的三次握手和四次握手。了解网络连接的不同状态CLOSE_WAIT、LISTEN等。

第六、IO只是基础,NIO使用采用更广泛。官方认为NIO为新IO,但很多人将其理解为Non-block。大部分网络编程会使用netty或者mina框架来代替使用jdk的nio编程。

第七、心跳的使用。大部分网络连接通过心跳来检测连接的状态,这个也是一个基础知识。

第八、netty框架的使用。学会使用netty框架。netty框架使用更为广泛。

第九、拆包和粘包的使用。数据从一台机器发送另一台机器,中间需要使用拆包和粘包来完整的接收和处理业务消息。

第十、编解码的使用。可以使用多种编解码技术。例如protobuf、avro、thrift等等等,也可以自定义。还有以下大小端的概念,还有数据类型之间的转换,例如int与byte数组互转,long与byte数组的互转等等。

第十一、抓包工具的使用。通过抓包工具可以分析不同的协议,像HTTP、SSL、TCP等等。

第十二、线程池的使用。

第十三、流量控制。像netty自带流量控制功能。

第十四、网络编程让人头疼的打开文件句柄数过多问题的解决。

......

总之,网络编程的知识不止这些,网络编程时互联网的基础,只是我们大部分人做应用开发,或者是框架已经将这些内容进行了封装,让我们感觉不到它的存在。

本人正在进行网络编程方面知识的整理,后续将以文章的形式进行分享,希望有兴趣的同学互相关注,多提问题,共同进步。

本人具有多年的java开发经验,熟悉多种框架,熟悉网络编程,熟悉java安全编程,熟悉大数据,熟悉多种安全协议,熟悉并发编程,有兴趣的同学可以互相关注,互相学习!!!

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:JAVA中socket的TCP连接个数_java | ·下一条:循环中括号里边放的参数都可以是什么类型的_java

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有