白冥 发表于 2024-4-30 16:05:18

【python】基于TCP的服务器-客户端通信系统

本帖最后由 白冥 于 2024-4-30 16:07 编辑

观前提醒,由于文件放在附件却总是上传失败,不得已把我的github链接放过来。(版主大大,不是广告!!!)

秉承则一起学习的原则,放上这段github链接:https://github.com/kitadoyao/-python-



文件概述:

[*]config.ini:配置文件,包含服务器、客户端、消息类型、指令和错误信息的配置。
[*]config.py:从config.ini读取配置信息,并定义了一些类来封装这些配置。
[*]message.py:定义了消息相关的操作,如序列化、反序列化、消息验证等。
[*]thread_manager.py:一个线程管理器,用于在后台启动和管理线程。
[*]client_socket.py:客户端socket的实现,包括初始化socket、发送消息、接收消息、处理心跳等。
[*]server_socket.py:服务器socket的实现,包括初始化socket、监听连接、接收消息、处理消息等。
[*]client.py 和 server.py:分别是客户端和服务器的主程序,负责启动和管理socket通信。

设计要点:

[*]模块化设计:代码被分为多个模块,每个模块负责不同的功能(如配置、消息处理、线程管理等),使得代码结构清晰,易于维护和扩展。
[*]配置文件使用:通过config.ini文件来管理配置信息,使得配置更加灵活,方便修改。
[*]消息验证:message.py中实现了消息的验证功能,确保接收到的消息格式正确。
[*]异常处理:在socket通信的关键部分(如发送、接收消息)加入了异常处理,增强了程序的健壮性。
[*]多线程处理:使用多线程来处理客户端的请求和服务器的事件,提高了系统的并发处理能力。

阅读顺序:

[*]从文件概述的顺序来就行

更新了:

[*]把鸽了许久的服务端部分完成了
[*]添加了广播的功能,现在可以让用户跟所有其他客户端套接字互发信息了
[*]添加了传送文件的功能,但是不是很完善
[*]配置文件里添加了Error类,现在发送不合协议的信息会发出Error警告
[*]继续细分了模块,以后可以扩展的功能将会更多


放上一张镇楼图:





Burry 发表于 2024-4-30 16:07:24

这个系统不好一点是全是英文,操作起来有点麻烦呢。

娱乐法师火布偶 发表于 2024-4-30 16:18:22

内容很硬核,有点像在看CSDN

轮回2L 发表于 2024-4-30 16:22:15

默默观看大佬之间交流ing{:6_167:}

koh 发表于 2024-4-30 16:23:51

什么叫做文件放在附件上传失败啊?!没看懂

凯诺斯 发表于 2024-4-30 16:29:00

好专业惹,这个通信系统看起来挺强大的{:3_59:}

夏漏光微 发表于 2024-4-30 16:40:07

什么东西,论坛客户端版本吗

JYYYY 发表于 2024-4-30 16:52:54

文件上传失败应该是附件太大了

cdcai 发表于 2024-4-30 17:23:56

有些人反应上传txt会出错,可以试试word

Riverlethe 发表于 2024-4-30 18:07:00

收下膝盖……好吧确实是为了回帖金币…因为真的看不懂……

勿忘我我 发表于 2024-4-30 18:10:39

完全看不懂呢 只知道TCP是应用层面的握手协议

水水水冘 发表于 2024-4-30 19:22:56

很厉害,先夸一下再说

毛茸茸兽兽 发表于 2024-4-30 19:24:56

看不懂但大受震撼.jpg泥潭很少有这类技术交流帖的欸

歧路歌 发表于 2024-4-30 20:19:04

没有明白这是用来干什么的,感觉和大佬之间已经有厚厚的屏障了{:6_194:}

thh866 发表于 2024-4-30 21:42:07

我在泥潭学编程系列{:6_194:}

黑达克 发表于 2024-4-30 22:05:50

写得好专业啊,分享github链接的话应该没有关系吧。

shasha55s 发表于 2024-4-30 22:25:06

一直想学python 但工作一直没时间 虽然听说比其他语言要简单很多 但一直摆烂:loveliness:

1047399939 发表于 2024-4-30 22:56:11

GM竟有IT类的专业帖
坛子藏龙卧虎 懒鱼瑟瑟发抖

excaliburazrael 发表于 2024-4-30 23:24:13

好硬核,完全看不懂,瑟瑟发抖,回帖蹭硬币先(

a297101660 发表于 2024-4-30 23:37:37

泥潭竟然还有技术帖呢吗。
页: [1] 2
查看完整版本: 【python】基于TCP的服务器-客户端通信系统