Lamp架构从入门到精通

这篇具有很好参考价值的文章主要介绍了Lamp架构从入门到精通。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

系列文章目录

lnmp架构

一、源码编译

Nginx web 7 proxy cdn(cache)
www.nginx.com官网 www.nginx.org 下载要下载稳定版本Stable
阿里发行的版本Tengine(修改后的Nginx,二次开发)
源码编译可以灵活定制你需要的功能相比较rpm包安装
源码编译三部曲:
configure (这个是个脚本,gnumake)
make
make install
camke有缓存(有安装进度),gnumake没有缓存,每次都会重新编译

configure(检测预编译环境是否可行)

./configure --help 查看编译的功能模板
如果不指定安装路径一般安装在/usr/local 配置文件放在/usr/local/etc 二进制程序放在 /usr/local/bin(在系统的环境变量里面,echo $PATH)
指定安装路径比较好,以后备份删除修改都方便查找 --prefix=/usr/local/nginx
–with默认不编译,想要编译这个模板就加入–with
–without默认编译,去掉这个功能,就–without
缺少xxx library 在系统一般是xxx-devel(开发包),不是的话yum search找下
编译成功后,会把你之前写的参数写入到Makefile中,执行make的时候回读取当前的Makefile
configure没有生成Makefile的话,make也无法执行

make

编译时间与源代码量和机器性能有关
把源码编译成二进制程序

make install

make install 会把编译好的二进制程序、配置文件等,拷贝到指定的位置/usr/local/nginx,在修改nginx配置的时候要在/usr/loacl/nginx里面的conf修改而不是源码包里面的conf修改
在make install安装完后,可以回收到源码包
源码包/objs
有个绿色的文件nginx(编译好的二进制程序)
Lamp架构从入门到精通,lnmp架构,架构
在make install的时候会把源码里面拷贝到这个路径
Lamp架构从入门到精通,lnmp架构,架构
在源码包里面有个conf这里面是它的配置
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构

在安装路径,二进制程序在sbin目录里面

Lamp架构从入门到精通,lnmp架构,架构

希望让其被系统环境识别

Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
在运行后,它会产生临时的目录

Lamp架构从入门到精通,lnmp架构,架构

优化关闭Debug

传参(相当于kill)
Lamp架构从入门到精通,lnmp架构,架构
由于c语言编译会产生很多的临时文件,所以清理
Lamp架构从入门到精通,lnmp架构,架构
为了更纯净的,可以删掉,重新解压一个tar包

Lamp架构从入门到精通,lnmp架构,架构
关闭其debug
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
然后继续configure make make install
优化成功
Lamp架构从入门到精通,lnmp架构,架构

二、 nginx负载均衡

ps aux 查到Nginx
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
变更conf文件/usr/local/nginx/conf
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
ps aux
Lamp架构从入门到精通,lnmp架构,架构/usr/local/nginx conf里面这些是gobal
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
在http里加的参数会直接作用里面所有的server
定义负载均衡器名字westos
Lamp架构从入门到精通,lnmp架构,架构
location / 当访问/目录的时候
proxy_pass 反向代理http://westos(负载均衡器的名字)
反向代理,负载均衡加速
反向代理,客户端不需要任何操作,代理服务器帮忙
正向代理,客户端需要设置代理服务器(网游和翻墙)
Lamp架构从入门到精通,lnmp架构,架构
检测语法-t,没有问题就可以刷新服务了

Lamp架构从入门到精通,lnmp架构,架构
给结点2和结点3开启Httpd服务
http报错5开头一般是服务端有问题,百度直接搜索HTTP状态码
Lamp架构从入门到精通,lnmp架构,架构

三、nginx的高并发

修改并发到65535,一个进程并发65535

Lamp架构从入门到精通,lnmp架构,架构

nginx work数量的设定

work数量和你cpu数量是相关的,几个cpu几个work

Lamp架构从入门到精通,lnmp架构,架构

根据cpu数量自动判断几个work

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

nginx work进程与cpu的静态绑定

01表示第一个cpu核心,10表示第二个cpu核心
把work的进程和cpu进行静态的绑定,这样可以大量避免cpu上下文切换带来的损耗

Lamp架构从入门到精通,lnmp架构,架构
具体更多用法查看Nginx work_processes参数

压力测试

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构

