- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
论基于构件的软件开发在图书馆数据中台
的实践
⼀、摘要
2019年11月,本人所在信息技术部承接了馆内数据中台的建设,该项目
为期半年。通过数据中台,实现了我馆数据的分层与水平解耦,沉淀了公共基
础数据。通过数据建模实现跨域数据整合和知识沉淀,通过数据服务实现对于
数据的封装和开放,快速、灵活满足上层应用的要求,通过数据开发工具满足
个性化数据和应用的需要,为全市文旅数据融合工作提供了有力的数据支撑。
该项目时间紧任务重,涉及人员组织多,涉及馆内10余个部门,外部配合协
作10多个厂商团队。该项目于2020年5月正式上线,2020年6月通过
最终验收。本人在该项目中担任系统架构师,主要完成技术方案评估与实现,
项目立项论证等工作。本文结合笔者实际经验,以该项目为例,讨论微服务架
构下,基于构件的软件开发方法的应用,包括基本构件开发的概念及特点以及
在实现过程中遇到的问题及其解决方案。
⼆、正文
近年来,随着我馆服务质量的不断提升,大量软硬件系统在我馆得到部
署。硬件设备包括自助借还机、交互机器人、电子书借阅机、人脸识别门禁、
人流量计数器,软件系统包括图书管理系统、微信小程序、移动端APP。软硬
件系统的增加带来了大量用户数据的流入,如读者借阅数据、读者信息、阅读
偏好、读者常见问题、入馆人次、入馆时间等海量的数据,但是这些数据缺乏
统一的接入和分析。因此,需要通过数据技术,对海量数据进行采集、计算、
存储、加工,同时统一标准和口径,并在此基础之上,对数据进行归纳分析,
对外提供统一的馆情数据服务。
笔者带领团队于2019年11月承接馆内数据中台的建设,并担任系统架构
设计师。主要负责项目整体技术方案评估实现、立项论证以及项目管理工作。
该项目的架构工作于同年12月完成,整个项目耗时6个月,于2020年5月上线
测试。于2020年6月完成验收。
笔者经过一段时间的架构考察和评估,最终决定采用微服务架构建设新系
统。采用微服务架构的目的是充分拆分庞大臃肿的系统,以促进软件的敏捷开
发和部署。在此项目中,每个小组负责一个组件的完整生命周期,从开发到测
试,再到运维以及后续迭代升级。最后,各个服务组件通过REST接口进行组
装。在微服务的基础上,为了实现代码复用和快速开发的需求,通过基于构件
的开发方法进行软件开发。基于构件的软件复用作为一种提高软件生产率和软
件质量的有效途径,是近几年软件工程界研究的重点之一,被认为是继面向对象
方法之后的一个新的技术热潮。一般来说,基于构件的复用包括3个相关的过
程:构件的开发、构件的管理和基于构件组装的系统开发。在基于构件的软件
开发中,系统开发的重点从程序设计变成构件组装。特别是近年来,在中间件技
术的基础上,结合软件复用思想和面向对象方法,基于构件的软件开发技术受到
了高度重视。
根据笔者的实践经验,基于微服务架构的馆情数据中台的构件可以分为中
间件构件和业务构件。其中中间件构件包括微服务注册中心:注册并维护远程
服务及服务提供者的地址,供服务消费者发现和调用,为保证可用性,通常基
于分布式KV存储器来实现,比如zookeeper等;服务框架:用于实现微服务
的RPC框架,包含服务接口描述及实现方案、向注册中心发布服务等功能,
常见的RPC框架包括SpringCloud、Dubbo、gRPC、Thrift、go-micro
等;服务网关:介于客户端与微服务之间的网关层,可以理解为「门卫」的角
色,以确保服务提供者对客户端的透明,这一层可以进行反向路由、安全认
证、灰度发布、日志监控等前置动作;服务监控:对服务消费者与提供者之间
的调用情况进行监控和数据展示;服务追踪:记录对每个请求的微服务调用完
整链路,以便进行问题定位和故障分析;服务治理:服务治理就是通过一系列
的手段来保证在各种意外情况下,服务调用仍然能够正常进行,这些手段包括
熔断、隔离、限流、降级、负载均衡等。基础设施:分布式消息队列、日志存
储、数据库、缓存、文件服务器、有哪些信誉好的足球投注网站集群等,用以提供服务底层的基础数据
服务。
业务构件包括RBAC认证构件,OAUTH2.0授权构件、数据接入构件、消
息队列微服务构件、数据开发构件、数据模型构件、数据服务构件。这里重点
从数据接入构件、数据开发构件、数据模型构件、数据服务构件三方面展开。
数据接入构件角度来说。数据接入是中台的基础业务,通过对接各个软硬
件厂商,针对不同类型软硬件系统的特点,提出不同的数据需求,联合各个厂商
一起讨论制定标准化的上报
您可能关注的文档
最近下载
- xx县中医医院纪委书记对重点岗位人员进行提醒谈话内容、范文(五点要求).doc VIP
- 2025尔雅超星当代大学生安全教育答案.docx
- 兽医处方笺模板.docx
- 机场道面混凝土施工工艺及方法.docx
- 【智慧树】【知到】形势与政策(成都工业学院)章节测试答案.docx VIP
- 东方电机150MW汽轮发电机技术介绍.ppt
- 造纸行业的职业危害与防治解决方案.ppt
- 小学科学德育教育案例Word编辑.doc VIP
- 2023-2024学年人教版化学必修第2册同步练习(解析版答案)第5章 第1节硫及其化合物 第1课时硫和二氧化硫.doc VIP
- 浙江2024年01月高考:《信息技术》考试真题与参考答案.pdf
文档评论(0)