手机之家新系统架构解析:从零到全开源

需积分: 0 2 下载量 128 浏览量 更新于2024-08-01 收藏 493KB PPT 举报
"手机之家新系统介绍及架构分享" 本文主要介绍了手机之家的新系统及其软件架构。手机之家是一个专注于提供手机相关服务的网站,包括资讯、论坛等多元化功能。随着其发展,原有的系统面临着一系列挑战,因此进行了全新的系统设计与重构。 在新系统介绍部分,我们了解到手机之家已经经历了从无到有的转变,积累了大量用户和数据。新系统的主要特点包括: 1. 全面重构:从头设计,采用开源软件,并且对整个系统进行了重新编码。 2. 技术栈选择:使用了MVC框架、模板引擎、JS框架构建Web层;基础组件包括简单的glue、Monkey(Java NIO框架)、JMCL等;中间件则包含DAL(Data Access Layer)、JMCD、Session、Tools等。 3. 混合编程语言:结合PHP和JAVA,利用各自的优势进行开发。 4. 操作系统与服务器:选择CentOS 5作为操作系统,数据库使用MySQL 5,Web Server使用Nginx。 5. 自研组件:开发了小文件存储系统和基于Lucene的搜索系统,以提升性能和用户体验。 在软件架构分享部分,文章讨论了架构的演变过程及其遇到的问题。旧系统存在的问题主要包括: 1. 模糊的分层:导致问题定位困难,难以确定错误发生在哪一层。 2. 直接的DB访问:Web服务器直接访问数据库,导致在高并发时数据库服务器频繁崩溃。 3. 数据表设计不当:不利于垂直和水平扩展。 为解决这些问题,他们采取了纯PHP的分层方案: 1. 明确分层:分离页面展示、数据访问和业务逻辑,使代码结构更清晰。 2. 缓存管理:虽然减轻了数据库压力,但程序员需要手动处理缓存,导致代码维护复杂。 尽管这个纯PHP分层方案改善了旧系统的某些问题,但它也带来了新的挑战,如大量重复的代码和分散在业务逻辑中的缓存处理。 手机之家的新系统设计注重了可扩展性、性能优化和代码维护性,通过引入现代架构和开发实践,提升了整体服务质量。在应对高并发、数据处理和用户需求方面,新系统显然更具备竞争力和适应性。