httpd自带的ab压测工具 -c 1 一个并发
Lamp架构从入门到精通,lnmp架构,架构
没有请求失败的,每s速度8000
Lamp架构从入门到精通,lnmp架构,架构
压力都在server2 server3上去了
由于是反向代理,所以吞吐量(流量要除以2)
netstat-antlpe

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
大概用了10s左右
Lamp架构从入门到精通,lnmp架构,架构

nginx高并发

Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构

修改操作系统的限制

Lamp架构从入门到精通,lnmp架构,架构
要添加这个,要不然操作系统默认是1024,突破不了,65535
即改即生效
Lamp架构从入门到精通,lnmp架构,架构
速度变快了
Lamp架构从入门到精通,lnmp架构,架构

四、nginx技术阅读文档

阅读官方文档 https://docs.nginx.com/nginx/,学习
Lamp架构从入门到精通,lnmp架构,架构

五、nginx权重以及nginx的健康检测

设置权重 https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/
Lamp架构从入门到精通,lnmp架构,架构
server2接受的请求就变多了
Lamp架构从入门到精通,lnmp架构,架构
设置本机的80端口,只要后端有一个服务端存活,就不会启动本机bakeup,在bakeup服务器不要放应用服务,写入此网站正在维护中

Lamp架构从入门到精通,lnmp架构,架构

关闭后端的server2和server3的httpd,它有健康监测,当后端没有服务器,便会启动自己

Lamp架构从入门到精通,lnmp架构,架构

六、nginx ip哈希负载均衡

算法,ip哈希(不支持bakeup)

Lamp架构从入门到精通,lnmp架构,架构
只要来源不变,访问服务器不变

Lamp架构从入门到精通,lnmp架构,架构
问题:client->dns->CDN(内容分发网络,用来加速,减轻后端server的压力)
client(原地址,目标地址) -> cdn(反向代理)->nginx(获取的地址时cdn的地址,很多客户端过了cdn,地址都变成cdn了)nginx变会调度到同一服务器

如果架构有缓存,不能用哈希ip算法

七、基于cookie算法的nginx负载均衡

手动下线某台机器
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
这种算法,是那台服务器负载小调度谁,但是这个服务要Nginx plus才能用,收费
Lamp架构从入门到精通,lnmp架构,架构
所以使用基于cookie的算法
希望不同客户端过cdn都能均衡,过cdn以后ip变成一样
Lamp架构从入门到精通,lnmp架构,架构
添加算法sticky
Lamp架构从入门到精通,lnmp架构,架构
Nginx服务启动不来,因为是nginx plus才能使用的,注释掉sticky

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

替代方法

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
重新编译
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
重新进入/usr/local/nginx/conf/nginx.conf
把刚才注释的sticky算法打开
Lamp架构从入门到精通,lnmp架构,架构
sticky算法,这种算法是基于浏览器的cookie来负载均衡
cookie非常小,每当客户端访问时,server端会给客户端返回一个cookie,这个值交给浏览器(浏览器要支持)(关闭浏览器会被自动清理),之后所有的请求都会带cookie过去,当cookie到服务器时候,会对应服务器内存的sasion,继续由同一个后端处理清理网页缓存后

刷都是server2
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
不能用curl命令,curl命令不支持cookie
不用原地址做哈希,用cookie来解决,即使过cdn cache都行

八、 lnmp架构

前2列是前面做的负载均衡后面是lnmp架构(电商的平台)
lamp=linux/unix/windows(操作系统) +apache/nginx/…(web服务器)+mysql/pgsql/…(数据库)+php/jsp/python…(动态语言)
通过路由器的等价路由,配合OSPF等价协议,扩展LVS
Lamp架构从入门到精通,lnmp架构,架构

九、数据库的编译

编译mysql数据库
www.mysql.com下载源码,我们需要编译
也可以下载集成好的包
Lamp架构从入门到精通,lnmp架构,架构选择源码下载
Lamp架构从入门到精通,lnmp架构,架构
下载这个,这个含有c++的boost库,要不然还要额外的下载
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

第三个版本更新表示修复bug
第二个版本更新新的功能
第一个版本变更表示大变更

编译完要占用10个G,所以/空间一定要够用
Lamp架构从入门到精通,lnmp架构,架构
里面没有configure(gmake)这个是cmake

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
pub/docs/有lamp架构的部署文档
Lamp架构从入门到精通,lnmp架构,架构
\vi因为里面很多特殊字符,用vim就不转译了
Lamp架构从入门到精通,lnmp架构,架构安装的时候从真机复制就没问题了

