腾讯云— LAMP 架构个人实践分享

article/2025/9/22 13:18:47

LAMP 环境通常指Linux 环境下,由Apache+MySQL/MariaDB+PHP 以及其它相关组件组成的网站服务器架构。目前以LAMP组成的Web 应用程序平台广泛被应用,70%以上的访问流量由LAMP提供,所以我们也认同LAMP是最强大的网站解决方案。

关于LAMP的环境部署文档随处可搜,腾讯官网环境部署介绍可参阅:

手动搭建LAMP环境:https://cloud.tencent.com/document/product/213/38402

镜像部署LAMP环境:https://cloud.tencent.com/document/product/213/38364

而LAMP为何如此流行,还是受益于其开源,该架构优势归纳如下三点:

1:架构下软件程序开源,提供经济的软件成本

2:开源社区积累丰富,应用程序稳定,可以快速上手

3:兼容性好,LAMP架构由各自独立的程序架构在一起使用,拥有了很好的兼容度

跳过部署,我们今天交流的是“LAMP 云架构实践” ,围绕如何在云上架构安全,弹性,高可用的LAMP Web应用架构进行一些实践分享。我是基于我的认识和项目经验把LAMP 场景进行了细分,也是方便一些刚接触的同学好理解,当然如果不足之处,欢迎指导交流。

  • 一、单节点web架构

对于轻量/非关键业务的web 应用(例如官网、论坛、博客等web应用),通常还是单节点部署架构;

在单节点web架构,我们有两种部署方式;虚拟主机部署和轻量应用服务器部署;

  1.  虚拟主机部署

采购S5或SA2系列CVM完成LAMP环境部署并发布站点,这是最简单的架构。

在这种简单架构下,一般承载非关键业务应用,但从运维角度提高应用的稳定性,我们通常有如下几点实践建议;

  1. 对于单CVM节点制定快照策略(自动周期性创建快照及快照清理)
  2. CVM添加“云硬盘”,通过自动化备份脚本备份MySQL 数据库至“云硬盘”(云硬盘和CVM是挂载关系,当CVM故障下,我们云硬盘数据安全)
  3. 添加“云监控”,免费版本云监控可对CVM进行基础资源监控,设置告警通知策略,当CVM的CPU /内存/网络/磁盘空间 等资源出现负荷,可提前进行扩容操作;

  1.  轻量应用服务器部署

轻量应用服务器我们在之前的文章中有所介绍,轻量应用服务器从销售角度,算是一种“打包”的产品模式,在产品角度,是为轻量/非关键web应用提供的解决方案。我们在创建轻量应用服务器的时候,我们可以看到有预置的“LAMP 应用镜像”,可以快速的完成部署和上线。

通过镜像模板,可以省去部署过程,基于轻量轻盈服务器的“性价比”,可以进一步优化成本。

  • 二、经典三层架构:Web前端+APP应用+数据库后端

相当于单节点架构,经典三层架构是把web应用通过前中后角色进行了拆分,环境独立的情况下,对于应用的排错、负载等方面得到提升。我们就在云环境下分如下两种部署模式介绍;

2.1.IAAS 部署模式

依然是纯IAAS 的资源部署,原本一台服务器拆分为三台服务器分别部署WEB/APP/MYSQL服务器角色。在云环境下我们有如下几点改进:

如架构图展示;

  1. Web前端主要面对Public 公网流量访问,后端APP和MYSQL主要内网进行应用通信,从而减少互联网暴露,提高网络安全防护;
  2. 安全组是云环境下“网络防火墙”,分别设定独立的安全组策略,修改常用端口,减少对外端口开放,控制风险。
  3. 为Web Server 添加EIP (弹性IP),弹性IP支持绑定和解绑,当web server故障无法恢复时,我们可以新建Web Server ,讲EIP 绑定新Web Server , 快速恢复访问。同时EIP 是预留固定公网IP ,Domain 域名映射不需要修改。

2.2.IAAS+COS+RDS 部署模式

对于传统架构,云环境下可以更好的提出“云化”方案,这里我们实践通常将CVM部署MYSQL 替换成 RDS for MySQL 云数据库,增加COS存储类型存放静态web页面和音视频文件。

