基于OSGI的电子商务招投标平台的分析与优化

2017-08-29 15:00张栋栋王伟姜海东
电脑知识与技术 2017年21期
关键词:组件架构服务器

张栋栋,王伟,姜海东

(1.北京中电普华信息技术有限公司,北京100192;2.国网信通产业集团,北京100031)

基于OSGI的电子商务招投标平台的分析与优化

张栋栋1,2,王伟1,姜海东1

(1.北京中电普华信息技术有限公司,北京100192;2.国网信通产业集团,北京100031)

为了解决电子商务招投标平台的性能优化,提出了结合现有技术和成熟度进行适用性研究,有效提升物资供应链的集约化管理。文章分析了目前公司电子商务招投标平台的问题现状,从应用域、开发域、数据存储和部署方面提出了优化方案。通过对以上四方面的改进和优化,实现了业务应用、信息数据以及审批流程横向贯通,提高了电子商务招投标平台的数据存储效率和运行的稳定性。

电子商务;招投标;优化;数据存储

在“互联网+”的环境驱动下,互联网与招投标业务相结合促进了招投标业务的电子化发展,实现全国招投标市场信息动态集中交互整合与公开共享,为政府和大型企业的采购与招投标业务提供服务,构建了有序竞争发展的市场。2017年国家推出《“互联网+”招标采购行动方案2017-2019年》,提出培育“互联网+”招标采购内生动力,推动招标采购从线下交易到线上交易的转变,实现招标投标行业与互联网的深度融合。

电子商务招投标平台自从上线以来,经过不断地完善和优化,在提升公司物资管理效率和效能方面取得了显著成绩。但是随着公司物资管理业务规模的扩大,物资集约化管理持续提升,对信息系统全面支撑业务的要求越来越高,电子采购招投标系统在运行中多次出现问题,其系统性能难以全面支撑物资业务的快速发展。

随着电子商务供应商及用户群的不断增加,国内招标投标的市场呈现出快速发展的趋势,招标代理机构达到了约6000余家,年招标项目达到340余万条。招投标平台由政府、央企、互联网公司等不同主体大量建设,在满足招投标业务需求的基础上,有利于促进竞争与发展。但由于不同交易平台之间信息资源不共享和技术存在壁垒,导致市场分割、资源浪费和监管不力等问题,影响电子招投标作用的进一步发挥[4]。通过有序整合资源,统一规则体系,完善运行机制和创新监管体制四个方面,运用大数据等手段实施电子化行政监督,建设现代化市场体系,促进业务交易与公共资源的有效便捷对接[12]。

1 系统现状分析

1.1 现状概述

电子商务平台随着国网公司物资管理业务规模的不断扩大,对信息系统全面支撑业务的要求越来越高,电子商务平台在运行中多次出现问题,电子商务平台的系统性能难以全面支撑物资业务发展。在横向技术分层维度上,目前采用的技术过于庞杂,代码落地的质量不高。在纵向应用架构上,ECP累积了大量的技术债务,有大量新业务需求无法及时响应。而且目前的整体架构与公司十三五的规划差距较大,因此需要分析现状并制定下一代ECP的架构设计与技术方案。

1.2 ECP现状分析

电子商务平台(ECP)支撑覆盖的业务架构总体合理,业务架构也较为稳定,但是系统支撑的业务细节过多,承载了相当规模的非核心日常管理业务,另一方面通过多年的运维团队的工作总结和客户的使用情况,主要得出以下几个问题。

1)应用域现状

应用域对功能模块、组件和接口集成进行分析。通过应用评估和项目文档检视,ECP目前的业务功能分为16个模块、约80个组件,但是80%的业务组件集中在两个主要的应用模块中,高度耦合,很难拆解。ECP集成了11个外部系统,70个接口,有的接口因业务需要部署了数十个实例,系统间交互频繁导致了资源消耗大,执行时间长等问题。

2)开发域现状

开发域对技术架构、代码质量和技术组件化方面尽心分析。ECP的技术架构复杂,技术跨度大,学习成本高,管控

难度大。从代码质量角度分析,ECP系统共有9个工程项目,涉及的代码种类庞杂,通过利用代码质量分析工具Sonar进行统计,ECP系统共有3.2万个代码文件,11大类142种代码文件类型。不同业务线的开发人员采取了差异较大的技术实现。

从技术组件化角度分析,ECP在建设过程中,缺乏对技术组件统一设计和持续的管理,导致相似的功能重复开发,修改和维护成本高,甚至在维护过程中可能导致最终相似组件的行为不一致。