官方推荐创建Build目录,在这个目录里面编译
数据目录也可以挂载远程的存储区
sock没有指定默认在/tmp
数据库的字符集很重要
Lamp架构从入门到精通,lnmp架构,架构
找不到Boost库
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
写相对路径和绝对路径都行,我写的是绝对路径

Lamp架构从入门到精通,lnmp架构,架构
缺少c++编译器
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
缺少依赖性,告诉你是redhat系统,应该需要这个软件
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
由于cmake有cache文件
Lamp架构从入门到精通,lnmp架构,架构
所以
Lamp架构从入门到精通,lnmp架构,架构
继续编译,编译成功Lamp架构从入门到精通,lnmp架构,架构
有个警告
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
完全编译成功
Lamp架构从入门到精通,lnmp架构,架构
如果是在真机上面,可以make -j10,开启10cpu一块编译
但是在虚拟机就单线程make编译就行,虚拟机是2G内存,很容易内存溢出,cmake有安装进度,虚拟机可以分配7G内存,一定要给真机留够1G的内存,要不然很容器就卡死了
Lamp架构从入门到精通,lnmp架构,架构

cmake安装是有进度的

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

END

系列文章目录

lnmp2

lnmp架构图

Lamp架构从入门到精通,lnmp架构,架构

一、Mysql的初始化

将启动脚本考入/etc/init.d/下启动(init方式传统启动脚本)
Lamp架构从入门到精通,lnmp架构,架构
装了mariadb以后才会有这个文件

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
这个是Mysql的全局变量参数,在这里面配置的参数是全局生效的,并且持久化
修改mariadb的全局变量参数文件并作为Mysql的全局变量参数文件
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
包含很多Mysql数据库的配置参数

Lamp架构从入门到精通,lnmp架构,架构
Mysqld默认会读取的文件

Lamp架构从入门到精通,lnmp架构,架构
初始化参数,一个是安全的,一个是非安全的
非安全是没有给管理员加密码,你要进去以后加密码
安全的是随机生成了密码
Lamp架构从入门到精通,lnmp架构,架构
为了安全性,让mysql运行在私有用户中,不是直接在root下运行
Lamp架构从入门到精通,lnmp架构,架构
运行完以后生成一个随机密码
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
在启动以后,如果有报错,可以去改路径下去查看
Lamp架构从入门到精通,lnmp架构,架构
netstat - antlp查看到3306mysql端口已经打开了
Lamp架构从入门到精通,lnmp架构,架构
已经启动了
Lamp架构从入门到精通,lnmp架构,架构
生产环境推荐使用的安全安装
Lamp架构从入门到精通,lnmp架构,架构
将刚才生成随机密码输入,自己设置新的密码后,是否启动密码校验脚本,我选择的是No
启动密码校验脚本的话,会强制你密码的强度,字符串大小写长度等等
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
刷新数据库的认证数据表

Lamp架构从入门到精通,lnmp架构,架构
-p后面跟的是密码,进入到了数据库,warning是推荐你不要-p后面直接接入密码,这样别人history就能查到你数据库的密码,不安全使用交互式输入密码

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

二、php的源码编译

rpm 源码 自动化 容器化安装都行
可以直接去php下载php的源码
我直接在我的服务器下获取
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
yum install bzip2 -y
Lamp架构从入门到精通,lnmp架构,架构
–with-config-file是php主配置文件的目录,–enable-fpm激活faster cgi的管理器 --with-fpm-user指定Php运行的时候以什么身份运行,用Nginx当初配Nginx时候的用户,这样可以防止处理权限问题了,不指定,默认是httpd,可不加,你后面可以更改主配置文件来随时更改用户
选项越多,编译的模块依赖性就越多
–with-curl curl命令 iconv 有关图形 --with-mhash加密 --with-zlib 网页压缩 --with-openssl网页加密 --enable-mysqlnd直通数据库,5.4以后默认就会激活Mysql的nd驱动,原生的话要外挂mysql这样会外加模块,占用内存,这个是php自己的模块可以减少内存
mysqlli pdo-mysl都是通过调用mysqlnd来完成
soap是动态模块sockets网页的socket --enable-inline php的优化参数
这些参数连安装rpm包的参数都不够

