- swoole
- workman -》 getwaywork
- websocket
| 名称 | 使用协议 | 用途 | 端口号 | 底层语言 | 其他 |
|---|---|---|---|---|---|
| MQTT | |||||
| WebSocket | WebSocket 是为了满足基于 Web 的日益增长的实时通信需求而产生的 | ||||
| Socket | 工作在 OSI 模型会话层(第5层) TCP 或 UDP | Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式 | C | ||
| Swoole | |||||
| Workerman | 长链接、支持Websocket、HTTP、WSS、HTTPS等通讯协议 | 即时通讯类、物联网类(打印机通讯、单片机)、游戏服务器类 | php容器 | 一个更底层更通用的服务框架 | |
| GatewayWorker | TCP长连接 | workerman基础上进行封装 app推送服务端、即时IM服务端、游戏服务端、物联网、智能家居 | php |
http请求方法 80端口
post
get
put
delete
connect HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器
options 返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性
trace [treɪs] 回显服务器收到的请求,主要用于测试或诊断
head 向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息
https://www.cnblogs.com/weibanggang/p/9454581.html
请求响应过程
客户端连接到Web服务器->发送Http请求->服务器接受请求并返回HTTP响应->释放连接TCP连接->客户端浏览器解析HTML 内容
mqtt协议
面向主题(topic)的消息广播协议 

https 443端口
TCP/IP | UDP
osi网络七层模型
应用层、表示层、会话层、传输层、网络层、链路层、物理层
socket,tcp,http 三者之间的区别和原理
不同的 TCP/IP 和其他的协议在最初 OSI 模型中的位置
| 7 | 应用层 :HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP
| 6 | 表示层:XDR、ASN.1、SMB、AFP、NCP
| 5 | 会话层 :ASAP、TLS、SSH、ISO 8327 / CCITT X.225、RPC、NetBIOS、ASP、Winsock、BSD sockets
| 4 | 传输层 :TCP、UDP、RTP、SCTP、SPX、ATP、IL
| 3 | 网络层 : IP、ICMP、IGMP、IPX、BGP、OSPF、RIP、IGRP、EIGRP、ARP、RARP、 X.25
| 2 | 数据链路层 :以太网、令牌环、HDLC、帧中继、ISDN、ATM、IEEE 802.11、FDDI、PPP
| 1 | 物理层 :线路、无线电、光纤、信鸽
为什么Tcp连接是三次,挥手是四次#
在Tcp连接中,服务端的SYN和ACK向客户端发送是一次性发送的,而在断开连接的过程中,B端向A端发送的ACK和FIN是分两次发送的。因为在B端接收到A端的FIN后,B端可能还有数据要传输,所以先发送ACK,等B端处理完自己的事情后就可以发送FIN断开连接了。
TCP/IP 连接
TCP 协议可以对上层网络提供接口,使上层网络数据的传输建立在 “无差别” 的网络之上。
建立起一个 TCP 连接需要经过三次握手
第一次握手:客户端发送 syn 包 (syn=j) 到服务器,并进入 SYN_SEND 状态,等待服务器确认;
第二次握手:服务器收到 syn 包,必须确认客户的 SYN(ack=j+1),同时自己也发送一个 SYN 包(syn=k),即 SYN+ACK 包,此时服务器进入 SYN_RECV 状态;
第三次握手:客户端收到服务器的 SYN+ACK 包,向服务器发送确认包 ACK (ack=k+1),此包发送完毕,客户端和服务器进入 ESTABLISHED 状态,完成三次握手
握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP 连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开 TCP 连接的请求,断开过程需要经过 “四次握手”(过程就不细写了,就是服务器和客户端交互,最终确定断开).
HTTP中GET与POST的区别,注意最后一条#
GET在浏览器回退时是无害的,而POST会再次提交请求。
GET产生的URL地址可以被Bookmark,而POST不可以。
GET请求会被浏览器主动cache,而POST不会,除非手动设置。
GET请求只能进行url编码,而POST支持多种编码方式。
GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
GET请求在URL中传送的参数是有长度限制的,而POST没有。
对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
GET参数通过URL传递,POST放在Request body中。
GET产生一个TCP数据包,POST产生两个TCP数据包。
