智慧燃气大数据服务平台技术方案V3.0
需求与功能需求。因此针对xxx系统将主要从两个方面来考虑应用软件的扩展能力,包括软件功能的扩展与软件处理能力的扩展。
软件功能的扩展:软件功能的扩展性决定了支撑系统是否能够?随需应变?,以及在功能变化与扩展过程中是否能够保证软件基础结构与核心功能的不变与稳定性,而不是简单的采用代码修改的方式增加软件功能最终导致软件的臃肿与崩溃。 在本次系统建设中,将通过以下手段与设计策略来保证最终应用的高度扩展性,以帮助运营商快速的支撑新业务与业务的调整。
xxx网上大数据营业厅系统采用基于组件的软件分析、设计与开发方法进行构建,通过对燃气行业业务的深入理解与抽象,将支撑系统软件在现有的分层化的基础上进一步模块化与组件化,同时抽离出独立的、公共的、具有扩展接口的业务引擎与组件作为上层应用运行与开发的基础,并在此独立的通用业务运行与开发平台上进一步对该平台中的业务组件进行扩展或者开发新的业务组件以满足客户化的需求与功能要求。这种方式给应用软件的扩展的带来的两大核心好处是:
1. 具有良好的、快速的、基于标准接口的应用扩展性。软件功能的扩展不
再是简单的现有代码修改,而是在现有平台的基础上通过增加新的业务组件、更改相关的软件配置与流程定义、基于现有组件开放的二次开发接口进行新功能的实现。各种业务功能不再是固化的,而是可变可增加的。同时由于基础的业务平台屏蔽了较多的底层平台的差异与技术细节,并且实现了大量的公共业务功能与引擎,这使得二次开发与扩展工作可以更加快速的进行并满足需求。
2. 提高了系统扩展过程中应用软件的稳定性。在现有各业务支撑系统中,
常常出现由于大量的新业务需求对应用功能带来的变化,大量的修改常常带来应用架构的脆弱,并最终体现到生产系统中,带来较多的系统隐患,有的甚至直接影响到客户服务的正常提供。在这种功能扩展方式中,强调了核心平台与业务功能的通用与重用,以及业务功能开发人员不再关注底层引擎与平台的变化,一方面,核心的业务功能在不断的重用过程中得到完善,另一方面,业务开发人员可以更加专注于业务功能的开发,提高软件的质量。
20
智慧燃气大数据服务平台技术方案V3.0
此外,从管理上设置了专门的业务分析与软件设计部门与岗位,充分保证在业务发展的过程中能够及时跟踪业务的发展与变化并分析,且对相关的软件架构进行必要的及时的调整,并进行针对性的设计,以保证软件功能的稳定快速的扩展。
软件处理能力的扩展:随着用户量与业务量的发展以及新业务功能的不断推出,应用软件需要在系统最初的设计容量范围内满足更高的处理性能要求,包括请求相应时间、并发数量、实时业务处理能力等。软件处理能力的扩展一方面要求软件设计与开发时能够提高单位处理的效率,另一方面要求软件能够在不修改的情况下提高处理吞吐量,xxx系统关键的处理能力扩展相关的设计考虑包括:
1. 采用可配置的多通道并行处理思想设计关键应用,通道扩展能够跨越服
务器边界,如在业务系统中能够把处理部分用户标识号对应的服务使用记录的处理迁移到位于另外服务器中的独立通道进行处理;在联机充值系统中能够动态调整充值处理通道的数目等;
2. 各类交易与WEB应用服务器均可以通过相关参数配置的调整灵活改变系
统处理能力,并能够针对各类业务进行独立的调整。如在业务高峰期间适当限制较大批量数据的联机请求处理,而增大联机事务处理的吞吐量;而在业务低峰期则又可以重新调整配置以降低相关处理通道的数目;此外在进行软硬件平台的选型时也充分考虑基础软件的处理能力扩展性,比如动态负载均衡能力、软件集群能力等,以满足在业务量增大时可以灵活的调整系统配置部署。
2.1.6.3 稳定性,高效性和易维护性
?
数据库
MySQL数据库服务器的master-slave模式,运用 数据库服务器在主从服务器间执行 同步,运用 只把数据写到主服务器,而读数据时则根据负载选择一台从服务器或者主服务器来读取,将数据按不同策略划分到不同的服务器(组)上,分散数据库压力。
21
智慧燃气大数据服务平台技术方案V3.0
? 缓存
运用缓存能有效应对大负载,减少数据库的压力,并显著提高多层运用 程
序的性能 ?
独立的图片服务器
对于Web服务器来说,不管是Apache、IIS还是其他容器,图片是最消耗资源的,于是我们有必要将图片与页面进行分离,这是基本上大型网站都会采用的策略,他们都有独立的图片服务器,甚至很多台图片服务器。这样的架构可以降低提供页面访问请求的服务器系统压力,并且可以保证系统不会因为图片问题而崩溃,在应用服务器和图片服务器上,可以进行不同的配置优化,比如apache在配置ContentType的时候可以尽量少支持,尽可能少的LoadModule,保证更高的系统消耗和执行效率 ?
服务器集群与负载均衡
CDN : 通过在现有的Internet中添加一层新的网络架构,将站点的内容揭晓到最接近用户的cache服务器内,通过DNS负载均衡的技能,判断用户来源就近访问cache服务器取得所需的内容,处理 Internet网络拥塞状况,提高用户访问站点的响应速度,如同提供了多个分布在各地的加快器,以达到高速、可冗余的为多个站点加快的目的。
2.1.6.4 性能设计
?
数据分割DCP(Data Channelized Partition)
当用户数进入千万量级,xxx系统两级组织结构的数据存贮量将达到十几个至几十个TB。合理的数据分割是xxx系统整合成功的关键所在,xxx系统的数据分割设计保证了xxx系统的处理性能。 ?
并行和负载均衡技术
xxx系统是全面的分布式系统,通过专有的根据大容量数据特点进行设计的
22
智慧燃气大数据服务平台技术方案V3.0
数据处理引擎和核心中间件技术,使得每一台服务器的数据协同并行、并发操作;
xxx系统通过核心中间件技术中的负载均衡计划,会将负载均衡地分担到每一台服务器上去。
xxx系统继续保持VPP、GSP等核心中间件多线程技术,多个线程之间充分共享CPU、内存、I/O等资源;
xxx系统继续利用各大数据库专用的快速批操作特点,保持快速处理和快速入库。 ?
运行数据分布技术
实时性和数据充分共享要求在xxx系统中运行数据在一处存放,而xxx系统的处理性能和业务并发性又要求运行数据进行适当冗余。
在xxx系统中全网涉及到如下运行数据会在多个子系统中存在?主备?、?主从?关系,所谓?主备?关系,即为A子系统存在U运行数据,B子系统存在U运行数据(或其子集)的实时或定时备份,B子系统访问U运行数据在自己子系统数据中进行,则称A、B子系统对运行数据U存在主备关系;所谓?主从?关系,即为A子系统存在U运行数据,B子系统不存在U运行数据(或其子集)的备份,B子系统访问U运行数据采用实时调用A子系统业务逻辑进行,则称A、B子系统对运行数据U存在主从关系。
2.2 建设思路
系统基于微信公众平台,建议web+app方式接入管理。终端以安卓、苹果智能手机为主,客户端程序以APP应用方式实现,操作简便、易于上手,后台系统采用B/S架构,实现移动终端+ PC的可视化协同管理。 2.3 系统开发环境
2.3.1 网络环境硬件拓扑图
系统拓扑图如下。
23
智慧燃气大数据服务平台技术方案V3.0
内网用户数据库服务各类应用…… Web应用服务器(信息系统应用模块)外网防火墙外网应用(未来) 移动互联应用实现跨平台的M/B/S自动整合生成技术:实现适合于各主流移动操作系统的行为模板抽象集成,对于业务逻辑、流程实、信息交互和用户终端管理等各项功能。显著提高了移动应用的实现效率并完整实现了与现有的B/S技术的无缝融合,企业将信息架构向移动互联网发展提供了强有力的技术保障。
2.3.2 平台技术开发环境
2.3.2.1 概述
平台采用以下多种不同的技术和开发环境,实现Web,App,微信的各项功能. A. Java jdk1.5及以上 B. 开发工具: Eclipse A. IOS SDK
B. 开发工具:X-CODE C. Android SDK
D. Eclipse ADT开发插件
24