Lamp架构从入门到精通,lnmp架构,架构
系统自带的php动态的包,缺什么直接安装

Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
系统优先找rpm包,所以源码编译的时候不要安装rpm包
-libsystemddevel没有

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
这个包系统不带,我从阿里云下载的
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
make 以后然后make install
Lamp架构从入门到精通,lnmp架构,架构

三、更改php的配置

默认配置目录
Lamp架构从入门到精通,lnmp架构,架构
将php变量加入用户变量中

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
将default去掉就是它的默认配置文件

Lamp架构从入门到精通,lnmp架构,架构
;代表注释,去掉该注释
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
不用变更文件,看看里面的配置
Lamp架构从入门到精通,lnmp架构,架构

监听端口
Lamp架构从入门到精通,lnmp架构,架构
进程pm最多5个,默认2个,保持一个空闲
Lamp架构从入门到精通,lnmp架构,架构
进入php源码里面拷贝所需配置文件
这是主配置文件

Lamp架构从入门到精通,lnmp架构,架构
考入源码包里面的启动脚本

Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
有两种启动方式

init方式,起名php-fpm

由于编译的使用了–sytemd使用它可以用systemctl来启动
systemd启动:

Lamp架构从入门到精通,lnmp架构,架构
没有特别具体的报错
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
错误点READ-only,百度查看
是因为启动了保护,不让在里面写入东西
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
每次修改这里的文件都需要reload一下
Lamp架构从入门到精通,lnmp架构,架构

注释掉这个
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
启动以后,需要去修改配置文件里面的时区

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
rpm包编译是cgi 无后台程序
源码是fastcgi 有后台程序,所以可以平滑加载
Lamp架构从入门到精通,lnmp架构,架构
但是后台会消耗大,所以一般会做反向代理和负载均衡
直接访问9000端口访问php意义不大

三、 做nginx和php-fpm的整合

Lamp架构从入门到精通,lnmp架构,架构
当php处理以php结尾的请求
通过fastcgi递交给后台的9000端口
Lamp架构从入门到精通,lnmp架构,架构
注释掉是因为这个文件包含了
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
路径要写自己的与官方不一样
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
nginx开机自启

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构查看php自带的内部的信息函数,通常不要让外部主机访问这个Info
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构

四、 nginx + php-fpm + mysqld的整合

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
如果数据库不在本地还可以指定远程的主机,用户还有密码
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
测试
Lamp架构从入门到精通,lnmp架构,架构
php代码写的数据库管理工具
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
权限没有问题
Lamp架构从入门到精通,lnmp架构,架构
是找不到它的首页
Lamp架构从入门到精通,lnmp架构,架构
解决方法
Lamp架构从入门到精通,lnmp架构,架构
定义默认如何找首页

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
这里的用户是数据库的用户,不是操作系统里面的用户
root和刚才进入数据库的密码
Lamp架构从入门到精通,lnmp架构,架构
目录中的other进不去

Lamp架构从入门到精通,lnmp架构,架构
php和Nginx都是nginx用户针对这个文件是other所以进不去
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

lnmp搭建完成

五、 扩充PHP模块之memcache

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
没有config
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
一定要把php源码路径的安装目录中的Bin放在全局环境中,要不然调用不了phpize
这个指令可以完成预编译环境,其实就是寻找你的动态库
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构

make make install
该模块安装在这个位置
Lamp架构从入门到精通,lnmp架构,架构php的主配置文件,php-fpm是php的管理器
Lamp架构从入门到精通,lnmp架构,架构
写一个扩展参数
Lamp架构从入门到精通,lnmp架构,架构
平滑加载,重新加载你的主配置文件
Lamp架构从入门到精通,lnmp架构,架构
-m是列出php所有模块
Lamp架构从入门到精通,lnmp架构,架构
这个是nosql数据库,做数据库的缓冲,完全运行在内存
传统的关系式数据库结构是存储结构化关系数据
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
netstat -antlpe监听端口11211端口
Lamp架构从入门到精通,lnmp架构,架构nosql数据库,完全运行在内存,默认启动会占用你本机64M的内存量,也可以修改
将数据写入你内存,读写速度快,特点不能做持久化,一重启数据就没有了,内存没有做持久化
好处快,并且降低数据库的压力
Lamp架构从入门到精通,lnmp架构,架构
连接memache