该架构优化的收益有如下几点:

  1. MySQL 云数据库属于PAAS服务,稳定性,扩展性,冗余等方面都由于自建Mysql 服务器,可以提供更稳定的数据库服务
  2. 目前web类应用加载了大量高清图片以及音视频文件,通过COS存储可以分摊CVM的带宽压力,同时COS支持CDN直接加速,用户的加载体验更好。
  3. 目前COS 不仅是静态页面/图片/音视频存储的最佳选择,同时集成了大量的AI数据处理能力,例如图片压缩、水印、语音识别、二维码识别等数据处理能力,部分可以直接通过开关功能即可实现,部分可以支持API方式处理。
  • 三、经典三层架构下高可用架构

所有架构都是随着业务要求而完善的,从单节点,到多层架构,再到高可用架构都是应对业务需求的增长。从业务最初对功能的需求,后期会逐步关注稳定性,用户体验,安全性的方面。

基于高可用的需求下,我们通常优化如下几部;

  1. Web前端实现多节点部署,通过ELB +AUTOSCALE (自动伸缩) + 云监控, 实现随着业务的不可预期负载进行自动的计算节点伸缩,经济+稳定性得到一定的保障
  2. 基于微服务的架构思想,APP应用开始拆分多模块,也有企业以业务应用中台为建设方向,去应对多系统、高负载的需求。
  3. 后端MySql云服务器可以快速的实现多副本、容灾架构。依托读写分离、增加缓存数据库等方案可以快速优化数据库方案。

当然除了负载问题,在大应用平台下,客户还会比较关注安全加固和互联网安全防护,这里就不做过多介绍了,下次独立章节做介绍交流。

如上架构的场景介绍,是遵循从小到大,从简到繁的过程,当然还有很多细节没有详尽介绍,希望未来有更多交流的机会 。


http://chatgpt.dhexx.cn/article/QU9x4jk4.shtml

相关文章

一:LAMP 架构简介

一:LAMP 架构简介 LAMP 是目前成熟的一种企业网站应用模式之一,指的是协同工作的一套系统和相关软件的整合,可提供PHP动态web站点应用及开发环境,LAMP 经过十年的完善各个组件间的兼容性,协作能力,稳定等方…

php lamp架构,lamp架构搭建

lamp架构搭建(yum) 环境:一台主机,centos7.5 lamp安装 yum -y install httpd php-fpm php-mysql mariadb-server 启动php-fpm服务 systemctl start php-fpm 配置httpd生成配置文件,提示http,php-fpm服务在本地 vim /etc/httpd/con…

LAMP架构介绍及配置

1.LAMP简介与概述 1.1 LAMP平台概述 LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整台系统和相关软件,能够提供动态web站点服务及其应用开发环境 LAMP是一个缩写词,具体包括Linux操作系统,Apache网站服务器&a…

lamp

文章目录 1. LAMP架构介绍2. web服务器工作流程2.1 cgi与fastcgi2.2 httpd与php结合的方式2.3 web工作流程 3. lamp平台构建3.1 安装httpd3.2 安装mysql3.3 安装php3.4 配置apache3.4.1 启用代理模块3.4.2 配置虚拟主机 3.5 验证 1. LAMP架构介绍 lamp,其实就是由L…

LAMP架构简介

一、LAMP架构介绍 现如今打开浏览器,搜索LAMP关键词,出现大量的关于LAMP的介绍,包括LAMP的一键脚本、LAMP的yum安装、LAMP的编译安装,但是对于一个非开发或非专业人员有可能根据网络参考资源实现LAMP的搭建并成功运行各种服务&am…

LAMP架构简述

阅读目录 图片架构详解               LAMP架构以及通信过程 LNMP架构优缺点Nginx/APACHE tomcat MySQL 图片架构详解               LAMP/LNMP:是有Linux系统,Apache网络服务器或者Nginx服务器,MySQL数据库…

LAMP架构

目录 一、LAMP简介与概述1.LAMP平台概述2.构建LAMP平台顺序3.编译安装的优点4.各组件的主要作用 二.安装1.-安装Apache2.安装MYSQL3.安装PHP4.安装论坛5.论坛测试 一、LAMP简介与概述 1.LAMP平台概述 LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一…

LAMP架构一(介绍)

