服务器开发
木瓜小少年
追求高效率,解放自己。
展开
-
java项目测试环境搭建
JDK安装在/usr/local目录下创建jdk目录 上传jdk-8u161-linux-x64.rpm到/usr/local/jdk目录下 进入linux切换到/usr/local/local/jdk目录 安装jdk:rpm -ivh jdk-8u161-linux-x64.rpm 检查是否安装成功:java -versionTomcat安装War包部署需要tomcat...原创 2019-03-06 13:45:26 · 5727 阅读 · 0 评论 -
Web静态服务器-1-显示固定的页面
重点:在拼接请求头时,不要使用 r 去转义!!!血泪教训,重要的事情说三遍!!!#coding=utf-8import socketdef handle_client(client_socket): "为一个客户端进行服务" recv_data = client_socket.recv(1024).decode("utf-8") request_header...原创 2019-05-21 23:39:45 · 171 阅读 · 0 评论 -
Web静态服务器-2-显示需要的页面
#coding=utf-8import socketimport redef handle_client(client_socket): "为一个客户端进行服务" recv_data = client_socket.recv(1024).decode('utf-8', errors="ignore") request_header_lines = recv...原创 2019-05-21 23:49:50 · 96 阅读 · 0 评论 -
Web静态服务器-3-多进程
#coding=utf-8import socketimport reimport multiprocessingclass WSGIServer(object): def __init__(self, server_address): # 创建一个tcp套接字 self.listen_socket = socket.socket(socke...原创 2019-05-21 23:53:04 · 119 阅读 · 0 评论 -
Web静态服务器-4-多线程
#coding=utf-8import socketimport reimport threadingclass WSGIServer(object): def __init__(self, server_address): # 创建一个tcp套接字 self.listen_socket = socket.socket(socket.AF_I...原创 2019-05-21 23:54:00 · 126 阅读 · 0 评论 -
Web静态服务器-5-非堵塞模式
单进程非堵塞 模型#coding=utf-8from socket import *import time# 用来存储所有的新链接的socketg_socket_list = list()def main(): server_socket = socket(AF_INET, SOCK_STREAM) server_socket.setsockopt(SOL...原创 2019-05-21 23:57:48 · 108 阅读 · 0 评论 -
Web静态服务器-6-epoll
IO 多路复用就是我们说的select,poll,epoll,有些地方也称这种IO方式为event driven IO。select/epoll的好处就在于单个process就可以同时处理多个网络连接的IO。它的基本原理就是select,poll,epoll这个function会不断的轮询所负责的所有socket,当某个socket有数据到达了,就通知用户进程。epoll简单模型...原创 2019-05-22 00:02:11 · 114 阅读 · 0 评论 -
Web静态服务器-7-gevent版
from gevent import monkeyimport geventimport socketimport sysimport remonkey.patch_all()class WSGIServer(object): """定义一个WSGI服务器的类""" def __init__(self, port, documents_root): ...原创 2019-05-22 00:03:56 · 132 阅读 · 0 评论