Lamp架构从入门到精通,lnmp架构,架构默认会连接你的11211端口,如果你的memache在远程你可以替换掉你的localhost
编写的就是把数据存入你的内存
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
数据存入你的内存里面了
Lamp架构从入门到精通,lnmp架构,架构
监控页面
Lamp架构从入门到精通,lnmp架构,架构

修改认证的admin和密码,不改也行
memache没有集群的概念是分布的,每个结点,对cpu没有要求,对内存有要求,所以不好的电脑多插入几个内存,可以当memache服务器
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构

Lamp架构从入门到精通,lnmp架构,架构
远程的话多加几个ip地址就行了
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
多刷几遍这个
Lamp架构从入门到精通,lnmp架构,架构
这个页面监控的是在Memache里面的命中率,就是访问example.php页面的时候就是访问的memache
缓存命中率非常高
Lamp架构从入门到精通,lnmp架构,架构
需要php什么模块就官网搜索下载然后搭建起来
下载进入安装的目录
phpize(加载php安装路径和库)
./configure源码编译三部曲

nginx高速缓存

现在(前面)搭建好的是传统的缓存策略
访问的php页面
80->9000(php-fpm管理器)->调用php进程处理->memache 该方式比Php加载到mysql模块,访问mysql(sql)磁盘,Memache(nosql)内存,访问内存快
这个架构也可以,先访问Memache,有无命中,没有这个去Mysql取,取到后再存入memache
php进程处理
Lamp架构从入门到精通,lnmp架构,架构
弊端:nginx高并发不能体现出来
因为nginx通过fastcgi这个方式递交给php后端这个方式后,生命周期由后端php来处理**(nginx的反向代理,客户端通过nginx代理到后端的php,而不是直接访问php)**
高并发可以继续处理客户端的请求,但是无法返回客户端需要的数据
由于动态,静态直接nginx给,但是动态的页面则需要到后端的数据库以及memache里面来取
Lamp架构从入门到精通,lnmp架构,架构通过压力测试
ab是http的压力测试工具
-c10并发10个,-n5000完成5000次请求
Lamp架构从入门到精通,lnmp架构,架构
每s处理2000多个请求
Lamp架构从入门到精通,lnmp架构,架构

高效缓存策略

不需要动态语言的处理,直接返回(非常快),生命周期变成nginx可以发挥好Nginx高并发的特性
Lamp架构从入门到精通,lnmp架构,架构
需要2个模块,memc(专门连接memache,也可以换成redis,也可以是别的存储,filesystem)和scrache(nginx标准模块,专门处理缓存,可以连接后端不同类型的缓存设施)
默认Nginx没有这些模块,需要到官网下载,进行编译,(麻烦,让nginx支持cookie算法,每次都要编译麻烦)
我使用另一款nginx发行版,openresty
Lamp架构从入门到精通,lnmp架构,架构
内部就是Nginx,加了lua脚本
适合敏捷的web开发,可以支持web服务器的快速扩展,如动态更新
都是基于lua,更加灵活
这个已经集成了大量的nginx模块,不用安装

Lamp架构从入门到精通,lnmp架构,架构
同样是web服务器同样是80会冲突,所以先停掉Nginx

Lamp架构从入门到精通,lnmp架构,架构
有时候服务启动不来,就是端口冲突
所以查看ps ax 和 netstat -antlp
查看有无重复启动服务,和端口冲突没

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
它的安装参数和Nginx一样,所以直接用直接nginx安装参数就行,内部就是Nginx
但是其默认安装路径就是/usr/local/openresty

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
make make install

Lamp架构从入门到精通,lnmp架构,架构
修改主配置文件
Lamp架构从入门到精通,lnmp架构,架构对照之前Nginx的主配置文件修改
我直接把/usr/local/nginx/conf/nginx.conf文件考入覆盖掉/usr/local/openresty/nginx/conf
启动openresty
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
没有问题
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构
定义后端有多少个memache,多个Memache是来负载均衡的,本机127.0.1,如果想要远程输入ip

Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构逻辑,用户访问的url,先到memache看有无该key,没有,通过fastcgi_pass递交给后端的php取,取完后返回值为200就成功,再调用srcache_store 将数据上传到memache,下次直接就可以去memache取
现在是Nginx来控制生命周期了

Lamp架构从入门到精通,lnmp架构,架构
Lamp架构从入门到精通,lnmp架构,架构Lamp架构从入门到精通,lnmp架构,架构
压力测试
Lamp架构从入门到精通,lnmp架构,架构
速度变成2w多每s处理数据
Lamp架构从入门到精通,lnmp架构,架构END

