当前位置: 首页 > 科技观察

PHP+MySQL网站架构的一些理解

时间:2023-03-13 17:03:59 科技观察

目前的网站架构一般分为负载均衡层、WEB层和数据库层。集群方案。网站资料浏览量(PV)独立访客(UV)访问量(VV)独立IP帖子数注册会员数量跳出率今天平均在线时间80,97337,99942,57327,97962414072.27%00:07:56昨天179,25074,58488,98654,021728,480%00:10:00历史平均值154,02060,92771,92447,8831,93620178.24%00:10:00历史***238,99394,647110,55272,6926,60246889.04%代码提交到生产环境必须是0.在测试服务器上开发OK后,我们提交到SVN服务器,然后进入代码提交服务器。进入代码提交服务器后,有两步走,我理解为一拉一推。a我们使用svnup更新本地文件b使用rsync将以上两部分推送到生产环境服务器我写一个shell文件,分别运行bashxxx.sh2用户访问网站的流程基本是这样的:网站使用了动态CDN,起到了加速的作用,我们先把动态CDN放一边,说说接下来发生的事情。我们在前端使用LVS。关于LVS,我用维基百科上的文章来解释一下:  LVS是一款开源软件,由毕业于国防科技大学的张文松博士于1998年5月创立。可以实现LINUX平台下的简单负载均衡。LVS是LinuxVirtualServer的缩写,意为Linux虚拟服务器。LVS集群采用了IP负载均衡技术和基于内容的请求分发技术。调度器具有良好的吞吐率,将请求平均转移到不同的服务器执行,调度器自动屏蔽服务器故障,从而将一组服务器组成一个高性能、高可用的虚拟服务器。整个服务器集群的结构对客户端是透明的,不需要修改客户端和服务器端的程序。为此,设计时需要考虑系统的透明性、可扩展性、高可用性和易管理性。一般来说,LVS集群采用三层结构,其主要组成部分有:A.负载均衡器,是整个集群对外的前端机器,负责将客户的请求发送给一组服务器进行处理执行。客户认为服务来自一个IP地址(我们可以称之为虚拟IP地址)。B、服务器池(serverpool)是一组实际执行客户请求的服务器,执行的服务包括WEB、MAIL、FTP和DNS。C.共享存储(sharedstorage),为服务器池提供一个共享的存储区域,使得服务器池很容易拥有相同的内容,提供相同的服务。A.LVS1的核心是它的loadscheduler。2.塔台负责维护路由表。3、实时监控真实服务器健康状态。B.LVS必须有热备份。如果LVS失败了,就完了。这样,如果LVS出现故障,备份的LVS可以接管工作。C源站192.168.1.156/157对外虚拟了一个VIP115。DNS解析域名时,解析到这个VIP。至于具体用户访问哪个服务器,对用户来说是透明的。LVS根据IP负载均衡技术为用户分配源站点地址。D两台源服务器,为了保证某些地方的数据同步,我做了:1.通过NFS挂载两台源服务器之间的缓存,保持同步;2、在crontab中编写定时任务,同步相关ssi文件;E后端DB连接,我们使用2主2从DB集群,对外虚拟出2个主库77和78为VIP110,原理是任意一个DB挂掉,另一个立即接管。这两个数据库是彼此的主人和奴隶。通过keepalived监控各自的生存状态。F通过binlog保持主从库同步。所有的binlog都是通过主库发送的。其余三个从库(其中一个是主库,作用是从库)接受binlog,维护各自的数据组件。G此外,我们还有一个附件服务器。减少网络压力。H另外还有图片服务器/小图标服务器,可以自己放在web上,用域名区分。其实不管图片、附件、css等放在哪里,只要能通过域名访问到就完全没问题。我们通过博瑞系统对网站进行监控。对于网站,首屏时间是评估的重点。任何用户不想等3秒页面加载还没完成,用户体验很差。这是在加入CDN之后,对全国各个监控点进行相关的监控和性能评估。原文链接:http://www.cnblogs.com/wangjiafang/archive/2012/06/12/2546314.html