粘贴是功能性产品,但不迅速打破是永恒的准则。这个特点决定了快速迭代是需要解决的重要问题。快速迭代、分解有以下部分:开发阶段、快速开发;测试阶段包括快速构建环境、自动化测试工具。包括群集管理技术、自动操作和维护工具在内的操作和维护阶段同时,这三方面的工作需要一个整体解决方案。
作为早期贴吧、高性能社区,功能相对单一,都是用C语言开发的,系统复用水平低,开发、测试效率低,运营维护积累也少。为了提高效率,我开始尝试LAMP体系结构,经过几年的发展,贴纸全部迁移到LAMP。随着产品规模的急剧膨胀,30子系统、150模块、500机器、10亿流量在LAMP体系结构中积累了很多经验,形成了快速迭代的集成方案。如下图所示。
该解决方案包括开发阶段、测试阶段和生产阶段。开发阶段分为访问层、业务逻辑层和存储层。此解决方案支持大型在线应用程序,同时保持快速迭代功能。基于此解决方案,开发人员可以专注于开发业务逻辑,测试人员可以专注于持续集成,大大降低运营和维护成本。
开发
开发方面分为访问层、业务逻辑层、存储层。
访问层位于浏览器和后端服务之间,通过解析http协议并将其配置为适当的协议格式,完成客户端和服务器之间的通信,并包含防止攻击、页面缓存、负载平衡等多种功能。web服务器是关键组件。访问层的目标是通过集成方案提供简单可靠的访问层体系结构。nginx全面研究了通用性、效率、功能性、配置灵活性等特征,可以确定nginx统一访问层,作为Web服务器未来发展的主力军。
业务逻辑层包括PHP框架、业务逻辑、LIB库和交互层。商业逻辑层往往包含法律等发展规范。我们不仅要有法律依据,还要有法律依据。(David Assell,Northern Exposure(美国电视剧),成功)在戴尔解决方案中,PHP框架=规范库、目录分发规范、URL规范、配置规范等规范通过相应的库实施,以达到法律目的。
LIB库封装了常用的功能。基于此解决方案,开发人员只需完成业务逻辑部分即可开发应用程序。
如下图所示,中间层包含在业务逻辑层中,对业务逻辑层的快速迭代至关重要。中间层是支持多种协议屏蔽协议细节的交互抽象。屏蔽布置细节通过资源定位;通过负载平衡提高系统稳定性。中间层是支持服务集成、接口适应、公共逻辑的接口抽象。
中间层首先建立系统-子系统-模块系统,然后进行服务集成。图中的API-LIB根据子系统分区将每个模块的接口(MIDL 3360模块IDL)转换为子系统接口(SIDL 3360服务IDL)。界面适应、通过SIDL描述的服务接口、界面描述、界面文档、在线代码等的自动同步、服务功能增强、通过元数据规范确保整个系统的接口一致性、易用性提高聚合公共逻辑、权限逻辑等公共逻辑,极大地提高了可服务性。
提供多种通用服务和组件的存储层通用数据存储框架是支持大多数数据存储模块设计和实施的集成设计模型,提供通用数据存储和访问解决方案。统一数据访问接口、外部屏蔽数据分区和存储的详细信息通用数据分区模型,以应对数据增长,提高数据存储的可扩展性。通过将共同需求抽象为共同服务或共同库来简化设计和开发。
要基于此解决方案开发应用程序,只需在访问层配置适当的过渡,在业务逻辑层开发业务逻辑,并使用适合存储层的服务或框架完成数据模块开发。可以大大提高开发效率,支持快速迭代。
测试
为了在测试方面支持快速迭代,必须提高自动化水平。影响自动化的第一个因素是环境的自动构建。常见的问题是复杂的环境,例如复杂的关系。环境建设费用太大。环境功能不全。采用基准环境可以解决此问题,当项目在线时,scmpf会自动更新到基准环境中。测试/开发环境在基准环境中同步。根据基准环境的不同,可以实现系统级的持续集成,并可以集中各种测试工具。
运维
操作和维护存在很多问题。服务迁移成本高,环境不一致带来各种回滚,机器利用率不均衡,操作和维护自动化程度低。为了解决这些问题,提出了PHP系统运行和维护方案。环境同步,主要针对代码同步问题,运维规范监控程序使用性能监控,基于交互层完成请求状态,监控交互性能,基于调度中心获取系统状态对于机器调度,通过调度中心完成动态/半自动机器调度。如下图所示。
展望
通过此LAMP解决方案,您可以在开发、测试、操作和维护方面显着提高效率。未来,在LAMP体系结构方面,规范化、平台化需要更多的努力。只有制定规范后,才能开展这种自动化业务,提高效率。平台化可以固化各种规格,提供自动化支持。
1.《lamp架构专题之百度贴吧--10亿量级LAMP架构分享》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《lamp架构专题之百度贴吧--10亿量级LAMP架构分享》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/keji/1954597.html