#基于udp协议通讯的套接字
# 数据报协议
# 一个recvfrom对应一个sendto 一一对应 无粘包产生 # 服务端:
# import socket
# server=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
# server.bind(("127.0.0.1",8080))
# while True:
# date,mag=server.recvfrom(1024)
# print(date)
# server.sendto(date.upper(),mag)
# server.close
#
# 客户端
# import socket
# client=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
# while True:
# res=input(">>").strip()
# client.sendto(res.encode("utf-8"),("127.0.0.1",8080))
# date,server_addr=client.recvfrom(1024)
# print(date)
# client.close()
# #TCP协议的优缺点:(流式协议)
# 优点:传输数据可靠
# 缺点:传输效率慢
#UDP协议的优缺点:(数据报协议)
# 优点:传输数据的效率高
# 缺点:数据容易丢失 可靠性低 # socketserver模块的使用
# 基于tcp协议通讯,仅更改服务端即可
# tcp协议并发的socketserver模板:
# import socketserver
# 自定义类用来处理通讯循环
# class MyTCPhanler(socketserver.BaseRequestHandler):
# def handle(self):
# while True:
# try:
# data=self.request.recv(1024)#request相当于建立连接
# if len(data)==0:break
# print("----->收到客户消息",data)
# self.request.send(data.upper())
# except ConnectionError:
# break
# self.request.close()
# pass
# if __name__ == '__main__':
# server=socketserver.ThreadingTCPServer(("127.0.0.1",8080),MyTCPhanler)
# server.serve_forever() #连接循环 # 基于udp协议并发的socketserver模板:
# 服务端:
# import socketserver
# # 自定义类用来处理通讯循环
# class MyUDPhanler(socketserver.BaseRequestHandler):
# def handle(self):
# data,sock=self.request
# sock.sendto(data.upper(),self.client_address)
# if __name__ == '__main__':
# server=socketserver.ThreadingUDPServer(("127.0.0.1",8080),MyUDPhanler)
# server.serve_forever() #连接循环 #什么是进程
  #进程的概念:起源于操作系统
#正在进行(运行)的程序
#进程是一个包含程序运行所需的所有资源的单位
#在只有一个CPU的情况下
#是因为有多道技术
#内存被分为多个区域 存放不同的应用程序
#当一个应用程序遇到了I/O操作时 炒作系统会将CPU非陪给其他的应用程序使用
#切换的时间非常短 用户是感觉不到的
#特点:
#一个操作系统中可以同时存在多个进程
#内部使用了多道技术 可以快速的在不同的应用程序间切换 给用户的感觉就像是在同时运行
#进程是一个包含程序运行所需的所有资源的单位

