#基于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. Artem and Array CodeForces - 442C (贪心)

    大意: 给定序列$a$, 每次任选$a_i$删除, 得分$min(a_{i-1},a_{i+1})$(无前驱后继时不得分), 求最大得分. 若一个数$x$的两边都比$x$大直接将$x$删除, 最后剩余 ...

  2. layuitable设置数据表

    如图,要设置类似这样的格式 步骤如下: 1. 设置一个列表表格 2. 获取数据 table.render({ elem: '#pl-list' ,id: 'pl_table' ,height: 480 ...

  3. 6月4 Smarty练习增删改

    练习Smarty的增删改所需要用到的数据库名称:timu,xuanxiang,kemu,nandu,leixing,然后使用smarty模板将前端后后台分割开来: 主页后台页面:zhupm.php & ...

  4. leetcode-algorithms-1 two sum

    leetcode-algorithms-1 two sum Given an array of integers, return indices of the two numbers such tha ...

  5. PAT 1046 Shortest Distance

    1046 Shortest Distance (20 分)   The task is really simple: given N exits on a highway which forms a ...

  6. ActiveMQ异步分发消息

    org.apache.activemq.ActiveMQConnection 类中有个参数: protected boolean dispatchAsync=true; 这个参数的含义到底是什么? 使 ...

  7. CentOS查看安装包会释放哪些文件

    1.查看软件包全称(以mysql为例) rpm -qa | grep -i mysql 2.查看释放出的文件(以MySQL-server-5.5.55-1.el6.x86_64为例) rpm -ql ...

  8. [转]JVM内存模型

    最近排查一个线上java服务常驻内存异常高的问题,大概现象是:java堆Xmx配置了8G,但运行一段时间后常驻内存RES从5G逐渐增长到13G #补图#,导致机器开始swap从而服务整体变慢.由于Xm ...

  9. summary_22rd Nov 2018

    一. 列表:记录同种属性的多个值 定义:在[]中用逗号分隔开多个任意的值 类型转换:L=list( )  括号中的内容必须是可迭代类型,包括字符串,列表,字典等 常用操作和内置方法: 1.按照索引位置 ...

  10. Redis在linux环境下的安装和部署

    官网:http://redis.io          windows版本下载地址https://github.com/MicrosoftArchive/redis/releases 1Redis建议 ...