我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何看待PHP+MySQL网站架构

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何看待PHP+MySQL网站架构

如何看待PHP+MySQL网站架构,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

目前网站架构一般分成负载均衡层、WEB层和数据库层
负载均衡层-- LVS,
WEB层--使用了nginxweb服务器,
数据库层--我们使用了db集群方案。

网站概况

  浏览量(PV) 独立访客(UV) 访问次数(VV) 独立IP 发帖量 注册会员数 跳出率 平均在线时长
今日 80,973 37,999 42,573 27,979 624 140 72.27% 00:07:56
昨日 179,250 74,584 88,986 54,021 1,400 285 77.48% 00:10:00
历史平均 154,020 60,927 71,924 47,883 1,936 201 78.24% 00:10:00
历史最高 238,993 94,647 110,552 72,692 6,602 468 89.04% 00:11:02

1 代码提交系统

这是在代码进入生产环境前的必须要经历的。
在测试服务器上开发OK后,我们提交给SVN服务器,然后进入代码提交服务器。
进入代码提交服务器后,有两步要走的,我理解为一个拉,一个推。
a 我们使用SVN up 将本地文件更新

b 使用rsync推送到生产环境服务器

以上两部分 我分别写成一个shell文件
运行 bash xxx.sh 即可
2 用户访问网站的流程,基本是这样的:
网站使用了动态CDN,起到加速的作用,我们先把动态CDN放到一边,说说下面发生的事情。
在前端我们使用了LVS,关于LVS我使用百科上的文章,给予解释下:
LVS是一个开源的软件,由毕业于国防科技大学的章文嵩博士于1998年5月创立,可以实现LINUX平台下的简单负载均衡。LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器。
LVS 集群采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从 而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。为此,在设计时需要考 虑系统的透明性、可伸缩性、高可用性和易管理性。
一般来说,LVS集群采用三层结构,其主要组成部分为:
A、负载调度器(load balancer),它是整个集群对外面的前端机,负责将客户的请求发送到一组服务器上执行,而客户认为服务是来自一个IP地址(我们可称之为虚拟IP地址)上的。
B、服务器池(server pool),是一组真正执行客户请求的服务器,执行的服务有WEB、MAIL、FTP和DNS等。
C、共享存储(shared storage),它为服务器池提供一个共享的存储区,这样很容易使得服务器池拥有相同的内容,提供相同的服务。
A LVS
1 核心是它的负载调度器
2 塔负责维护一个路由表
3 实时监控真实server健康状况
B LVS必须有个热备 hot back,万一LVS坏了,那就完蛋了。这样,当LVS万一坏了,可以备份LVS接管工作。
C 源站192.168.1.156/157 对外虚拟一个VIP 115。DNS解析域名的时候就解析到这个VIP上。至于具体用户访问是哪台服务器,对用户而言是透明的,LVS根据 IP负载均衡技术 为用户分配源站地址。
D 两台源站服务器,为了可以保证某些地方的数据同步,我做了:
1 两台源站服务器之间的缓存通过NFS挂载,保持同步;
2 crontab中写入计划任务,同步相关ssi文件;

E 后端DB的连接,我们使用了2主2从DB集群
两台主库77、78对外虚拟成VIP 110,原理,当任何一台DB挂掉后,另外一台立即接管其。两台db互为主从。通过keepalived监测各自生存状态。

F 主从库之间通过binlog保持同步。所有binlog均通过主库发出。其余三台从库(其中一台为主库,角色为从库)接受binlog,维护各自数据成分。
G 另外我们是有了一台附件服务器。减轻WEB压力。
H 另外,还有图片服务器/小图标服务器,可以放在web自身,通过域名区分。其实图片、附件、css等哪儿并不重要,只要可以通过域名访问到,是完全可以的。
我们通过博瑞系统,对网站进行监控。 对于web站点,首屏时间是考核的重点,任何一个用户不想等待3s钟页面还没有加载完,用户体验非常差。

这是在加入CDN后,对全国各监测点进行相关的监测和性能的评测。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何看待PHP+MySQL网站架构

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何理解Amazon的网站数据存储架构

这篇文章主要讲解了“如何理解Amazon的网站数据存储架构”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解Amazon的网站数据存储架构”吧!一、系统概述1、Amazon平台概述
2023-06-10

如何使用 PHP 构建多页面网站

php 多页面网站构建指南:创建清晰的文件夹结构,以分离不同页面。使用 html 模板(template.php)作为每个页面的基础。为主页(index.php)添加内容。为其他页面(如 contact.php 和 about.php)创建
如何使用 PHP 构建多页面网站
2024-05-03

如何用php和mysql搭建网站

要使用PHP和MySQL搭建一个网站,你需要按照以下步骤进行操作:安装PHP和MySQL:首先,你需要在你的服务器或本地机器上安装PHP和MySQL。你可以从官方网站下载PHP(http://www.php.net)和MySQL(https
2023-10-25

如何用php和mysql搭建网站

搭建PHP和MySQL网站:安装LAMP栈,创建MySQL数据库,连接到数据库,创建PHP文件,配置Apache虚拟主机,测试网站,优化性能,保护网站,部署和维护。优点:开源、易用、可扩展、社区支持。缺点:安全问题、效率挑战、配置复杂、依赖性。
如何用php和mysql搭建网站
2024-04-13

大型网站的可伸缩性架构如何设计?

1. 网站架构的伸缩性设计1.1. 不同功能进行物理分离实现伸缩纵向分离(分层后分离):将业务处理流程上的不同部分分离部署,实现系统伸缩性。横向分离(业务分割后分离):将不同的业务模块分离部署,实现系统伸缩性。1.2. 单一功能通过集群规模
2023-06-02

dreamweaver如何利用预设模板来架构一个网站

这篇文章给大家分享的是有关dreamweaver如何利用预设模板来架构一个网站的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。dreamweaver提供了快速建立网站框架的方式,我们可以通过简单预设模板来达到快速的
2023-06-08

如何保证网站的安全架构,不被黑客攻击

1. 网站安全的攻与防互联网环境鱼龙混杂,网站被攻击是常见现象,所以了解一些常见的网站攻击手段十分必要。下面列举比较常见的 4 种攻击手段:1.1. 跨站脚本攻击(XSS)概念跨站脚本攻击(Cross-Site Scripting, XSS
2023-06-02

编程热搜

目录