socket网络编程

socket网络编程

    • socket简介

socket简介

1、本地的进程间(IPC)有很多方式,如:
队列
同步(互斥锁,条件变量等)
2、网络中进程之间如何通信
首先要表示唯一一个进程,否则无法进行通信,本地进程可以用pid表示,但是在网络上不行,其实TCP/IP协议,已经解决了这个问题,网络层的ip地址可以表示唯一主机,而传输层的协议加端口可以唯一标识主机中的应用程序–进程。
socket是一个机制,可以实现上述功能。
socket网络编程_第1张图片tcp套接字稳定不会丢失数据,但是慢,udp套接字快但是不稳定,有可能会丢失数据
socket网络编程_第2张图片
这里的encode()是因为python3和python2在套接字返回值解码上有区别,解决办法很简单,只需要在python的bytes和str两种类型转换的函数encode()和decode()即可,str通过encode()方法可以编码为指定的bytes,反过来从网络或者磁盘上读取了字节流,那么读取到的数据就是bytes,要把bytes转换为str就需要decode()方法,在python3里面不能直接发,python2直接发就行。
不要纠结发了什么socket网络编程_第3张图片

你可能感兴趣的:(python)