你将收获

1. 了解HTTP和HTTPS通信协议的底层原理

2. 搞懂在网络通信过程中,涉及到的数据序列化和反序列化机制

3. 结合网络通信所涉及到的内容,手写实现一个RPC通信框架

适用人群

1. 所有对Java编程语言感兴趣的人员; 2. 大专及以上学历的在校学生; 3. 在职工作人员; 4. 本课程适用于零基础学员。

课程介绍

1. HTTP、HTTPS
2. 常见的序列化技术,XML、JSON、Protobuf、kyro、Hessian等
3. Socket网络通信

课程讨论

暂无评论

同学笔记

  • qq_28500837 2021-01-26 21:18:30

    来源:【直播:2020.06.14】序列化和反序列化的原理以及Protobuf的实现机制 查看详情

    1、如何跨JVM传输对象?

    序列化:把一个对象转换成为特定的形态,然后以数据流的方式传输

    反序列化:数据流->json格式->Object

     

  • qq_28500837 2021-01-26 15:46:22

    来源:【直播:2020.06.9】HTTP以及HTTPS通信协议的原理分析 02 查看详情

    1、阻塞IO(BIO)的优化?

    (1)ThreadPoolExecutor线程池,但是也受线程池的线程数量限制

    (2)引入非阻塞IO=>NIO

    2-1、连接阻塞变为连接非阻塞

    2-2、IO阻塞变为非阻塞

     

    SeverSocketChannel,注意非阻塞IO默认是阻塞的

  • qq_28500837 2021-01-26 14:33:08

    来源:【直播:2020.06.9】HTTP以及HTTPS通信协议的原理分析 01 查看详情

    1、TCP网络传输的可靠性?

    (1)三次握手 通过三个数据包来确定数据连接的建立

    第一次:A节点告诉B节点请求连接=》SYN=1,seq=x

    第二次:B节点告诉A节点知道它的请求了=>SYN=1,ACK=1,seq=y,ack=x+1

    第三次:A节点告诉B节点 ok,我知道你接收到我的数据连接请求了=>ACK=1,seq=x+1,ack=y+1

    (2)流量控制

    (3)断开机制,TCP连接必须经过时间2MSL后才真正释放掉

    四次挥手:

    第一次:客户端A主动关闭,告诉B服务器B:A已经没有数据可以传递给B了=》FIN=1,seq=u;

    第二次:服务器B告诉A 我接受到你的消息了,知道你没数据传给我了=》ACK=1,seq=y,ack=u+1

    第三次:B虽然知道A没数据给我了,但是B之前还没准备好,所以在第二次挥手后,还得进行现在这个第三次挥手,给客户端A发送一个终止包=》FIN=1,ACK=1,seq=w,ack=u+1

    第四次:A收到B的第三次挥手后,知道B可以终止了,然后告诉B收到它的终止包了=>ACK=1,seq=u+1,ack=w+1

    2、阻塞和非阻塞机制

    阻塞IO(BIO):连接阻塞,IO阻塞

     

     

     

没有更多了