随笔分类 - 网络编程
摘要:1 IO多路复用: 检测多个socket是否发生变化(是否链接成功(可读),或者是否获取到信息(可写)) 2.socket服务端默认是在connect,recv,阻塞 3.如何让socket编程不阻塞? 使用socket模块的setbloking方法,将阻塞的地方全部变成非阻塞,有助于提高单线程并发
阅读全文
摘要:1.进程:数据是不共享的 常用功能: join,deamon,name, multiprocessing.current_process().ident/pip 2.进程的数据共享 3.锁 4.进程池 5.模块(爬虫)
阅读全文
摘要:1.锁:Lock(一次放行一个) 线程安全,多线程操作时,内部会让所有的线程排队处理。 线程不安全:+人=>排队处理 以后锁代码块 2.锁:Rlock(一次放一个) 支持递归锁,锁多次 3.一次放多个:BoundedSemaphore threading.BoundedSemaphore(指定一次放
阅读全文
摘要:1.mac地址:mac地址存在电脑的网卡中 2.DHCP服务:自动给局域网中的电脑分配IP 路由器或者交换机的DHCP服务自动分配ip地址 ipv4(四个点分的十进制表示)/ipv6 arp协议:发文件的一端向交换机发送要接收的一端的地址广播,需要接收的一段判断地址是否 和自己的地址相同,相同的话就
阅读全文
摘要:端口的作用: 在同一台电脑上,为了让不同 的程序分离开来! http:网站默认端口是80 https:网站默认端口是443 osi七层模型: 1.应用层:软件 2.表示层:接收数据 3.会话:保持登录或链接状态 4.传输:tcp/udp 5.网络:IP 6.数据链路MAC 7.物理:把数据转化成电信
阅读全文
摘要:什么原因导致的黏包? tcp协议的流失传输造成的黏包。 黏包: (自定义协议)先发送数据长度,再发送数据。 基于tcp先执行一个远程行命令的程序: subprocess模块: tcp 和udp的区别? tcp:可靠的(保证对方能收到消息),面向连接的,全双工的流式传输,效率比较低。 udp:不可靠,
阅读全文
摘要:网络编程: 软件: 客户端: cs架构 浏览器: bs架构 如何实现相互通信: 1.编写两个软件,两个软件之前的相互通信 2.用两个网线连接起来 3.使用交换机相互通信(局域网,使用ipconfig在Windows中,在其他操作系统中用ifconfig) 4.交换机和多个路由器 5.公网ip 上代码
阅读全文