可扩展、高可用、负载均衡网站架构设计方案

news/2024/5/20 1:09:33/文章来源:https://blog.csdn.net/yp120yp/article/details/6941933
可扩展、高可用、负载均衡网站架构设计方案
作者:田逸(sery@163.com) 本作品已刊登在《IT实验室周报》第6期第6版
基本需求:
1、  高可用性:将停止服务时间降低到最低甚至是不间断服务
2、  可扩展性:随着访问的增加,系统具备良好的伸缩能力
3、  可视性:系统、服务的状态处于一个实时的监控之下
4、  高性能高可靠性:经过优化的体系结构及合理的备份策略
5、  安全性:结构上的安全及主机的安全策略
 
基本思路
1、对于访问频繁,用户量大的对象(bbs,blog)采用某种合理的方式负载到多个服务器上。把数据库独立出来,准备2mysql数据库,以实现主从复制,即减轻负载,又提高了可靠性。更近一步,使用mysql proxy技术,实现主从服务器的读写分离,大大提高这个系统的性能和负载能力。
2、数据库与外部网络隔离,只允许web服务器(bbs,blog等)通过私有地址方式访问。这样就提高了数据库的安全性,同时也节省了宝贵的带宽。
3、部署监控系统,通过监控主机存活、服务、主机资源,实时把系统的健康状态置于可视状态,对系统的运营状态心中有数。
4、备份是想都不用想的事情,使用单独的服务器集中备份,是一个比较不错的主意。
 
拓扑结构
 
业务逻辑
 
技术实现
1、负载均衡。2台同样配置的linux服务器,内核支持lvs,配置keepalived工具,即可实现负载转发。一旦其后的真实服务器出现故障,keepalived会自动把故障机器从转发队列删除掉,等到故障修复,它又会自动把真实服务器的地址加入转发列表。由于lvs支持会话保持,因此对于bbs 这样的应用,一点也不用担心其登录丢失。
2mysql主从复制。即保证数据的安全,又提高了访问性能。我们在前端的每个web服务器上加入mysql proxy这个工具,即可期待实现读写的自动分离,让写的操作发生在主数据库,让查询这类读操作发生在从数据库。
3nagios是一个开源的,受广泛欢迎的监控平台。它可对主机的存活、系统资源(磁盘空间、负载等)、网络服务进行实时监控。一旦探测到故障,将自动发送邮件(短信)通知故障。
4、备份。包括web数据和数据库服务器的备份。对于web服务而言,GNU tar即可实现备份的一切愿望。简单的设置一下crontab 就可以让系统在我们做梦的时刻老老实实的帮我们备份了。但是,由于空间的限制,不可能一直备份下去,所以要做一个合适的策略,以不断的用新的备份去替换陈旧的备份数据;多少天合适?看磁盘容量吧。对于数据库,先mysqldump一下,再tar.完成这些工作后把备份文件传输到备份服务器集中。一个比较省事的方法是把备份服务器以NFS方式挂接到web服务器及数据库服务器。
5web服务器。至少包括apachemysql proxy这两个组件。Apachebbsblog的容器,以虚拟机方式把用户的请求转发到bbs目录或blog目录。
6、安全措施。包含两层安全,一层是主机本身,另一层是结构(mysql从外部网络隔离)。实践证明,iptables是一个非常值得信赖的防火墙工具。在实际应用中,采取先关门后开窗的策略,大大增强系统的安全性。
 
组件
一、 硬件: 负载均衡2(dell 1950),web服务器2-3(dell1950),数据库2(dell 2950),存储NAS(5T格式化后容量),备份4u服务器(带磁盘阵列5T容量),监控服务器1(dell1850).
二、 软件:操作系统centos 5(定制安装),负载均衡ipvsadmkeepalived,监控nagios,web服务apache+php等,数据库mysql,数据库代理mysql proxy.
 
进度安排
1、  lvs负载均衡配置及测试:2-3
2、  web服务器配置:2-3
3、  mysql主从服务器配置:1-3
4、  web数据迁移:1
5、  数据库数据迁移:2
6、  上线测试:1-2
7、  正式上线:2
keepalived.conf
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL
}
 
