[TOC] 一、什么是粘包 粘包问题是所有语言中都会有的问题,因为只要使用了TCP协议,即使是通过socket编程也都会产生的问题。 注意:只有TCP有粘包现象,UDP永远不会粘包,为何,且听我娓娓道来。 首先需要掌握一个socket收发消息的原理 发送端可以是一K一K地发送数据,而接收端的应用程序 ...
分类:
其他好文 时间:
2019-09-11 19:49:30
阅读次数:
83
消息队列是最古老的中间件之一,从系统之间有通信需求开始,就自然产生了消息队列。但是给消息队列下一个准确的定义却不太容易。我们知道,消息队列的主要功能就是收发消息,但是它的作用不仅仅只是解决应用之间的通信问题这么简单。 我们举个例子说明一下消息队列的作用。话说小袁是一家巧克力作坊的老板,生产出美味的巧 ...
分类:
其他好文 时间:
2019-08-25 18:19:27
阅读次数:
90
复习 1.黏包现象 粘包现象的成因 : tcp协议的特点,面向流的,为了保证可靠传输,所以有很多优化的机制。 无边界 所有在连接建立的基础上传递的数据之间没有界限。 收发消息很有可能不完全相等。 缓存机制,导致没发过去的消息会在发送端缓存,没接收完的消息会在接收端缓存。 解决 : 给应用层定制协议 ...
分类:
编程语言 时间:
2019-08-17 17:42:16
阅读次数:
77
数据库之mysql 本质就是一款基于网络通信的应用软件 任何基于网络通信的软件底层都是socket 服务端 基于socket通信 收发消息 sql语句(是公共的标准) 客户端 基于socket通信 收发消息 sql语句 ps:mysql 不单单是支持mysql的客户端来操作 也是支持其他的编程语言直 ...
分类:
数据库 时间:
2019-08-16 20:27:15
阅读次数:
125
一、Web框架本质 所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端 所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端 二、Web框架功能 socket收发消息 —— wsgiref(测试)、uwsgi(线上) 根据 ...
分类:
Web程序 时间:
2019-08-09 19:08:27
阅读次数:
98
http协议介绍: http协议对收发消息的格式要求 每个http请求和响应都遵循相同的格式,一个http包含header和body两部分,body是可选的,http响应的header其中有一个content-type表明响应的内容格式。例如text/html表示html网页 http get请求格 ...
分类:
Web程序 时间:
2019-06-30 18:43:54
阅读次数:
178
[TOC] 什么是粘包? 注意:只有TCP有粘包现象,UDP永远不会粘包,为何,且听我娓娓道来。 首先需要掌握一个socket收发消息的原理 发送端可以是一K一K地发送数据,而接收端的应用程序可以两K两K地提走数据,当然也有可能一次提走3K或6K数据,或者一次只提走几个字节的数据,也就是说,应用程序 ...
分类:
其他好文 时间:
2019-06-16 14:09:53
阅读次数:
122
tcp套接字和udp套接字编程区别 1.流式套接字是以字节流方式传输数据,数据报套接字以数据报形式传输 2.tcp套接字会有粘包,udp套接字有消息边界不会粘包 3.tcp套接字保证消息的完整性,udp套接字则不能 4.tcp套接字依赖listen accept建立连接才能收发消息,udp套接字则不 ...
分类:
编程语言 时间:
2019-06-07 21:00:12
阅读次数:
107
recv是用户态的应用程序发起的 队列:是先进先出,吃了拉 队栈:是先进后出,吃了吐 输入空重新输入用continue import socket phone=socket.socket(socket.AF_INET,socket.SOCK_STREAM) phone.bind(('192.168. ...
分类:
其他好文 时间:
2019-06-04 00:01:42
阅读次数:
127
from socket import * 不用每次调用加socket tcp_server=socket(AF_INET,SOCK_STREAM) 收发消息是字节格式 import socket phone=socket.socket(socket.AF_INET,socket.SOCK_STREA ...
分类:
其他好文 时间:
2019-06-03 23:43:52
阅读次数:
137