在线培训系统平台架构简介_第1页
在线培训系统平台架构简介_第2页
免费预览已结束,剩余4页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、在线培训系统平台架构简介一、技术架构在线培训系统完全基于云架构进行设计、开发、部署。平台部署在Linux 操作系统上,采用目前运行稳定,安全性很高的 JAVA 语言开发,使用开源的 MySQL 数据库存储数据,可以在平台上部署 Redis、Memcache MangoDB Node.js、Hadoop 等着名的第三方开源软件,支持万人以上规模的用户并发访问。整体上看,这种在线培训平台具有速度快、稳 定性强、安全性高、易于扩展的特点。下图是在线培训系统的架构图:二、架构特点这种架构具有安全性高、稳定性强、运行速度快的特点,从一台服务器到集群服务器再到分布式部署,这种云计算平台都可以轻松胜任。下面

2、详细介绍下平台架构的特点:操作系统操作系统采用 Linux 作为整个平台的操作系统。Linux 操作系统自诞生以来,一直以稳定性、开放性着称。对比Windows 操作系统,Linux 操作系统拥有相当多的优点,这些优点可以帮助我们更好的对平台进行管理,保证平台能够 高效、安全、稳定的运行。1.免费并开源相比 Windows 操作系统的昂贵费用,Linux 操作系统免费的特点非常具有竞争优势。因为免费,所以 Linux 操作系统在服务器平台上拥有比Windows 操作系统更广泛的用户群体。而开源的特性更是让世界范围内的优秀开发人员和着名企业为 Linux 贡献高质量的代码,保证Linux 操作系

3、统能够得到及时改进,从而建立了完善的软件生存环境。对比Windows,作为纯粹的商业软件,Windows 不可避免的采用封闭策略,所有Windows 的功能只能由微软公司自己开发和维护,这种特性导致了 Win dows 在产品改进的及时性上、新技术应用的有效性上打了折扣。Linux 和 Windows 平台的横向对比,如下图:比较项目LinuxWin dows结论基本安全性严格区分内核空间和用户空间,并提供对 SELinux 的支持,可提供 B1 级的安全支持。将许多功能集成到内核, 内核集 成的应用越多,其运行风险也就 越大。Linux 更优网络安全性支持 OpenSSL, OpenSSH,

4、 IPSec支持 SSL, SSH, IPSec两者相当协议支持Linux 遵循所有的开放标准部分遵守,但仍有一些私有协议。“标准”代码私有,使得缺 陷检测和错误修正更困难,修复 周期长;另外,私有协议使得异 质系统间的互操作性受限。Linux 更优易用性可以满足基本的办公需求,冋类软件选择较多;软件易用性较咼;Win dows 更优软件成熟较 Windows 稍逊;有较好的用户基础,用户对Win dows 的熟悉程度较咼现有用户对Linux 的熟悉程度不高软件成本Linux 不需要软件授权费用;Windows 需要高昂的软件授权费用;Linux 更优同时包含了多种免费的办公应用软件;其他办公

5、应用软件需要另外付费购买;维护服务费用低;维护成本高;硬件成本Linux 可以在低配置的机器上正 常运行,可以重复利用现有设备。Windows 对系统的要求较咼,需要硬件升级或者重新购买终端 设备。Linux 更优系统稳定性Linux 最初是针对服务器的一款 产品,广泛应用于各类核心服务 应用,在稳疋性方面Linux 优势明显。Windows 主要针对桌面用户,其 稳定性与 Linux 相比有较大的差 距;Win dows 和它的用户界面是无 法分开的,用户界面崩溃,对用 户来说就相当于操作系统崩溃。Linux 更优服务支持目前很多 Linux 厂商在国内都有核心的研发团队,本地服务支持能力强

6、由于知识产权的问题, 导致操作系统部分的开发不会在国内进行,服务支持能力有限Linux 更优可定制性Linux 本身具有很强的可塑性,用 户可根据需要对操作系统进行裁 减定制,将不必要的应用删除或 者禁用。Windows 将很多功能都集成到系统内核之中,这使得很难对其进行裁减定制。Linux 更优病毒危害病毒少,故障维护成本低;病毒多,一旦系统大规模感染和可能导致整个系统瘫痪,故障维护成本高;Linux 更优2.安全性Linux 操作系统因为开源的原因,代码可以被任意修改和查阅。因此,任何 Linux 的漏洞都可以被数以万计的研发 工程师及时发现并提交补丁进行修正。在这一点上,封闭的Windo

7、ws 操作系统只能靠着微软公司内部的几十名研发人员进行修正。优劣胜负,立见。我们可以用一个表格来对比Windows 和 Linux 操作系统在安全性上的差别。如下图:分类特性Li nuxWin dows定性得分基本安全验证、访问控制加密、记帐/日至可插入的认证模块、插件模块、Kerberos、PKI、Win bi nd、?ACLs、?LSM、SELinux、?受控的访问保护实体检测、内核加密Kerberos、PKI、?访问控制列表、受控的访问保护实体 检测、微软的应用程序加密 程序接口。Linux?更加出色网络安全验证、层、网OpenSSL、Open SSH、SSL、?SSH ?LDAR ?A