vrrp_instance VI_1 {
    state  master
    interface eth0
    virtual_router_id 59
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
        }
  virtual_ipaddress {
  61.61.61.100
  #61.61.61.101
  }
}
 
virtual_server 61.61.61.100 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    persistence_timeout 50
    protocol TCP
real_server 61.61.61.102 80 {
        weight 100
        TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
    }
    real_server 61.61.61.103 80 {
        weight 100
        TCP_CHECK {
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
            connect_port 80
        }
     }
    }
 
真实服务器虚拟ip设置脚本
#!/bin/bash
#description : start realserver
VIP=61.61.61.100
./etc/rc.d/init.d/functions
case "$1" in
start)
echo " start LVS of REALServer"
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
stop)
/sbin/ifconfig lo:0 down
echo "close LVS Directorserver"
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac

本文出自 “sery” 博客,请务必保留此出处http://sery.blog.51cto.com/10037/85910


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_845710.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大流量网站的底层系统架构

动态应用,是相对于网站静态内容而言, 是指以c/c、php、Java、perl、.net等 服务器端语言开发的网络应用软件,比如论坛、网络相册、交友、BLOG等常见应用。动态应用系统通 常与数据库系统、缓存系统、分布式存储系统等密不可分。 大型动态应用…

一步步构建大型网站架构

来源: itivy 发布时间: 2011-05-02 20:21 阅读: 6335 次 原文链接 全屏阅读  [收藏] 之前我简单向大家介绍了各个知名大型网站的架构,MySpace的五个里程碑、Flickr的架构、YouTube的架构、PlentyOfFish的架构、WikiPedia的架构。这几个都很典型,我…

13个超棒的代码资源网站推荐

很多开发者都有过网站开发的经历,大家使用CSS、HTML以及JavaScript等技术来完成这一工作。但想必大家也知道,网站开发是一个很耗费时间的工作。你可能需要花费大量的时间在一些网站上寻找解决问题的代码段。这的确很耗费时间,但却几乎又是不可…

在线的 Web 网站性能测试工具

1) Web Page Test 从世界各地多个地点,使用真正的浏览器(IE和Chrome),并在真正的消费者连接速度,对你的网站进行速度测试。您可以运行简单的测试,或执行多步交易,视频采集,内容封锁和…

网站性能优化实战

转载来源:https://dwz.cn/QsPHj4jk 本文是对之前同名文章的修正,将所有 webpack3 的内容更新为 webpack4,以及加入了笔者近期在公司工作中学习到的自动化思想,对文章内容作了进一步提升。 引 言 对于网站的性能,在行…

Nginx网络架构实战学习笔记(三):nginx gzip压缩提升网站速度、expires缓存提升网站负载、反向代理实现nginx+apache动静分离、nginx实现负载均衡...

文章目录nginx gzip压缩提升网站速度expires缓存提升网站负载反向代理实现nginxapache动静分离nginx实现负载均衡nginx gzip压缩提升网站速度 网页内容的压缩编码与传输速度优化 我们观察news.163.com的头信息 请求: Accept-Encoding:gzip,deflate,sdch响应: Content-Encoding:…

springboot打jar包部署在linux(阿里云)服务器上项目启动成功但页面访问时提示无法访问此网站

项目打jar包放在阿里云服务器上,启动成功,但是页面访问时提示无法访问此网站。 问题分析:项目启动成功说明程序没有问题。无法访问可能是端口的问题。首先检查项目中使用的端口号,再检查阿里云服务器是否开启该端口号。如果阿里云…

mysql 视图 中文_Mysql视图-WEB资讯专栏-DMOZ中文网站分类目录-免费收录各类优秀网站的中文网站目录....

1.初识视图 1.视图的概念和作用 什么是视图:是从一个或多个表中导出来的表,它是一种虚拟存在的表,表的结构和数据都依赖于基本表。 作用: 简化查询语句:简化用户的查询操作,使1.初识视图1.视图的概念和作用什么是视图:是从一个或多…

