当前位置: 首页 > news >正文

宁夏住房和建设厅官方网站/新app推广去哪里找

宁夏住房和建设厅官方网站,新app推广去哪里找,手机网页制作工具下载,室内设计公司logo一、socket发送数据基本流程 图示 流程解释 上述流程,为基本的收发数据流程,并且使用ack来解决粘包问题, 并且,最后通过获取server发送的“get file success”来给予用户友好展示 二、实际应用问题: 问题表现&#xff…

 



一、socket发送数据基本流程
  • 图示
    • 流程解释
      • 上述流程,为基本的收发数据流程,并且使用ack来解决粘包问题
      • 并且,最后通过获取server发送的“get file success”来给予用户友好展示

二、实际应用问题:
  • 问题表现:
    • client已经接收了完成了所有文件数据,但且还处于阻塞状态,即:收不到"get file success"
  • 问题排查:
    • 查看 client 端收到的文件,发现 "get file success" 这个消息,被追加在了文件末尾!
    • 查看 client 端主要代码:
with open(file, 'wb') as f1:
recv_size = 0
while recv_size < file_size:
data = self.sk.recv(1024)
recv_size += len(data)
f1.write(data)

print(self.sk.recv(1024).decode())  # 打印友好信息
print('send_file:{} md5_sum:{}'.format(file_size, file_sum), 'recv_file:{} md5_sum:{}'.format(recv_size, md5_sum), sep='\n')  # 打印文件md5值
  • 原因总结:
    • 因为client是通过 sk.recv(1024)来进行接受数据,而1024表示,最多每次接受1024字节,
    • 当文件本身所有数据小于1024时候,那么,最后的"get file success"友好信息也会被client一次性接受,表现在data = self.sk.recv(1024)
    • 即此时:
      • data包涵了文件本身的所有数据+"友好信息"数据,
      • 而当代码走到print(self.sk.recv(1024).decode())时,便会阻塞(实际上server已经将友好信息发送,只不过因为1024的原因,当做了文件本身数据)
  • 解决方式:
    • 1、更改1024为更小单位,比如recv(10)
      • 接收次数变得更多,且若只要是文件,则一定有余数(文件大小 / 10),比如到最后剩余3字节没有接受完,而 3< 10,所以这3字节还是会和“友好信息”混在一起
    • 2、不发送友好信息
      • 在client端直接判断 recv_data_size 和 send_data_size,并计算文件哈希值,来判断文件是否完整,
      • 本就该如此做,即删掉两端关于“友好信息”的交互代码












 

转载于:https://www.cnblogs.com/qiaogy/p/5845409.html

http://www.lbrq.cn/news/1090765.html

相关文章:

  • 那个网站专门做婚纱相册/网络推广自学
  • python做网站缺点/seo课堂
  • 长沙个人做网站排名/优化防控措施
  • 网站建设入门/如何做好一个网站
  • 劳力士手表价格及图片 官方网站/亚马逊跨境电商
  • 特效素材网站/什么样的人适合做策划
  • 网站单子/找索引擎seo
  • 中职网站建设与管理/网络营销介绍
  • 广州网站建设广州网络推广公司好/国外网站推广平台有哪些?
  • 找别人做网站/如何做谷歌seo推广
  • 深圳外包网站制作公司/网络推广推广外包服务
  • 长沙网站开发湖南微联讯点不错/做公司网站
  • 自己如何做公司网站/潍坊seo外包平台
  • 网站建设哪个部门管理/百度搜索引擎下载
  • 事业单位建设网站/百度seo关键词工具
  • 网站 网络架构/seo课程排行榜
  • 百度资料怎么做网站/电子商务网站建设教程
  • 做漫画网站/互联网推广引流公司
  • 如何做网站优化推广/百度手机浏览器下载
  • 可靠的政府网站建设公司/销售crm客户管理系统
  • 怎么做提高网站排名/电商培训班一般多少钱一个月
  • 凌云网招聘信息/免费seo快速排名工具
  • 100个最好的微信小程序/西安seo优化推广
  • 做一家视频网站/免费html网站制作成品
  • 做网站的收入/如何seo推广
  • 用v9做网站优化/友情链接网
  • 赤城网站建设/附子seo教程
  • 门户型网站特点/网站推广多少钱一年
  • 集团网站建设费用/四年级小新闻50字左右
  • 网站上360 旋转的图是怎么做的/怎么做网站关键词优化
  • 消息缓存系统
  • 机器学习——随机森林算法分类问题案例解析(sklearn)
  • Flutter 提取图像主色调 ColorScheme.fromImageProvider
  • 网安-中间件-Redis未授权访问漏洞
  • AI使能的SVD算子:基于深度学习的矩阵分解方法
  • Redis 缓存机制详解:原理、问题与最佳实践