''' =>IO阻塞 :就是普通的sk.accept接收不到数据就一直等待 =>IO非阻塞 sk.setblocking(False) #设置服务器的accept, recv均为非阻塞 => IO多路复用 比如socketserver,多个客户端连接,单线程下实现并发效果,就叫多路复用。 通过一个s ...
分类:
其他好文 时间:
2020-03-16 15:15:34
阅读次数:
55
监控三次握手连接初始命令如下[root@mysql ~]# netstat -antpActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address Stat... ...
分类:
其他好文 时间:
2020-03-15 21:56:22
阅读次数:
66
一,粘包问题详情 1,只有TCP有粘包现象,UDP永远不会粘包 你的程序实际上无权直接操作网卡的,你操作网卡都是通过操作系统给用户程序暴露出来的接口,那每次你的程序要给远程发数据时,其实是先把数据从用户态copy到内核态,这样的操作是耗资源和时间的,频繁的在内核态和用户态之前交换数据势必会导致发送效 ...
分类:
其他好文 时间:
2020-03-09 16:17:18
阅读次数:
47
对于自控或电气工程师来说,西门子PLC是每个人都非常熟悉的一款PLC品牌;而对于上位机开发工程师来说,Socket通信或TCP/IP协议也是必须要掌握的一种通信方式。刚好手头有一款西门子的200Smart PLC,可以利用它来跟大家聊聊Socket通信的那些事儿。 相比较而言,西门子PLC对Sock ...
分类:
其他好文 时间:
2020-03-05 00:53:25
阅读次数:
96
socketserver内置模块 socketserver模块是一个内置模块,主要解决的是socket只能一对一, 不能多对多通信的问题,设置在服务端,不是客户端。 基本格式为: 导入:import socketserver 创建类class Mysocket(socketserver.BaseRe ...
分类:
其他好文 时间:
2020-03-02 14:54:37
阅读次数:
62
线性表分为顺序表和链表。 顺序表:空间大小固定,方便查找,当插入数据的时候要移动数据。 链表:在每一个数据元素中添加一个保存下一个数据的地址,在插入和删除数据的时候比较方便。 单链表的查找删除原理图 双向链表的插入原理图 双向链表删除原理图 1.设计数据元素的类型(设计链表节点类型) typedef ...
分类:
其他好文 时间:
2020-03-01 09:16:19
阅读次数:
86
Python面试重点(进阶篇) 注意:只有必答题部分计算分值,补充题不计算分值。 第一部分 必答题 简述 OSI 7层模型及其作用?(2分) 物理层 数据链路层 网络层 传输层 会话层 表示层 应用层 简述 TCP三次握手、四次回收的流程。(3分) 建立连接 由客户端发起一个syn请求,服务端接收并 ...
分类:
数据库 时间:
2020-02-27 13:24:39
阅读次数:
81
strace是一个非常简单的工具,用来跟踪可执行程序的系统调用(systemcall)。最简单的使用是,它追踪可行程序运行时的整个生命周期,输出每一个系统调用的名字,参数和返回值。但是它还可以做更多的事情:它可以基于系统调用或者系统调用组来过滤它可以通过计算制定系统调用的次数,花费的时间以及成功和失败的次数来描述系统调用的使用它可以追踪发送给进程的信号(signal)它可以通过进程id(pid)号
分类:
其他好文 时间:
2020-02-26 16:43:28
阅读次数:
98
1.TCP和UDP的区别 === (1)TCP是面向连接的协议,UDP是面向无连接的协议。 (2)TCP对系统资源要求较多,UDP对系统资源要求较少。 (3)TCP是数据流模式,UDP是数据报模式。 (4)TCP保证数据顺序及数据的正确性,UDP可能会丢包。 2.简述TCP/UDP服务器端创建流程与 ...
分类:
其他好文 时间:
2020-02-25 16:10:39
阅读次数:
84