LNMP架构介绍、MySQL安装、PHP安装、Nginx介绍

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
Error: No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:578343
    at h (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:379364)
    at Generator.<anonymous> (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:380687)
    at Generator.next (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:379774)
    at Pe (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:491844)
    at a (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:492048)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:492109
    at new Promise (<anonymous>)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:491988
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:578533
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
Error: No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:578343
    at h (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:379364)
    at Generator.<anonymous> (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:380687)
    at Generator.next (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:379774)
    at Pe (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:491844)
    at a (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:492048)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:492109
    at new Promise (<anonymous>)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:491988
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:578533
应用型负载均衡 ALB,每月750个小时 15LCU
No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
Error: No entry or manifest in @ali/alfa-aliyundotcom-free-widget-goods-card
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:578343
    at h (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:379364)
    at Generator.<anonymous> (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:380687)
    at Generator.next (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:379774)
    at Pe (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:491844)
    at a (https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:492048)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:492109
    at new Promise (<anonymous>)
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:491988
    at https://g.alicdn.com/aliyun/developer-aliyun-com-fe/2.8.49/scripts/articleDetail.js:1:578533
简介:

LNMP架构介绍

    LNMP:linux+nginx+mysql+php的架构;php的动态处理交给php-fpm(127.0.0.1:9000),静态处理直接由nginx处理


工作模式:

9ceb820b6a9fd7668bfde054c4744c55.png-wh_

1、在lamp中php作为独立的服务(php-fpm)存在

2、nginx支持高并发,动态请求转给php-fpm


MySQL安装

请查看:http://jacksoner.blog.51cto.com/5802843/1979858


PHP安装(php-fpm)

1、[root@centos7 package]# wget http://cn2.php.net/distributions/php-5.6.30.tar.gz

2、[root@centos7 package]# tar zxf php-5.6.30.tar.gz

[root@centos7 package]# useradd -s /sbin/nologin php-fpm

[root@centos7 php-5.6.30]# yum install  -y  gcc gcc-c++ libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel freetype libmcrypt-devel

[root@centos7 package]# cd php-5.6.30

[root@centos7 php-5.6.30]# make clean

[root@centos7 php-5.6.30]# ./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php-fpm/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --with-pear --with-curl  --with-openssl

[root@centos7 php-5.6.30]# make && make install

[root@centos7 php-5.6.30]# echo $?

0

[root@centos7 php-5.6.30]# cp php.ini-production /usr/local/php-fpm/etc/php.ini

[root@centos7 php-5.6.30]# vi /usr/local/php-fpm/etc/php-fpm.conf

[global] #全局变量

pid = /usr/local/php-fpm/var/run/php-fpm.pid

error_log = /usr/local/php-fpm/var/log/php-fpm.log

[www]

listen = /tmp/php-fcgi.sock #监听方式,也可以写:listen = 127.0.0.1:9000

listen.mode = 666 ##当监听的为socket文件时该部分才生效,用于指定.sock文件的权限

user = php-fpm

group = php-fpm  ##定义php-fpm服务的用户

pm = dynamic

pm.max_children = 50

pm.start_servers = 20

pm.min_spare_servers = 5

pm.max_spare_servers = 35

pm.max_requests = 500

rlimit_files = 1024   #进程相关

检查语法

[root@centos7 php-5.6.30]# /usr/local/php-fpm/sbin/php-fpm -t


启动:

[root@centos7 php-5.6.30]# chmod 755 /etc/init.d/php-fpm

[root@centos7 php-5.6.30]#  chkconfig --add php-fpm

[root@centos7 php-5.6.30]#  chkconfig php-fpm on

[root@centos7 php-5.6.30]# service php-fpm start

Starting php-fpm  done

[root@centos7 php-5.6.30]# ps aux| grep php-fpm


Nginx介绍

Nginx应用场景:web服务、反向代理、负载均衡

Nginx著名分支,淘宝基于Nginx开发的Tengine,使用上和Nginx一致,服务名,配置文件名都一样,和Nginx的最大区别在于Tenging增加了一些定制化模块,在安全限速方面表现突出,另外它支持对js,css合并


Nginx对比apache的优点:

1、轻量级,同样起web 服务,比apache 占用更少的内存及资源

2、静态处理,Nginx 静态处理性能比 Apache 高 3倍以上

3、抗并发,nginx 处理请求是异步非阻塞的,而apache则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能。在Apache+PHP(prefork)模式下,如果PHP处理慢或者前端压力很大的情况下,很容易出现Apache进程数飙升,从而拒绝服务的现象。

4、高度模块化的设计,编写模块相对简单

5、社区活跃,各种高性能模块出品迅速啊

apache对比nginx的优点

1、rewrite,比nginx 的rewrite 强大

2、模块超多,基本想到的都可以找到

3、少bug,nginx的bug相对较多

