Linux
文章平均质量分 93
liunx
猎户星座。
花有重开日,人无再少年。
展开
-
零拷贝简介
传统IO 在开始谈零拷贝之前,首先要对传统的IO方式有一个概念。 基于传统的IO方式,底层实际上通过调用read和write来实现。 通过read把数据从硬盘读取到内核缓冲区,再复制到用户缓冲区;然后再通过write写入到socket缓冲区,最后写入网卡设备。 整个过程发生了4次用户态和内核态的上下文切换和4次拷贝,具体流程如下: 用户进程通过read方法向操作系统发起调用,此时上下文从用户态转向内核态 DMA控制器把数据从硬盘中拷贝到读缓冲区 CPU把读缓冲区数据拷贝到应用缓冲区,上下文转载 2021-04-03 20:14:52 · 210 阅读 · 0 评论 -
Nginx之进程模型
Nginx 的进程模型 Nginx 服务器,正常运行过程中: 多进程:一个 Master 进程、多个 Worker 进程 Master 进程:管理 Worker 进程 对外接口:接收外部的操作(信号) 对内转发:根据外部的操作的不同,通过信号管理 Worker 监控:监控 worker 进程的运行状态,worker 进程异常终止后,自动重启 worker 进程 Worker 进程:所有 Worker 进程都是平等的 实际处理:网络请求,由 Worker 进程处理; Worker 进程数转载 2021-02-24 13:45:33 · 1002 阅读 · 0 评论 -
Linux之IO模型/IO复用模型
select、poll、epoll都是I/O多路复用的机制。I/O多路复用就是通过一种机制,一个进程可以监视多个文件描述符,一旦某个描述符就绪(读就绪或写就绪),能够通知程序进行相应的读写操作 。 但是,select,poll,epoll本质还是同步I/O(I/O多路复用本身就是同步IO)的范畴,因为它们都需要在读写事件就绪后线程自己进行读写,读写的过程阻塞的。而异步I/O的实现是系统会把负责把数据从内核空间拷贝到用户空间,无需线程自己再进行阻塞的读写,内核已经准备完成。 一、Select机制 API转载 2021-01-23 22:40:14 · 268 阅读 · 0 评论 -
Linux之开放端口
针对Centos7版本 开放端口 firewall-cmd --zone=public --add-port=80/tcp --permanent 重启防火墙 firewall-cmd --reload 查看已开放的端口 firewall-cmd --list-ports原创 2018-09-26 21:04:09 · 224 阅读 · 0 评论 -
Linux之FTP
1、安装并启动 1.1 安装 vsftpd 使用 yum 安装 vsftpd yum install -y vsftpd 1.2 启动 vsftpd 安装完成后,启动 FTP 服务: service vsftpd start 启动后,可以看到系统已经监听了 21 端口: lsof -i:21 1.3 开放21端口 2、配置 2.1 了解 vsftpd配置 vsftpd 的配...原创 2018-09-27 11:14:30 · 154 阅读 · 0 评论 -
Linux之项目启动脚本
start.sh #! /bin/bash moduleName="TestApp" pidPath="./$moduleName-tpid" rm -f $pidPath JAVA_OPTIONS="-XX:+HeapDumpOnOutOfMemoryError " JAVA_OPTIONS="$JAVA_OPTIONS -XX:HeapDumpPath=./logs/heapdum...原创 2019-01-19 11:04:42 · 315 阅读 · 0 评论 -
Linux之常用命令
文件目录基本操作 ls 命令用来显示目标列表,在Linux中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。常用选项: ls(选项)(参数) -a 显示所有档案及目录(ls默认不会列出隐藏文件) -l 所有输出信息用单列格式输出,不输出为多列 效果如图: cd 用来切换工作目录至dirname。 其中dirname表示法可为绝对路径或相对路径。若目录...原创 2019-01-22 15:17:01 · 210 阅读 · 0 评论