一、LAMP架构介绍 现如今打开浏览器,搜索LAMP关键词,出现大量的关于LAMP的介绍,包括LAMP的一键脚本、LAMP的yum安装、LAMP的编译安装,但是对于一个非开发或非专业人员有可能根据网络参考资源实现LAMP的搭建并成功运行各种服务&…

Smokeping的主从模式部署

Smokeping 支持 Standalone(单机)模式和 Master/Slave(主从)模式。 之前老苏折腾过单机模式,这次应网友 Roxmie 的要求,研究了一下主从模式的部署 文章传送门: 网络性能监控工具Smokeping 因为…

Centos7上smokeping安装

Centos7上Smokeping安装 一、安装软件 1、添加镜像源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo2、安装Apache yum -y install httpd httpd-devel gcc make curl wget3、安装rrdtool a.安装依赖的库 yum -y install libx…

centos7下源码安装Smokeping,主从部署

一、环境部署(准备两台Centos虚拟机) 1.关闭防火墙和SElinux #systemctl stop firewalld.service #systemctl disable firewalld.service #sed -i s/SELINUXenforcing/SELINUXdisabled/ /etc/selinux/config #grep SELINUXdisabled /etc/selinux/config #setenforce 02.安装E…

网络性能监测工具smokeping

smokeping简介: smokeping是rrdtool的作者Tobi Oetiker的作品,所以它在图形显示方面有很大优势,也是一个很有特点的opensource工具:多种探测方式,包括fping、echoping、dig、curl等;可以在多个节点收集同一…

docker快速搭建smokeping

1、部署docker环境 curl -fsSL get.docker.com -o get-docker.sh CHANNELstable sh get-docker.sh --mirror Aliyun 2、启动docker systemctl start docker 3、拉取镜像 docker pull linuxserver/smokeping 4、创建目录 mkdir -p /data/smokeping/config 5、进入目录 cd /data/…

Smokeping 网络性能监控 安装使用说明

目录 简介 -smokeping介绍-组成部分-Web服务器软件-Smokeping主服务-探针-rrdtool安装配置smokeping 2.1--环境依赖包安装 2.2--RRDtool 1.2.x或更高版本安装 2.3--FPing安装 2.4--EchoPing安装 2.5--Webserver安装 2.6--Perl 5.10.1 或更高版本安装 2.7--开始安装smokeping 三…

smokeping图表各值意义解释

1、rtt (Round-TripTime) 这个值就是数据包在源和监控点一个来回所需要用的时间,是判断网络运行状况的一个重要的参数。在网络中实时、准确测量大量的TCP设备和系统rtt参数也是网络管理的重要环节之一。smokeping就是向目标设备发送数据包,进行记录、展示…

ubuntu12 部署smokeping监控

简介: smokeping是对IDC网络质量,稳定性等最好的检测工具,包括常规的 ping,dig,echoping,curl等,可以监视www服务器性能,监视dns查询性能,监视ssh性能等。底层是 rrdtoo…

【监控系统】Smokeping网络监控

文章目录 1. smokeping简介2. 部署smokeping2.1. 环境准备2.2. 安装rrdtool与依赖库2.3. 下载与安装smokeping2.4. 安装依赖的Perl模块 3. 配置smokeping3.1. 创建相关目录3.2. 创建日志文件3.3. 目录文件授权3.4. 修改配置文件3.5. 修改apache的配置3.6. 添加测试数据 4. 启动…

Smokeping主从搭建

Smokeping主从的作用,简单来讲就是增加多个smokeping主机对目标主机的监控。 1、环境部署,准备好两台已经安装好smokeping的主机,确保2台主机网络能够互访互通,且smokeping能够正常运行。 2、主smokeping配置 cd /usr/local/smo…

smokeping-2.6.9搭建

本次smokeping服务搭建是基于centos7系统平台且是使用apache1,开始搭建之前需要关闭centos的SElinux服务和防火墙服务,不然搭建过程中,部分服务权限会受影响而搭建不成功。 1、关闭selinux服务 临时关闭selinux setenforce 0 //该命令临…

Nginx+SmokePing 实践

NginxSmokePing安装配置 SmokePing是一款完全免费的可以用来监控IDC网络质量的工具,并且它有一个基于RRDTool绘图的前端展示界面,用户可以直观的通过浏览器查看各类监控信息。 SmokePing 安装epel源: yum -y install epel-release 安装绘…