适合前端开发者的一些超级实用小工具及网站合集

本篇文章用于像大家分享一些前端开发者必备的一些工具和网站,目前推荐的较少,但会持续更新~也欢迎各位大佬在评论区下留下你觉得前端人员必备的一些工具或网站等。 一、工具 1.Snipaste Snipaste是一个简单但强大的截图工具,可以复制截图&am…

html 文件调用 网站的绝对路径_前端开发入门——HTML基础标签lt;二gt;

本文创建于2020年8月,以下为正文:HTML是用于创建可以从一个平台移植到另一平台的超文本文档的一种简单标记语言,经常用来创建web页面、HTML是制作网页的基础,我们在网络营销种讲的静态网页,就是以HTML为基础制作的网页…

php网站模板文件名,thinkphp5因模板文件名在windows服务器正常在linux服务器报错问题...

最近微构网络接手了一个从其他团队转移过来的一个项目,因为客户之前的服务团队解散了。在交接过程中客户描述了一些问题,其中一个基础问题就是说这个系统只能在windows系统里面运行,而在centos等linux系统中运行不了,直接出现报错…

网课查题公众号/网站制作方法

网课查题公众号/网站制作方法获取api接口复制token,输入自定义id,确认授权即可下载网站查题源码此教程使用的方法可免费实现公众号/网站查题功能 获取api接口 php务必设置成php5.6 否则可能出现查题无响应现象 获取api token地址: 复制tok…

为什么要选择PHP开发网站,PHP有什么优势?

http://www.weeeb.net/c1032.html 在打算开发一个网站时,选择什么语言,是首先需要面对的问题。目前主流的WEB开发语言有ASP.NET、PHP、JSP; 作为MS上世纪老将ASP,就不再提及,如果是因为维护方面的原因而必须使用,可考…

Bootstrap Jetstrap-快速构建你的网站

http://www.iteye.com/topic/1126947 原文地址:Bootstrap & Jetstrap-快速构建你的网站 Boostrap来自于Twitter,是一个基于html,css,javascript的时尚的、直观的、强大的流行前端框架及交互组件集,可用于快速&…

21个免费的UI界面设计工具、资源及网站

本文将介绍一些UI界面与设计使用的元素、软件和网站。内容很丰富,适合用户体验设计师、界面设计师、产品设计师、JS前段开发、手机产品设计以及iPad和平板电脑产品设计等使用。 Lumzy 官方地址:http://www.lumzy.com/ Lumzy是一个网站应用和原型界面制作…

分享实用福利网站

BDY搜 这是一个专注于资源搜索的平台,非常的良心,而且基本上什么类型的资源都有(随便搜索一个“PPT模板”你看看效果,再也不用去公共号集赞领取模板了) 传送地址:http://www.bdyso.com ZD423 超多实用的…

网站数据挖掘与分析:系统方法与商业实践 宋天龙 著

网站数据整合的范畴 网站数据整合的范畴指的是整合的数据范围,从数据在企业中不同的支持作用来看,数据整合范畴包括业务数据整合、IT数据整合和职能数据整合;除了企业内部数据外,还包括 企业外部数据,如市场数据、行业…

到外国的网站写英语留言

最近flash sandy官方博客以为被黑了,今天去上了 原来是服务器出了点问题。现在修复了,哈哈,留了一个英语给他们,不过他们应该还是很难看,中国式的语言,但是总的来讲,flashsandy 还是算一个不错的…

优质网站分享,无需下载

今天我和大家分享几个优质的网站,不用我们下载软件,十分省心方便。有需要的朋友就将这些网站收藏起来吧。 1、Pexels Pexels 是一个的免费高清图片网站。打开它的主页,中间一个输入框,下面会出现搜索热门的关键词、图片&#xff0…

Flash与组件:国外收费组件网站

http://www.flashcomponents.net/index.html 今天无意中光顾了这个国外flash组件网站,虽然基本上上都是收费但是可给我们提供一些灵感,同时也让我们扩展视野是个不错的平台。国内也是非常少见,有这样的情况。