4、超稳定

5、Apache对PHP支持比较简单,Nginx需要配合其他后端用


选择Nginx的优势所在

作为Web服务器: Nginx处理静态文件、索引文件,自动索引的效率非常高。

作为代理服务器,Nginx可以实现无缓存的反向代理加速,提高网站运行速度。

作为负载均衡服务器,Nginx既可以在内部直接支持Rails和PHP,也可以支持HTTP代理服务器对外进行服务,同时还支持简单的容错和利用算法进行负载均衡。

在性能方面,Nginx是专门为性能优化而开发的,在实现上非常注重效率。它采用内核Poll模型(epoll and kqueue ),可以支持更多的并发连接,最大可以支持对50 000个并发连接数的响应,而且只占用很低的内存资源。

在稳定性方面,Nginx采取了分阶段资源分配技术,使得CPU与内存的占用率非常低。Nginx官方表示,Nginx保持10 000个没有活动的连接,而这些连接只占用2.5MB内存,因此,类似DOS这样的攻击对Nginx来说基本上是没有任何作用的。

在高可用性方面,Nginx支持热部署,启动速度特别迅速,因此可以在不间断服务的情况下,对软件版本或者配置进行升级,即使运行数月也无需重新启动,几乎可以做到7×24小时不间断地运行。


同时使用Nginx和Apache

由于Nginx和Apache各自的优势,现在很多人选择了让两者在服务器中共存。在服务器端让Nginx在前,Apache在后。由Nginx做负载均衡和反向代理,并且处理静态文件,讲动态请求(如PHP应用)交给Apache去处理。
















本文转自方向对了,就不怕路远了!51CTO博客,原文链接:http://blog.51cto.com/jacksoner/1981734 ,如需转载请自行联系原作者


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
143
分享
相关文章
MySQL的架构与SQL语句执行过程
MySQL架构分为Server层和存储引擎层,具有高度灵活性和可扩展性。Server层包括连接器、查询缓存(MySQL 8.0已移除)、分析器、优化器和执行器,负责处理SQL语句;存储引擎层负责数据的存储和读取,常见引擎有InnoDB、MyISAM和Memory。SQL执行过程涉及连接、解析、优化、执行和结果返回等步骤,本文详细讲解了一条SQL语句的完整执行过程。
37 3
MySQL原理简介—2.InnoDB架构原理和执行流程
本文介绍了MySQL中更新语句的执行流程及其背后的机制,主要包括: 1. **更新语句的执行流程**:从SQL解析到执行器调用InnoDB存储引擎接口。 2. **Buffer Pool缓冲池**:缓存磁盘数据,减少磁盘I/O。 3. **Undo日志**:记录更新前的数据,支持事务回滚。 4. **Redo日志**:确保事务持久性,防止宕机导致的数据丢失。 5. **Binlog日志**:记录逻辑操作,用于数据恢复和主从复制。 6. **事务提交机制**:包括redo日志和binlog日志的刷盘策略,确保数据一致性。 7. **后台IO线程**:将内存中的脏数据异步刷入磁盘。
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
180 42
CentOS7仅安装部署MySQL80客户端
通过上述步骤,你可以在CentOS 7上成功安装并配置MySQL 8.0客户端。这个过程确保你能够使用MySQL客户端工具连接和管理远程的MySQL数据库,而不需要在本地安装MySQL服务器。定期更新MySQL客户端可以确保你使用的是最新的功能和安全修复。
290 16
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
158 7
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
146 14
Windows Server 安装 MySQL 8.0 详细指南
安装 MySQL 需要谨慎,特别注意安全配置和权限管理。根据实际业务需求调整配置,确保数据库的性能和安全。
386 9
智慧工地云平台的技术架构解析:微服务+Spring Cloud如何支撑海量数据?
慧工地解决方案依托AI、物联网和BIM技术,实现对施工现场的全方位、立体化管理。通过规范施工、减少安全隐患、节省人力、降低运营成本,提升工地管理的安全性、效率和精益度。该方案适用于大型建筑、基础设施、房地产开发等场景,具备微服务架构、大数据与AI分析、物联网设备联网、多端协同等创新点,推动建筑行业向数字化、智能化转型。未来将融合5G、区块链等技术,助力智慧城市建设。
云原生架构下的微服务治理策略与实践####
本文旨在探讨云原生环境下微服务架构的治理策略,通过分析当前面临的挑战,提出一系列实用的解决方案。我们将深入讨论如何利用容器化、服务网格(Service Mesh)等先进技术手段,提升微服务系统的可管理性、可扩展性和容错能力。此外,还将分享一些来自一线项目的经验教训,帮助读者更好地理解和应用这些理论到实际工作中去。 ####
84 0
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
365 69
从单体到微服务:如何借助 Spring Cloud 实现架构转型
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等