udp协议和socketserver模块的更多相关文章

  1. Java基础之UDP协议和TCP协议简介及简单案例的实现

    写在前面的废话:马上要找工作了,做了一年的.net ,到要找工作了发现没几个大公司招聘.net工程师,真是坑爹呀.哎,java就java吧,咱从头开始学呗,啥也不说了,玩命撸吧,我真可怜啊. 摘要: ...

  2. 基于socket的udp传输,socketserver模块,进程

    基于UDP的套接字 udp是无连接的,先启动哪一端都不会报错 socket.SOCK_DGRAM 数据报协议 udp不会发送空数据,什么都不输入直接发送也会有报头发过去 服务端 import sock ...

  3. [Swoole系列入门教程 5] UDP协议和demo

    • 客户端服务端没有任何联系 • 指定地址跟端口,不关心消息是否发送成功 • 心跳检测不能影响到客户端• udp建立长连接

  4. ftp用的是tcp还是udp_如何通俗地解释TCP和UDP协议和HTTP、FTP、SMTP等协议之间的区别

    HTTP协议 老王喜欢看岛国小片,时常泡在论坛上和网友交流最新资讯,老王是通过浏览器浏览网页的,而浏览器是借助HTTP协议与论坛服务器沟通交流. FTP协议 老王购买了该网站的会员,可以无限制下载高清 ...

  5. python 全栈开发,Day33(tcp协议和udp协议,互联网协议与osi模型,socket概念,套接字(socket)初使用)

    先来回顾一下昨天的内容 网络编程开发架构 B/S C/S架构网卡 mac地址网段 ip地址 : 表示了一台电脑在网络中的位置 子网掩码 : ip和子网掩码按位与得到网段 网关ip : 内置在路由器中的 ...

  6. python语法基础-网络编程-TCP协议和UDP协议

    ###############    网络编程    ############## """ 网络编程 学习了Python基础之后,包括函数,面向对象等,你就可以开发了,你 ...

  7. socketserver模块TCP和UDP协议形式

    # >>>>>>>>>>>>>>>>>>>>服务端socketserver模块通 ...

  8. TCP协议和UDP协议基础介绍

    TCP协议和UDP协议区别 标签(空格分隔): TCP,udp TCP的三次握手 TCP被称为可靠的数据传输协议,主要是通过许多机制来实现的其中最主要的就是三次握手的功能,当然,TCP传送数据的机制非 ...

  9. python-基于UDP通信的套接字,socketserver模块的使用

    一.基于UDP协议通信的套接字 udp是没有链接的,所以先启动哪一端都不会报错 import socket server=socket.socket(socket.AF_INET,socket.SOC ...

随机推荐

  1. 77. Combinations (java 求C(n,k)的组合,排除重复元素)

    题目: Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. 解析:同求全 ...

  2. Laravel中APP_KEY起什么作用

    框架中是这样描述的: This key is used by the Illuminate encrypter service and should be set to a random, 32 ch ...

  3. 『计算机视觉』经典RCNN_其一:从RCNN到Faster-RCNN

    RCNN介绍 目标检测-RCNN系列 一文读懂Faster RCNN 一.目标检测 1.两个任务 目标检测可以拆分成两个任务:识别和定位 图像识别(classification)输入:图片输出:物体的 ...

  4. mysql半同步开启

    开启半同步复制 #在有的高可用架构下,master和slave需同时启动,以便在切换后能继续使用半同步复制 /etc/my.cnf plugin-load = "rpl_semi_sync_ ...

  5. hadoop集群添加新节点

    0.说明 Hadoop集群已经运行正常,现在新买了一些机子,要加入到集群里面增加新的节点.以下就是增加的过程. 1.配置运行环境 安装与master和其他slave相同的java环境,jdk版本要相同 ...

  6. 将你的Vim 打造成轻巧强大的IDE

    Vim和Emacs一个称为神之编辑器一个被称为编辑器之神,固然很是夸张,但也足以说明这两 款软件的优秀和在程序员界的地位.但是它们都已漫长的学习曲线让人望而生畏,阻止了大 多数人进入.作为一名几乎完全 ...

  7. 一、I/O操作(缓存流,数据流,对象流)

    一.缓存流 以介质是硬盘为例子说明,字节流和字符流的缺点: 每次读写的时候,都会访问硬盘,如果读写频率比较高的时候,性能不佳.为了解决问题,采用缓存流. 缓存流在读取的时候,会一次性读较多的数据到缓存 ...

  8. Hadoop--之RPC开发

    Hadoop--之RPC开发   介绍: 百度百科: RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.R ...

  9. spring-mvc实现模拟数据到网页展示过程代码

    spring-mvc实现模拟数据到网页展示过程代码 先看看我们的3种模拟数据到网页展示的思路图: 1.当mybatis的环境配置完成.一个动态Web项目建立好.开始导入jar包. -spring的ao ...

  10. TortioseSVN切换账号教程

    TorioseSVN如果不记住用户名密码那么基本每样连接服务器的操作都要重新请求认证这很麻烦,所以我们一般选择记住用户认证信息. 但记住用户认证信息后以后每次登录都后台自动以该用户身份登录,不像QQ自 ...