Lamp架构从入门到精通,lnmp架构,架构文章来源地址https://www.toymoban.com/news/detail-795282.html

到了这里,关于Lamp架构从入门到精通的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • lamp 架构的搭建

    php 解释动态页面 php来连接数据库 mysql 页面信息和端口信息 存放数据 apache 前端web服务器,展现页面 源码编译安装这三个服务 配置下载apache: systemctl stop firewalld 关闭安全机制,防火墙 可以一条命令:systemctl is-enabled firewalld 和 systemctl disable --now firewalld.service systemctl disable fir

    2023年04月17日
    浏览(26)
  • LAMP部署架构

    【安装 Nginx 服务】 systemctl stop firewalld systemctl disable firewalld setenforce 0 1、安装依赖包 yum -y install pcre-devel zlib-devel gcc gcc-c++ make 2、创建运行用户 useradd -M -s /sbin/nologin nginx 3、编译安装 cd /opt tar zxvf nginx-1.12.0.tar.gz -C /opt/ cd nginx-1.12.0/ ./configure --prefix=/usr/local/nginx --user=nginx

    2023年04月23日
    浏览(27)
  • LAMP架构搭建实操

    目录 一、LAMP架构概述 二、LAMP框架搭建 1.准备工作 2.部署apache 3.部署mysql 4.部署php 三、部署BBS论坛 LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括Linux操作系统

    2024年02月09日
    浏览(27)
  • LAMP架构介绍配置命令讲解

    LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括Linux操作系统,Apache网站服务器,MySQL数据库服务器,PHP网页编程语言 1.(平台) Linux 作为LAMP架构的基础,提供用于

    2024年02月11日
    浏览(31)
  • Docker入门到精通:Docker架构、镜像操作和容器操作

    本文深入探讨Docker的核心概念,包括容器化技术的演变、Docker架构、镜像与容器的操作,以及如何在Linux系统中安装和使用Docker。

    2024年02月06日
    浏览(30)
  • LAMP架构中的网站搭建

    前言:本次操作依赖于LAMP的环境已经配置完全,网站也是依赖于开发人员现有的网站包框架,实施在LAMP已搭建好的环境进行安装部署 ——创建数据库,并进行授权         ps aux                            #查看发现论坛进程的用户名是daemon cd /usr/local/httpd/htdocs/bb

    2023年04月15日
    浏览(25)
  • 详解如何使用LAMP架构搭建论坛

    LAMP架构是目前成熟的企业网站应用模式之一 ,指的是 协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境 。LAMP是一个缩写词, 具体包括Linux操作系统、Apache网站服务器、MySQL数据库服务器、PHP(或Perl、Python)网页编程语言 。 各组件名称 主要作

    2024年02月07日
    浏览(32)
  • LAMP 架构及Discuz论坛与Wordpress博客搭建

    目录 1 LAMP 配置与应用 1.1动态资源与语言 1.2 LAMP 架构的组成 1.2.1 主要功能 2 编译安装Apache http 服务 2.1 环境准备 2.1.1 关闭防火墙及selinux服务 2.1.2 安装依赖环境  2.2 安装软件包 2.2.1 解压软件包  2.2.2 移动apr包 apr-util包到安装目录中,并切换到 httpd-2.4.29目录中  ​编辑  

    2024年02月11日
    浏览(35)
  • Apache的简单介绍(LAMP架构+搭建Discuz论坛)

    Apache通常指的是Apache HTTP Server,是一个开源的、跨平台的Web服务器软件。它是目前世界上使用最广泛的Web服务器之一,也是许多网站和应用程序的核心基础。 1.2.1功能 提供http协议服务 多个虚拟主机:IP、Port、FQDN CGI:Common Gateway Interface,通用网关接口,支持动态程序 反向代理

    2024年02月11日
    浏览(40)
  • Ceph入门到精通-Aws Iam(user,role,group,policy,resource)架构图和快速入门

    -- Aws Iam(identity,user,role,group,policy,resource,)架构图和快速入门. 【官网】:Cloud Computing Services - Amazon Web Services (AWS) aws 云服务运维,devops过程中经常涉及各项服务,权限,角色的处理。 为了更好的使用各项云服务同时确保安全性,需要深入了解aws iam相关内容。 需要结合公司业务

    2024年02月12日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包