lamp服务器个人理解
来源:互联网 发布:java编程思想4 pdf 编辑:程序博客网 时间:2024/06/11 14:19
网络请求、响应请求原理
1、请求
浏览器—>url—>OSI包装数据(tcp握手)—>局域网—>广域网
2、响应请求
ip—>DNS—>代理服务器—>广域网—>SELinux权限—>iptables—>局域网—>网卡(mac地址)—>内核(因为硬件只有内核能调用)—>apache(用户进程)—>cgi—>FastCGI(php-fpm)—>php—>mysql
OSI七层协议
1、简化为:数据层—>传输层(tcp协议)—>物理层(数据1、0转化为比特流,即电流)
2、传输层tcp握手(三次握手四次断开)
a) 握手:Client请求连接,Server确定,Client连接
b) 断开:Client请求断开,Server断开接收,Server断开发送,Client断开
cpu
1、cpu分为单核、双核、四核,运算机制把每一核模仿成两个。单核即双核,双核即四核,
每一核运算一个线程。
2、cpu环分四环,0、1、2、3,系统内核调用在0 Ring(开关机,进程线程调用管理),用户进程在3 Ring
Linux操作系统内核
1、内核调用一些特有指令(开关机,进程调用)
2、操作硬件
Apache
1、cgi识别文件(开发语言,例如java、net、php)
2、Apache根据用户请求调用php分三种
a)php作为Apache的内置模块
b)通过cgi方式把请求分配给php,这种方式的php调用为单进程,一个请求为一个线 程
c)通过cgi和FastCGI结合
FastCGI(php-fpm)
1、分析apache请求,一个请求一个php进程
2、php-fpm管理每个进程
php分为三个模块
1、php内核,接受apache过来的请求,分析代码,转成opcode(类似二进制)
2、zend引擎,运行opcode,返回html给内核,内核返回给apache
3、拓展模块,例如mysql
mysql
1、mysql是客户端,mysqld是服务器端,启用时用mysqld start
2、mysql增删改
a) 内核先写入内存缓存,断电会丢失
b) 缓存同步到mysql缓存,断电会丢失(mysql缓存是为了并发同样请求)
c) mysql缓存同步到二进制日志
d) 二进制日志写入数据库
3、备份可以分表单独备份
- lamp服务器个人理解
- Asp.Net 服务器控件的个人理解
- 对于Oauth2的个人理解,服务器篇
- LAMP服务器安装脚本
- 配置LAMP服务器
- 搭载lamp服务器
- ubuntu安装LAMP服务器
- ubuntu安装LAMP服务器
- LAMP 服务器安装配置
- LAMP服务器安装
- LAMP建立web服务器
- lamp服务器搭建
- lamp服务器搭建问题
- linux服务器部署lamp
- 搭建LAMP服务器环境
- LAMP服务器优化---Nginx
- 用树莓派建LAMP+WordPress服务器
- 个人理解
- 在Visual Studio 2008补全代码功能
- spring+quartz实现定时任务
- JQuery简介
- 非阻塞式connect的Windows实现
- mysql忘记root密码怎么办?重设Mysql密码的方法
- lamp服务器个人理解
- 十、类加载过程
- Lua实现游戏震屏效果
- mapduce中自定义分组
- 异常解决 java.io.FileNotFoundException: class path resource [spring/springmvc.xml]
- 第三十二讲项目1-输出星号(1)
- java 父类引用指向子类对象---动态绑定之易错点详解
- 为程序界面添加滑动条
- ScrollView嵌套WebView冲突解决方法