3)数据库存储现状

目前结构化数据存储使用率达到了78%,每月增加250G,年均增长约3.2T,空间不足以支撑未来业务的增长需要,文档图片等非结构化数据每月产生240G的数据量,而且业务高峰期访问效率很低。

4)服务器部署现状

目前,电子商务平台生产端服务共12台,包括数据库服务器2台,内网应用服务器2台,外网应用服务器4台,内网WEB服务器2台,外网WEB服务器2台。服务器操作系统与应用软件资源情况如表1所示。

ECP平台目前整体运行平稳,但是内存使用率在大批次投标时出现短期偏高,后期随着业务量的增长,个别服务器内存使用率达到80%以上,内存出现短周期使用量较高,将会存在数据库响应效率低的趋势。

表1 服务器内存使用率表

2 优化原则与方案

2.1 优化原则

ECP系统属于大型企业级系统,系统架构应当采用关注点分离(Separation of Concerns)方法,从职责划分、通用性程度、分解颗粒度三个维度设计系统架构。

(1)职责划分。每个功能的实现,通过一系列处理过程组成的"协作链条"完成,当不同处理过程被合理分离之后,新功能的实现只需构造新的"协作链条",而需求变更只会影响到少数职责的定义和实现。

(2)通用性程度。利用软件系统各部分的通用性不同进行关注点分离。系统功能通用程度不同变更的可能性就不同,将通用性不同的部分分离有利于通用部分的重用,也便于对专用部分修改。

(3)分解颗粒度。根据业务关系密切度进行功能模块的分解和组装,根据交互关系的复杂度进行大粒度的子系统的分解与集成,形成具有开放性的子系统,有利于系统变更和弹性部署。

系统优化采用的关注点分离原理如下图1所示。横向分层的细化、纵向解耦的引入、通用机制的提取这三个维度不是相互替代的关系,而是相辅相成的关系。ECP系统根据职责划分对系统进行横向分层,根据模块交互关系对系统进行纵向解耦,根据功能组件的通用程度对系统进行通用机制提取设计。

图1 架构关注点分离原理图

图2 应用架构总体设计

2.2 优化方案

新的ECP系统架构,应当基于厚云薄端的原则,将前后端完全分离,实现“一厚云一接口多前端”。前后端通过WEB API接口进行交互,接口设计的一致性便于在多端调用。架构上根据业务功能划分为多个子系统,采用OSGI模块化开发,降低不同子系统间的代码切分,各个子系统的数据从单一数据库划分为多个数据库。从集成架构设计方面,建立电子商务平台独立的接口管理模块,作为分布式企业总线ESB在电子商务“微应用群”的分支。这样既支持“一平台、一系统、多场景、微应用”,又避免了对企业服务总线ESB的过度依赖。

2.2.1 应用域优化

应用架构采用自顶向下,逐步细化的方法,实现纵向业务解耦。将ECP横向划分为8个子系统,并通过服务集成的自顶向下,逐步细化的方法,将系统分解成为一些相对独立、功能单一的应用组件。应用组件划分好内部关系和外部关系,从而可以单独开发和维护,实现“松耦合,高内聚”。应用域的应用架构设计如下图2所示。

1)业务流程组件化

应用解耦的关键设计是具备良好的业务流程组件,从业务架构角度将不同业务场景的相似业务流程抽取归纳为通用业务模块,包括采购组织管理、招投标过程管理、专家管理等业务模块。基于系统层面归纳出来基础服务类组件,包括用户、组织机构、安全审计、电子签章等公共服务的组件。

2)集成接口优化

系统间通讯分为系统内部模块间通讯和外部系统通讯,ECP系统外部集成11个系统,70类接口,系统间交互频繁。ECP系统搭建了集成服务管理模块,为系统间交互提供统一的入口,集中管理系统交互状态和通讯行为。系统间交互设定了权限认证,这部分工作由服务平台统一认证,确保对系统访问权限的控制。

2.2.2 开发域优化

系统采用先进的结构化设计思想和模块化技术,实现了积木式的系统构建。基于“厚云薄端”的理念,实现一后端一接口多前端,对紧耦合系统采用一体化设计,对松耦合系统采用集成化设计。开发域架构优化设计如下图3所示。

图3 开发域架构优化图

