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

news/2024/5/20 16:09:14/文章来源:https://blog.csdn.net/iteye_18051/article/details/82200265
可扩展、高可用、负载均衡网站架构设计方案
作者:田逸(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_854297.aspx

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

相关文章

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

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

2015进口跨境电商网站大全

常用跨界电商企业网址跨境电商其它平台: 跨境电商其它跨境电商资讯类跨境电商有线下店

[译]MVC网站教程(四):MVC4网站中集成jqGrid表格插件(系列完结)

目录 1. 介绍 2. 软件环境 3. 在运行示例代码之前(源代码 示例登陆帐号) 4. jqGrid和AJAX 5. GridSettings 6. GridModelBinder 7. LinqExtensions 8. 数据实体类和LINQ 9. 在…

读书笔记:《大型网站系统与Java中间件实践》

文章目录大型网站演进数据库读问题写问题应用应对的挑战引入服务层框架:多机房问题序列化与反序列化问题异步调用线程池隔离服务请求合并数据访问层一致性的基础理论--CAP/BASE多机的Sequence问题消息中间件功能消息一致性避免对消息中间件的强依赖级联、嵌套topic/…

密评必备网站汇总

1、国密SSL实验室 网址:https://gmssl.cn/gmssl/index.jsp 推荐理由:提供很多密码相关工具 2、商用密码认证业务网 网址:http://service.scctc.org.cn/cer/cerall/list-c38.html 推荐理由:提供很多密码产品认证查询&#xff0…

乞讨网站,要饭网,个人要饭网,在线要饭网站;含socket 通信;双端支付源码 ;源码

展示站点:www.gaodc.site; 样式动态控制,因为快过年了所以是过年主题; 主要技术 springmvc websocket bootstrap jq 阿里支付 微信支付 ;源码请邮件;仅供交流; 截图

配置静态地址转换------发布公司内网网站到互联网上

拓扑图如下: 第1步:配置路由器R1启用的端口信息 Router>en Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#host R1 R1(config)#int fa0/0 R1(config-if)#ip add 192.168.10.1 255.255.255.0 R1(confi…

web网站添加ico图标

上线的网站都会配置ico,红框位置的图标 配置方法: 1、选择一张正方形的图片 2、打开ico在线制作网站,我推荐 https://www.bitbug.net/ 3、上传图片,并选择ico大小 4、生成好的图片浏览器会自动下载到本地,将图片命…

关于某些网站的图片盗链功能,相关http 请求的解决方法

其实 关键就是 header中 的 Referer 属性,可以通过firebug 查看头信息 并获得Referer,但有些情况下可能不能获取,就只能通过抓包的方法来获得了。 [java] view plaincopy print?import java.io.BufferedInputStream; import java.io.Buffer…

技术网站

联合主办 IT168(http://www.it168.com/) 中国最具影响力和权威的IT导购、应用资讯专业网站。创立于1999年,为个人和企业进行IT产品购买及应用提供服务,在用户群体中拥有极高知信度和忠诚度。 旗下支持媒体:China Unix…

技术网站

联合主办 IT168(http://www.it168.com/) 中国最具影响力和权威的IT导购、应用资讯专业网站。创立于1999年,为个人和企业进行IT产品购买及应用提供服务,在用户群体中拥有极高知信度和忠诚度。 旗下支持媒体:China Unix…

新建 SharePoint 网站集

进入管理中心,主菜单选择“服务设置”选项卡,此菜单选择SharePoint Online 点击网站集的“新建”按钮,看到新建ShartPoint Online网站集对话框 填写一些信息 然后点击“创建” 创建完成将得到以后界面提示 然后将在网站集列表中看到网站集列…

《大型网站技术架构:核心原理与案例分析》

大型网站架构演化大型网站软件系统的特点大网站架构演化发展历程初始阶段的网站架构应用服务和数据服务分离使用缓存改善网站性能使用应用服务器集群改善网站的并发处理能力数据库读写分离使用反向代理和CDN加速网站响应使用分布式文件系统和分布式数据库系统使用NoSQL和搜索引…

零基础网站建设 wordpress建站 wordpress安装(图文详解)

一、安装wordpress前的装备工作: 1、腾讯购买域名;进入域名控制台,进行域名实名认证; 2、购买服务器,提交备案申请。本文以百度云服务器为例。 二、安装wordpress: 1、下载FTP工具并安装:Fi…

那些堪称软件神器的工具或网站

转载:http://blog.sina.com.cn/s/blog_7f5571aa0102vvvs.html 那些堪称软件神器的工具或网站维棠 - 全新的视频体验:秒杀各类视频网站(去找第三方做的绿色版吧……官方广告太多了)。 Internet Download Manager: the fastest down…

6款强大的jQuery插件 创建和加强网站布局

Javascript打开了web设计的大门,给了Html和CSS更宽广的舞台。HTML5和CSS3又比从前进步了一大截。神奇的根源来自 JavaScript,它可以向你的网站布局中加入交互元素。以jQuery Masonry为例,它转换常规的布局,到一个真正的动态布局&a…

为你的网站介绍10个非常有用的jQuery插件

本文介绍的插件涉及图像、paypal支付、分页、导航等方面的内容。 1.AJAX-ZOOM 图像缩放 & Pan Gallery, 360 对象旋转 (Spin), 全屏视图. 在线演示 here . 2.(mb) verticalSlider 显示长列表的绝佳方式,在线演示 here . 3.More plugin 该插件主要用于评论…

漫谈网站开发规范

任何一个项目或者系统开发之前都需要定制一个开发约定和规则,这样有利于项目的整体风格统一、代码维护和扩展。由于Web项目开发的分散性、独立性、整合 的交互性等,所以定制一套完整的约定和规则显得尤为重要。本文档将定制一系列约定和规则,…

21个为您的网站和博客提供的免费视频播放器

很多设计师在都会在他们的网站使用视频播放器 。在线视频播放器无需为简单的用户和Web开发人员提供过多的介绍,它简单易用,为您建站时提供了灵活性和创造性,您可以添加无限数量的视频,并根据你的想法安排它们的专辑标题、艺术家的…

国外15个免费网页模板下载的集合网站

一个优秀且免费的网页模板对设计者的意义不用多说,不但可以节约我们大量的时间提高我们的设计效率,更为我们省下一些模板费用,更进一步我们还可以通过这些网页模板源文件提高我们的设计水平。下面与大家分享的是精选国外15个免费网页模板下载…