8、D两者都很不与协议络层OpenLDAP ?IPSec?IPSec错防病毒、?防火墙、?入侵OpenAV ?Panda、?TrendMicr应用安全检测软件、?Web 服务器、?电子o、?内核内建的防火墙功 能、?Snort、?Apache、?sendmail 、 ?Postfix 、?PKCSMcAfee、?Symantec、?CheckPoint、?IIS、?Exchange/Outlook、?PCKS 11Linux 略胜一筹邮件、?智能11、?exec-shield卡支持安装、?配安装与配置工具、Bastille 、Windows 自带的安装和配置分发与操置、?加固、?大部分的管理通过命

9、令行完工具、没有特定的加固工两者都很不作管理、?漏洞成、?Nessus、?发行版相关的具、?管理 GUk?使用默认错扫描器Up2Date、?YaST ?Webmin安装的配置。确信度常见的公共 标准证书、?缺陷处理Linux 达到了 ?EAL3,有较好的缺陷处理能力Windows?达到了 ?EAL4,有较好的缺陷处理能力Win dows 更加出色IPSec、?POS开放标准IX、传输层安全、?常见标 准Linux?遵循所有的开放标准Microsoft 也参与了开放标准,但仍有一些私有标准。Linux 更加出色3性能Linux 的稳定性是由于它没有像其它操作系统一样内核如此庞大、漏洞百出。Lin

10、ux 与其它 Unix 系统和大型操作系统如 VMS IBM 大型机等一样具有相同的可靠性。原因并不难以得到,系统的稳定性主要取决于系统设计的结构。连 续向后兼容性使那些编程风格极差的应用软件勉强移植到Windows 的最新版本,这种将就的软件开发模式极大地阻碍了系统稳定性的发展。Linux 所共享的 Unix 设计体系是经过长期实践考验的,Linux 吸取了 Unix 系统近 1/4 世纪发展的经验,Linux 操作系统体现了最先现代化操作系统的设计理念和最经得住时间考验的设计方案。最令人注目的是Linux 开发源代码的开发模式,这保证了任何系统的漏洞都能被及时发现和改正。三、数据库架构 数

11、据库是麦塔在线培训系统运行的基础,随着平台运行时间的增长,数据量的增长也会达到海量级别。因此,一个好的数据库架构设计对于网站未来的发展起到了决定性作用。根据业务的发展,数据库的架构在不同的阶段有不同 的侧重点。第一阶段:MySQL 主从架构这是系统的初级阶段,这个阶段的重点是实现平台的重要功能,数据库架构只要能满足初期应用的需求即可。 第二阶段:按功能分配机器这一阶段的重点是:优化表结构,索引,查询。不着急加服务器。向外扩展- 按功能将数据库分开,提高内存使用率,变相增加了内存第三阶段:为从库的读取业务增加缓存机制随着数据量的增长, 从库的读压力变的很大, 从库 io 出现问题,增加从库几乎不

12、能解决问题, 应该想办法减少 io 操作。减少io 操作可以采用以下办法:- 增加机器的内存向上扩展- 应用层添加缓存向外扩展- MySql 服务器配置优化优化跟 io 有关系的配置信息第四阶段:增加 NoSQU 服务,再次扩展。这一阶段增加 Redis 作为 Session 缓存,减轻主库一部分写压力。第五阶段:按功能分库这一阶段随着网站运营不断深入, 新的板块开始上线, 为了减少主库 io 操作, 按业务将数据库分成多个主从结构, 将写的压力分散到多个数据库上第六阶段:水平分表,解决单表数据膨胀的问题这一阶段会遇到单表数据过大、 运维需求增多、 业务转换较大, 这些问题直接导致从库的 io

13、 压力直线上升。 因此, 将单张表拆分到多个数据库中, 从而将数据尽量装入内存, 从而减轻从库的 io 问题。 当网站规模达到这一层次的时候, 数据安全问题非常突出,这时候,异地备份变得至关重要。以上这些是在平台运行不同阶段我们会遇到的不同问题所采取的解决方案。多年的运维经验告诉我们,好的架构 不是设计出来的,是逐步改进出来的!四、系统结构 好的运行架构也需要好的平台架构,好的平台架构应该具备低耦合、高内聚的特点,因此,开发并设计一套扩展 性极强、效率非常高的平台框架十分重要。如下图:这套架构中,应用层负责实现平台的所有业务逻辑,为了实现更高的运行效率和更好的扩展性,可以把应用层分成 Mode

14、l、View、Control、CO 侧个部分。Model 层负责数据库的操作,我们把数据库的脚本都写在这里,对日后的快速维护很有帮助。View 层负责将数据展示在 Web 页面上,采用了 HTML 和 jQuery 作为标准的前台开发语言。在 View 层,开发独立模板技术。将美工的设计和前端工程师开发完成的HTML 页面交付产品经理审核,这些HTML 页面可以直接在浏览器上运行。产品经理检查无误后,直接交给后端开发人员,开发人员直接将HTML 页面复制到 Views 文件夹中即可,由自行开发的 HTML解析引擎将 HTML页面中的 JSP部分解析出来。 这一套模板引擎技术可以极大的增强前端工程师和后端工程 师的配合效率,有效的提高了平台功能的开发速度。Contr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论