`
java.guru
  • 浏览: 67027 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

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

阅读更多

YMU技术架构

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

<o:p> </o:p>

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


<o:p></o:p>

YMU数据库系统设计原则

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

性价比

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

伸缩性

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

<o:p> </o:p>

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

<o:p> </o:p>

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

<o:p> </o:p>

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

<o:p> </o:p>

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

可靠性

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

<o:p> </o:p>

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

<o:p> </o:p>

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

  • <!---->DRBD,即Distributed Replicated Block Device,是LINUX下的第三方工具,它在block层次实现数据的复制功能;
  • HB(Heart Beat):是LINUX下的第三方工具,它可监测服务器运行状态,当主数据库出现问题时,可自动切换到备份服务器;它与DRBD结合,可实现MySQL的自动切换功能;
  • <!----><!---->REPLICATION:可配置为master-slave模式,此时slave数据库可作为只读数据库以减轻master数据库的压力。
分享到:
评论

相关推荐

    YMU837介绍资料.pdf

    YMU837的应用场景包括车载音频系统、音频处理系统和音频输出系统等。该产品还支持高质量的音频处理和音频输出。 结论 YMU837是雅马哈公司推出的新一代车载DSP产品,具有高性能和高质量的音频处理能力。该产品支持...

    雅马哈音频处理器ASDP YMU836 datasheet

    1. designing with safety:在设计音频系统时,需要考虑到音频处理器的安全性,避免音频处理器的故障或错误使用导致的危险。 2. preventing fire and smoke:在设计音频系统时,需要防止音频处理器的故障或错误使用...

    ymu-have-a-nice-day

    √支持SPA + PWA √完全使用TypeScript √支持响应式设计√有用的照明工具√有用的照明组件√LodableComponent(基于动态导入) √非常快的第一屏√为静态页面服务创建 去做 [√]动态导入 [√]最高负荷进度栏 [√]将...

    How to use microcontroller to play audio files with an external I²S audio codec

    在嵌入式系统设计中,如果需要播放高质量的音频内容,使用I2S协议是一个非常合适的选择。通过本文档所提供的信息,我们可以更好地理解STM32F103xx微控制器的I2S特性,并且掌握如何将这一功能应用于实际项目中,以...

    PotPlayer64位

    最棒的视频播放器,windows10完美运行。

    教育精品资料消防站主体工程监理实施细则新.doc

    该文档是关于天津经济技术开发区二级消防指挥中心及第四消防站土建工程的监理实施细则,主要涉及建筑的基础、结构、材料选择、施工工艺以及监理工作的依据和控制要点。以下是相关知识点的详细说明: 1. **工程概述*...

    virtual-tutor

    在当前的信息时代,虚拟辅导服务通过在线平台,让学习者可以随时随地接受专业导师的指导,打破了时间和空间的限制,极大地拓宽了教育资源的可及性。在这个项目中,我们关注的是一个名为"virtual-tutor"的应用程序,...

    Vmware8.0 - 471780 X32+X64 汉化包(修正版)

    //QUFodHRwczovL2RsbTIudm13YXJlLmNvbS9ha2RsbS9zb2Z0d2FyZS93a3N0L1ZNd2FyZS13b3Jrc3RhdGlvbi1mdWxsLTguMC4wLTQ3MTc4MC5leGU/SGFzaEtleT1kNzA...3XzE5MjViY2I0NjE2YmU4NzgyZWExYTg1ZGU4NDVjYTFmJmZpbGVFeHQ9LmV4ZVpa

    Plotting Gaussians in Matlab

    y = ymu - 2 * maxsd : 0.1 : ymu + 2 * maxsd; ``` 5. 使用`meshgrid`函数生成用于绘制的网格数据: ```matlab [X, Y] = meshgrid(x, y); ``` 6. 计算网格上的每个点处的高斯函数值,并使用`surf`或`contour`...

    模拟技术中的Yamaha的手机声音芯片包含D类放大器

    综上所述,Yamaha的AudioEngine手机声音芯片凭借其集成的先进技术,不仅在音频处理上表现出色,还在功能和封装设计上展现了高度的集成性和便携性,为移动设备的音频体验设定了新的标准。无论是对于音乐爱好者、游戏...

    Guitar-Tutor-For-All

    吉他老师全 一些没有JavaFX构建的GUI的导师的源代码,我们无法提供Code Tutor和Ditty Tutor的源代码。每个导师的接口都是java swing。请下载并在JRE 1.6或更高版本的环境中运行。

    模拟技术中的Yamaha推出包含D类放大器的手机Audio芯片

    在电子技术领域,模拟技术是不可或缺的一部分,尤其在音频设备设计中。Yamaha作为一家知名的音频设备制造商,一直在模拟技术方面拥有深厚的技术积累。最近,Yamaha推出了一款专为手机设计的AudioEngine声音芯片,它...

    turkish-stemmer-python:用于Python的土耳其语词干

    这个词的词干是“ doktor”,它带有三个不同的后缀-sU,-ymUş和-sUnUz。 从“雪球描述”中: 词通常由词干和至少附加两个或三个词缀组成。 我们可以分析土耳其语中的名词后缀两类。 名词后缀(例如“ doktor-um...

    harmonyos2-elasticsearch-analysis-turkishstemmer:ElasticSearch分析插件提供土耳其

    -sU、-ymUş 和 -sUnUz。 来自“雪球描述”: 单词通常由一个词干和至少两个或三个附加在词干上的词缀组成。 我们可以分两组分析土耳其语中的名词后缀。 名词后缀(例如“doktor-um”意思是“我的医生”)和名词动词...

    harmonyos2-turkish_stemmer:一个简单的土耳其语词干库

    -sU、-ymUş 和 -sUnUz。 来自“雪球描述”: 单词通常由一个词干和至少两个或三个附加在词干上的词缀组成。 我们可以分两组分析土耳其语中的名词后缀。 名词后缀(例如“doktor-um”意思是“我的医生”)和名词动词...

    libz.so.1+libz.so.1.2.11 centos rocky原始文件2024

    rpm:error while loading shared libraries: libz.so.1: cannot open shared object file sudo: error in /etc/sudo.conf, line 19 while loading plugin "sudoers_policy" sudo: unable to load /usr/libexec/sudo/...

    CubeMonitor流程配置

    CubeMonitor流程配置

Global site tag (gtag.js) - Google Analytics