YMU技术架构及数据库系统设计原则

YMU技术架构

YMUYouMonitor.Us网络是遍布全球的网站监测网络,它利用P2P技术提供新型的网站监测服务,网络参与者通过贡献YMU-Node来得到全球分布的、免费的24x7网站监测服务。YMU-Node指监测节点,是YMU网络中的一个节点,是成千上万的监测客户端之一。YMU网络体现了互联网时代“我为人人,人人为我”的共享精神。

 

YMU是互联网上的应用,它面临的是海量数据及高并发访问的环境,我们需要采用大规模分布式技术和工具来进行YMU的开发和运营。基于对现有技术、工具和网站等的考察,我们决定采用LAMJ(LAMP)架构来进行YMU的开发。LAMPLinux, Apache, MySQL, Php/Perl的缩写,是目前很多web应用的基础架构。LAMP是成为开源的、可靠的、低成本的,发展到今天,其已成为web应用开发平台的标准。我们使用JAVA来代替其中的Php/Perl,并增加Tomcat用作动态内容。

 

YMU数据库系统设计原则

一般来说,对大型网站系统,设计数据库系统时需要考虑到性价比、伸缩性和可靠性等关键指标。

性价比

从性能和性价比等各方面考虑,我们觉得MySQL应该可以满足YMU的需要。

伸缩性

伸缩性是很重要的指标,它指当数据量不断增大、并发访问量不断增加的情况下,数据库系统如何方便扩充以容纳海量数据,并保持高效访问的方案和能力。

 

一般来说,目前存在两种伸缩方式:Scale-upScale-out

 

Scale-up指通过提高硬件能力,如增加更快的硬盘、更多的内存和更多的处理器,来提高数据库处理能力。其好处是确实能提高数据库处理能力;而缺点是企业级别的服务器硬件,如小型机等的价格一般都很昂贵。

 

Scale-out则指通过把数据分布到不同的数据库服务器来提高数据库系统的总体处理能力。其好处是伸缩性更强,而且价格便宜,一般不需要企业级的服务器硬件,只要一般的PC服务器即可满足要求;而其缺点是需要应用程序的配合,程序的复杂性会增加,数据库维护的复杂性也会增加。

 

YMU采用Scale-out方案,采用PC服务器作为数据库服务器,根据客户数目来增加新的数据库服务器以支撑更多的数据及更多的并发访问。

可靠性

可靠性是另外一个重要指标。当WEB系统上线后,需要24x7小时的高效运行,系统DOWN机时间越低越好。

 

目前,YMU采用Replication机制来达到一定程度的可靠性。Replication配置成master-slave模式,正常情况下,WEB系统访问master数据库中的数据,master数据库中的数据被自动复制到slave数据库中。当master数据库出现问题时,我们需要转换slave数据库为master数据库供WEB系统访问。当master数据库修复后,需要从slave数据库中复制新数据,然后再切换为主数据库运行。另外,正常运行时,slave数据库也可作为只读数据库供WEB系统访问,以减轻master数据库的压力。

 

下一步,YMU会采用高可靠性(High Availability)方案,即DRBD+HB+REPLICATION

l         DRBD,即Distributed Replicated Block Device,是LINUX下的第三方工具,它在block层次实现数据的复制功能;

l         HB(Heart Beat):是LINUX下的第三方工具,它可监测服务器运行状态,当主数据库出现问题时,可自动切换到备份服务器;它与DRBD结合,可实现MySQL的自动切换功能;

l         REPLICATION:可配置为master-slave模式,此时slave数据库可作为只读数据库以减轻master数据库的压力。

  <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct = "UA-2977865-5"; urchinTracker(); </script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本文主要总结了在Ubuntu10下常用Java Web应用软件的安装,特别是LNMJ Web(Linux+Nginx+Mysql+Java Tomcat)架构和LAMJ Web(Linux+Apache+Mysql+Java Tomcat)架构下的软件安装。为进一步配置和实现LNMJ和LAMJ架构(负载均衡与集中式Memcached集群)进行前期准备。本文记录了安装过程经常出现的错误,并提供了解决办法,具有很好的实用性,是居家旅行必备之良品。 主要内容有: VirtualBox4.0的安装和配置 包括VirtualBox下网络环境的配置,和主机文件的共享,主机和虚拟机剪贴板共享等内容。 http://peterwei.javaeye.com/blog/968815 Ubuntu10下JDK1.6安装 http://peterwei.javaeye.com/blog/968758 Ubuntu10下Tomcat7安装 http://peterwei.javaeye.com/blog/968774 Ubuntu10下Eclipse3.6安装 http://peterwei.javaeye.com/blog/975129 Ubuntu10下Nginx-0.8.54安装 http://peterwei.javaeye.com/blog/969991 Ubuntu10下Apache-2.2安装 http://peterwei.javaeye.com/blog/975122 Ubuntu10下Mysql-5.1.56安装 http://peterwei.javaeye.com/blog/976422 Ubuntu10下Memcached-1.4.5安装 http://peterwei.javaeye.com/blog/974445 Ubuntu10下SSH2协议安装 http://peterwei.javaeye.com/blog/976944 Ubuntu10下Subversion安装 http://peterwei.javaeye.com/blog/976916 Ubuntu10下中文输入法安装 http://peterwei.javaeye.com/blog/976908 Ubuntu Linux实用命令 http://peterwei.javaeye.com/blog/976950 当然,最后也提供了PDF格式的附件统一下载,方便大家查看。下载后觉得不错的,不要吝啬你的掌声。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值