web服务器
小哦--
努力努力再努力
展开
-
web服务器--http协议
协议:规定。约束。1原创 2019-05-31 11:23:39 · 239 阅读 · 0 评论 -
web服务器--正则表达式 re.match
怎么看用户输入的内容是我所需要的规范,比如用户注册----正则表达式在python中需要正则表达式对字符串进行匹配时,可以使用一个模块,re检测需要处理的字符串是不是符合我的正则表达式,如果有返回值说明满足,并且会形成一个新的对象。那如果不满足呢?不满足时没有返回值,那么我怎么样能让 h和H都能符合规范,怎么办?h和H都满足我的正则表达式。代替一个数字: \d如果把返回值赋...原创 2019-05-29 10:38:19 · 190 阅读 · 0 评论 -
web服务器--正则表达式-re的高级用法:
match :从头开始匹配,一般用于较短的字符串search:搜索出所需要的内容例:有一个问题,搜索到第一个符合的结果就停止了。那怎么搜索全部呢------findallsub 将匹配到的数据进行替换sub 还有一个特殊的功能,就是能用一个函数去替换,比如我想让所有的数据都加1:split 根据匹配进行切割字符串,并返回一个列表。例题:...原创 2019-05-29 14:42:22 · 131 阅读 · 0 评论 -
web服务器--网络通信-- tcp/ip协议
网络通信过程两台电脑之间的通信除了要知道Ip地址,还要设置一些规则、约定。统称为tcp-ip协议。什么是协议?我们之前学习过传输层的 tcp 和udp协议,除此之外还有很多协议。互联网协议包含了上百种协议,但是最重要的两个协议是TCP和IP协议,所以协议简称为tcp-ip协议链路层--网络层--传输层--应用层接发一个数据其实是很复杂的事情,需要很多协议来配合使用,上面就...原创 2019-06-12 17:23:24 · 773 阅读 · 0 评论 -
web服务器--简单web服务器实现
三次握手:一般情况下是浏览器先发送请求数据,c-ssyn 请求ack 应答三次握手成功后,才开始进行通讯数据的收发。四次挥手:一般情况下是客户端先关闭,给浏览器发送关闭信息。如果浏览器发送了关闭信息,但是服务器没有回过去,(较慢),那么浏览器一直发是不是就会有问题?所以会等待 2MSL的时间。一般为2-5分钟。MSL 是一个数据包在网络传输中最大的存活时间。三次握手:保证双方准备...原创 2019-06-03 10:09:58 · 329 阅读 · 0 评论 -
web服务器--并发web服务器实现--多进程(进程 线程 协程)
请求和发送的数据都是有header 和 body 的,但是我们之前看的请求的数据似乎只有header,那是因为以GET 开头的一般没有body 。但是如果以其他开头,一般就有:之前我们实现的服务器是为一个用户服务,再为另一个用户服务,那么我们之前学过多任务(进程 线程 协程),这里用多任务来实现服务器:进程:多进程,主进程和子进程之间资源不是共享的,子进程复制一份主进程,所以 主程序中,要把...原创 2019-06-03 11:14:42 · 985 阅读 · 0 评论 -
web服务器--并发web服务器实现--单进程和单线程实现非堵塞的原理
之前实现了多进程 多线程 以及协程。其实多任务是为了解决阻塞问题。那么单进程就不能解决堵塞问题吗?答案是可以的:import socketimport timetcp_service_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)tcp_service_socket.bind(('',7890))tcp_servi...原创 2019-06-04 09:30:50 · 822 阅读 · 0 评论 -
web服务器--并发web服务器实现-epoll
在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。epoll 是当今 linux 系统采用的方式,一般服务器都是用 epoll 来实现的。epoll 是一种方案,这种方案不使用多进程多线程多协程,而是使用单进程单线程来实现高并发。那我们之前写的单进程单线程非阻塞的程序和epoll有什么区别呢?我们之前写的程序是建...原创 2019-06-12 13:58:39 · 441 阅读 · 0 评论