个人理解

  个人感觉socketserver其实就是为服务端专门提供的一个用于解决多用户并发访问需求的一个模块

小试牛刀:

服务端socketserver_server.py

 import socketserver
''' socketserver_server.py
要使用socketserver实现服务器端代码编写需遵循的三步:
.自己创建一个请求处理类,该类要继承BaseRequestHandler,且还要重写父类的handle()
.实例化TCPServer(UDPServer),并传递server ip和上边创建的请求处理类给这个TCPServer(UDPServer)
.调用实例的handle_request() or serve_forever()来分别处理一个请求或多个请求
'''
#请求处理类
class Mysocket(socketserver.BaseRequestHandler):
#重写父类的handle()
def handle(self):
while True:
try:
self.data = self.request.recv().strip()
print(self.data.decode())
data = '收到消息'.encode()
self.request.send(data)
except ConnectionResetError as e:
print('error occured:',e)
break
if __name__ == '__main__':
#指定服务器ip
Host,Port = 'localhost',
server = socketserver.TCPServer((Host,Port),Mysocket)
server.serve_forever()

客户端socketserver_client.py

 import socket

 '''
socketserver_client.py
客户端和socket编程的客户端样,用到socket
'''
client = socket.socket()
client.connect(('localhost',))
while True:
mes = input(">>:").strip()
if len(mes) == :
continue
client.send(mes.encode())
respose_data = client.recv()
print(respose_data.decode())

socketserver 入门练习的更多相关文章

  1. Unity连Photon服务器入门详解

    Photon是目前比较好用的游戏服务器.目前网上对于Photon的服务器讲解比较少,最近也对Photon做了初步的了解,做一个极其详细的入门. 首先就是得下载Photon咯 https://www.p ...

  2. Python自动化 【第一篇】:Python简介和入门

    Python简介: 一.什么是python Python是一门动态解释性的强类型定义语言. pythonde 特点:“优雅”.“明确”.“简单”. 二.Python由来 python的创始人为吉多·范 ...

  3. java socket通讯(一) 入门示例

    一.入门 要想学习socket通讯,首先得知道tcp/ip和udp连接,具体可参考浅谈TCP/IP 和 UDP的区别 二.示例 首先新建了一个java工程,包括两个部分,客户端SocketClient ...

  4. Python自动化运维之1、Python入门

    Python简介 python是吉多·范罗苏姆发明的一种面向对象的脚本语言,可能有些人不知道面向对象和脚本具体是什么意思,但是对于一个初学者来说,现在并不需要明白.大家都知道,当下全栈工程师的概念很火 ...

  5. SuperSocket入门(三)-Telnet多服务实例和服务实例交互配置详解

        在SuperSocket入门(二)中我们已经简单了解了通过配置App.config文件使用BootStrap启动SuperSocket服务.我们先来看一下上个案例中的基本配置文件示例: < ...

  6. day01 python入门之路

    Python之路,Day1 - Python基础1   本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼 ...

  7. Java Socket NIO入门

    Java Socket.SocketServer的读写.连接事件监听,都是阻塞式的.Java提供了另外一种非阻塞式读写.连接事件监听方式——NIO.本文简单的介绍一个NIO Socket入门例子,原理 ...

  8. 分布式消息系统Jafka入门指南

    分布式消息系统Jafka入门指南 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 一.JafkaMQ简单介绍 JafkaMQ是一个分布式的公布/订阅消息系 ...

  9. python网络编程——SocketServer/Twisted/paramiko模块

    在之前博客C/S架构的网络编程中,IO多路复用是将多个IO操作复用到1个服务端进程中进行处理,即无论有多少个客户端进行连接请求,服务端始终只有1个进程对客户端进行响应,这样的好处是节省了系统开销(se ...

随机推荐

  1. STM32 ~ 查看系统时钟

    调用库函数RCC_GetClocksFreq,该函数可以返回片上的各种时钟的频率 函数原形 void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks) ...

  2. shapes

    接口 shape package shape; public abstract interface shape { public abstract void Draw(); public abstra ...

  3. Protocol_ISIS

    集成ISIS协议 作者:Danbo 2015-7-5 ISIS的意思是表示中间系统,并且是为OSI无连接网络协议(OSI Conectionless Network Protocol,CLNP)设计的 ...

  4. Hadoop合并小文件的几种方法

    1.Hadoop HAR 将众多小文件打包成一个大文件进行存储,并且打包后原来的文件仍然可以通过Map-Reduce进行操作,打包后的文件由索引和存储两大部分组成: 缺点: 一旦创建就不能修改,也不支 ...

  5. leetcode 747. Largest Number At Least Twice of Others

    In a given integer array nums, there is always exactly one largest element. Find whether the largest ...

  6. HTML layout高仿QQ GUI

    1. [图片] QQ20130804162049.png ​2. [代码]AAuto 代码     import win.ui;import web.layout;/*DSG{{*/winform = ...

  7. 纯属娱乐,对入门Android有一定的帮助

    package android.m9;   import android.app.Activity; import android.os.Bundle; import android.view.Men ...

  8. 七号信令中TUP协议的主要消息和故障问题

      CIC码说明: TUP消息的路由标记: 为OPC 24位 DPC24位 CIC 12位,12位CIC 的低5为时隙号,其中后4位为SLC,高7位为系统号.     CIC配置需要注意几个问题:   ...

  9. UNP总结 Chapter 11 名字与地址转换

    本章讲述在名字和数值地址间进行转换的函数:gethostbyname和gethostbyaddr在主机名字与IP地址间进行转换,getservbyname和getservbyport在服务器名字和端口 ...

  10. kafka之五:如何手动更新Kafka中某个Topic的偏移量

    本文介绍如何手动跟新zookeeper中的偏移量.我们在使用kafka的过程中,有时候需要通过修改偏移量来进行重新消费.我们都知道offsets是记录在zookeeper中的,所以我们想修改offse ...