Python socket 编程理解
HTTP 、Socket 、 TCP
七层OSI网络模型,这里只介绍五层常用网络模型,想知道全部七层详细内容自行查询。
- 应用层 :HTTP FTP SMTP DNS Telnet
- 传输层 :TCP UDP
- 网络层 :IP ICMP
- 数据链路层 :ARP等
- 物理层 :1000BASE-SX等
socket是用来连接传输层和应用层,使得应用层可以直接和传输层做交互。
socket本身不属于网络协议,socket可以直接操控tcp,这样可以实现自己的应用层协议,例如聊天室就是,socket可以直接和tcp打交道,实现与http同级别的网络协议。
上图左侧是server端,右侧是client端
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java类初始化和实例化
Java有以下几种方式创建类对象: 利用new关键字 利用反射Class.newInstance 利用Constructor.newIntance(相比Class.newInstance多了有参和私有构造函数) 利用Cloneable/Object.clone() 利用反序列化 Constructor.newInstance不支持带原型入参的构造函数。 调用Class.getConstructor()方法获取无参默认构造Constructor时,如果用户自定义了有参构造函数,因为此时java并不会生成默认构造函数,所以Class.getConstructor()方法因找不到无参默认构造函数而抛异常。此时需要显示定义默认构造函数: // Initialization.java public class Initialization { private int age = 2000; private int salary = age + 1000; private String name = "Tom"; public Initialization() { print(); } publi...
- 下一篇
长连接 、短连接、心跳机制与断线重连
概述 可承遇到,不知什么原因,一个夜晚,机房中,大片的远程调用连接断开。 第二天早上,用户访问高峰,大部分服务器都在获取连接,造成大片网络阻塞。 服务崩溃,惨不忍睹的景象。 本文将从长连接和短连接的概念切入,再到长连接与短连接的区别,以及应用场景,引出心跳机制和断线重连,给出代码实现。 从原理到实践杜绝此类现象。 短连接 概念 client与server通过三次握手建立连接,client发送请求消息,server返回响应,一次连接就完成了。 这时候双方任意都可以发起close操作,不过一般都是client先发起close操作。上述可知,短连接一般只会在 client/server间传递一次请求操作。 短连接的优缺点 管理起来比较简单,存在的连接都是有用的连接,不需要额外的控制手段。 使用场景 通常浏览器访问服务器的时候就是短连接。 对于服务端来说,长连接会耗费服务端的资源,而且用户用浏览器访问服务端相对而言不是很频繁的 如果有几十万,上百万的连接,服务端的压力会非常大,甚至会崩溃。 所以对于并发量大,请求频率低的,建议使用短连接。 长连接 什么是长连接 client向server发起...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8安装Docker,最新的服务器搭配容器使用
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7设置SWAP分区,小内存服务器的救世主