前端框架采用独立的技术体系,包括桌面客户端、web应用和手机app,统一遵循模块化和组件化的开发模式,不仅适应多种客户端,而且用户体验大幅度提升。后端架构结合公司“一平台、一系统、多场景、微应用”的整体规划,将ECP应用划分为多个业务子系统,形成独立的开放式的微应用,各个微应用为多场景应用提供规范的入口。同时对子系统之间的访问进行优化,建立接口集成模块作为系统间交互通道,对内部服务进行资源分配和集中管控,内外部服务统一接入服务集成模块,采用REST方式进行服务交互。

2.2.3 数据库存储优化

ECP数据类型主要包括结构化数据和非结构化数据。结构化数据根据业务逐级细化,按照业务功能模块的关系紧密程度,采用垂直划分的方式对业务进行分库,ECP数据切分为1个系统库1个接口库和8个业务库。数据存储采用oracle RAC和集群、缓存等技术,提高数据操作的效率。文件、图片等非结构化文件采用Hadoop大数据平台存储,不仅缓解了大量数据存储的压力,同时便于对大量文本的自动统计与分析。此外,根据时间周期和项目生命周期将项目数据完整的迁移到归档库,保证生产库轻量级运行。

2.2.4 服务器部署优化

部署全部迁移到公司建设的云资源池,提供物理裸机、VM、容器和云存储等计算、存储和网络服务服务。通过应用平台资源池集成了负载均衡,web服务器,应用服务器,数据库服务器和DevOps等资源,为应用域应用提供弹性伸缩的,故障自恢复的PaaS服务,支持应用与数据分离的部署方式,各子系统支持分布式部署、横向扩展,有效的提升业务高峰期的处理效率。

3 结束语

本文结合电子商务平台ECP的案例应用,针对运行中的诊断发现的性能问题,从应用域、开发域、数据库存储和服务器部署方面剖析了系统目前的主要现状。通过组建项目核心研发成员和内外部专家团队,制定并实施了优化系统的解决方案,已经取得了显著的成果。下一步工作将按照公司物资管理业务发展要求,结合公司“十三五”信息化建设总体思路“一平台、一系统、多场景、微应用”,构思基于微服务的新一代电子招投标产品,实现具备多租户和大数据处理功能的SaaS云应用。

[1]陈新玲,范清芬,刘宏杰.PKI/CA技术在电子招投标中的应用[C].电力信息化论文集,2014.

[2]胡建.中电公司电子招投标项目实施研究[D].北京:华北电力大学,2014.

[3]梁辰.腾讯打造开放共享互联网新生态[J].通信世界,2015 (6).

[4]张栋栋,王伟,文爱军.基于组件的电子商务招投标平台的设计与应用[J].电脑知识与技术,2016(5).

[5]张晓峰,李檬,费兰花.国家电网公司电子商务平台系统建设研究[J].中国科技成果,2011(7).

[6]周保忠.基于电子合同的电子商务平台的设计与实现[J].电脑与电信,2015(5).

Analysis and Optimization of E-Commerce Bidding Platform Based on Osgi

ZHANG Dong-dong1,2,WANG Wei1,JIANG Hai-dong1
(1.Beijing China-Power Information Technology Co.,Ltd.,Beijing 100192,China;2.State Grid Information&Telecommunica⁃tion Group,Beijing 100031,China)

In order to solve the performance optimization of the electronic commerce bidding platform,the usability research of the existing technology and maturity is proposed,and the intensive management of the material supply chain is effectively pro⁃moted.This paper analyzes the current status of the bidding platform for electronic commerce,and puts forward the optimization scheme from the application domain,development domain,data storage and deployment.Through the improvement and optimi⁃zation of the above four aspects,the business application,information data and approval process have been linked horizontally,it improves the efficiency in data storage and stability of the e-commerce bidding platform.

Electronic commerce;Bidding;Optimization;Data storage

TP393

A

1009-3044(2017)21-0236-03

2017-06-25

张栋栋(1989—),男,河南安阳人,硕士,国网信通产业集团北京中电普华信息技术有限公司,高级工程师,研究方向为大型企业架构设计与产品研发,人机交互及自然语言处理等。

猜你喜欢
组件架构服务器
基于FPGA的RNN硬件加速架构
无人机智能巡检在光伏电站组件诊断中的应用
功能架构在电子电气架构开发中的应用和实践
新型碎边剪刀盘组件
U盾外壳组件注塑模具设计
通信控制服务器(CCS)维护终端的设计与实现
LSN DCI EVPN VxLAN组网架构研究及实现
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御