新一代图书馆开放服务平台FOLIO应用实践研究

1、新一代图书馆开放服务平台FOLIO应用实践研究姻要:ApplicationPracticeofNewGenerationLibraryServicePlatformFOLIOt平台化$型是新T弋图书馆笞理系统的发展趋势RL目前,国内暂无产品化的新T弋图书憎蛇平台.而供应育开发的产品封闭且单一,无法满足图书馆的复杂业光迭代.且国内图书馆的创新观动力不足,研发新T弋的图书馆开放平台病要大规模的人力、物力投入z因而可网支术架构、产品特点、业务功能等多个方面,对国外产品进行借鉴,后里在CAL1S的引导下,国内更多的高校能抓住这一想势与机遇,积极参与新T弋图书馆系统的建设,加速学习FOUO平台并进行应用

3、rmFOLIOYeRenjie,WuYuanyeAbstractFOLIOisanewgenerationlibraryserviceplatformwithdevelopmentprospect.TakingtheapplicationofFOLIOinShenzhenUniversityLibraryasanexample,thispaperintroducestheframeworkofFOLIOplatform,theframeworkandoperationprocessofOKAPIcoregateway,andthedevelopmentpracticeofFOLIOapplic

4、ationprogram,aimingtoprovideotheruniversitylibrarieswithrelevantresearchingandpracticalexperienceofFOLIO.KeywordsLibraryserviceplatform.FOLIO.OKAPI.Micro-services.0引言随着信息技术在图书馆领域的深化应用,信息化建设的重要性日益凸显。目前,电子资源在馆藏中占据的比例急剧增长,而传统的图书馆集成管理系统往往是基于纸本资源设计的,无法胜任电子资源采集、加工、保存、发现及获取等工作1。同时,越来越多的读者通过图书馆外的机构来获取信息,图书馆

5、的纸本书流通率与咨询量越来越低,传统的图书馆集成管理系统无法满足读者的需求和行为方式的变化。图书馆管理系统应重新梳理并整合现有资源及业务,做好读者及图书馆管理人员的需求调研工作,利用好信息技术的发展,以满足读者个性化的阅读需求2。再者,传统的图书馆自动化集成系统由于系统结构老化、资源分散、孤岛系统多及升级维护难度高等原因,已无法满足图书馆管理和服务的要求变化,理应升级转型成具备资源管理、流程管理及资源发现功能的新一代图书馆管理系统3。平台化转型是新一代图书馆管理系统的发展趋势,目前,国内暂无产品化的新一代图书馆服务平台,而供应商开发的产品封闭且单一,无法满足图书馆的复杂业务迭代,且国内图书馆的

7、究图书馆的未来发展及新技术的应用,以社区协作为导向,自2016年3月份开源LSP(LibraryServicePlatform,图书馆服务平台)项目以来,已有来自数十个国家的1000多名成员加入FOLIO社区。美国德克萨斯A&M大学图书馆院长DavidCarlson表示,FOLIO不仅改变了图书馆系统的市场环境,同时也改变了图书馆与供应商之间的关系,是图书馆系统开发的一项非凡创举7。目前,芝加哥大学、杜克大学、康奈尔大学等高校图书馆参与FOUO社区讨论,共同研究新一代图书馆服务平台的发展方向;IndexData公司致力于电子资源模块的研发以及FOUO架构的设计,为FOLIO平台提供技术

8、支持;Ebsc。公司为FOLIO平台的发展提供资金支持,保证项目的有序发展,同时还对项目进行计划指导和推广。此外,还有其他社会组织为FOLIO公司提供技术支持、托管服务、软件开发等,各界组织协作构建FOUO平台,共同打造一个可持续、开放的生态系统。在国内,亦有不少高校图书馆开启了对新一代图书馆服务平台的研究及实践。重庆大学图书馆杨新崖等以重庆大学图书馆为实证研究案例,提出平台化转型是新一代图书馆管理系统的发展趋势,其应具备平台化结构、资源整合及新技术应用的基本特征4。北京大学图书馆刘素清提出,国外产品的本地化应用实证分析及我国新一代图书馆系统的研发实践探索,是新一代图书馆系统研究的重要方向,新

11、化的技术生态系统,通过开源应用程式建立起可持续的多方协作,从而更有效地管理图书馆资源并创造收益。FOLIO项目旨在促进可持续的、以社区为导向的协作,积极创建现代技术生态系统,使图书馆通过开源应用程序来管理图书馆资源,发挥图书馆价值6。FOLIO平台主要具备3大特性。(1)模块化:应用之间的交互快速便捷,用户可以自行选择所需应用,供应方和图书馆都可以开源或收费共享应用。(2)灵活性:用户可以自行选择平台的运营方式,满足自己的开发需求。(3)扩展性:FOLIO平台可轻易拓展各种应用系统,如校园网、机构库、资源发现等。2.2FOLIO平台架构FOLIO平台架构主要由4部分组成。(1)UI用户界面

12、层:App的应用界面。(2)APP应用层:构建、拓展、应用各种应用程序,如流通、编目等图书馆传统服务以及各种个性化应用。(3)OKAPI网关层:FOLIO的核心网关,管理和运行微服务。(4)系统层:实现各种郸出业务逻辑,包括库配置、数据存储、索引、日志、租户管理2.3核心微服务网关OKAPI架构及运作分析微服务架构是一项在云中部署应用和服务的新技术,是一种将单体应用程序作为小型服务开发的方法,每个单体应用程式都可以在"自己的程序"中运行,并通过"轻量级设备与H型API进行沟通"11。OKAPI是FOLIO管理和运行微服务的网关,其核心为API网关模式

13、,由OKAPI代理服务实现,核心职责为身份验证、监控、负载平衡、缓存、请求整形和管理及静态响应处理。OKAPI通过提供具体的Web服务端点和请求处理的详细信息,处理请求和响应实体、状态代码、错误条件等口2。OKAPI的架构如图1所示,其核心是3大服务。(1)代理服务(ProxyService):管理模块信息、租户信息、接口与租户之间的关系信息并请求转发。(2)发现服务(DiscoveryService):管理模块注册及启动信息。(3)部署服务(DeploymentService/Agent):管理模块运行。其中OKAPI管理模块分为两种模式。(1)托管模式:OKAPI根据模块的描述文件定义的内

14、容,启动模块并通过进程ID监控模块的运行。(2)修模式:OKAPI仅负责请求的转发。FOLIO基于描述文件将模块挂接至OKAPI的代理服务,其描述如下。(1)ModuleDescriptor.json:描述Module的基本信息(ID,名称等)、依赖信息、对外提供的API接口信息、版本信息等。(2)DeploymentDescriptor.json:描述Module的部署信息。以应用程式(选座日志系统)为例,一个完整的OKAPI管理模块运作流程如图2所示。(1)通过ModuleDescriptor.json.DeploymentDescriptor.json描述文件I已置,使应用程式作为一个

15、独立运行的模块托管挂接在OKAPI网关上。(2)用户或模块之间访问API时,OKAPI根据请求者所属的租客信息验证对应模块权限。(3)OKAPI网关根据模块注册的接口信息,向对应的接口进行调用。(4)OKAPI网关接收接口返回的响应信息并转发给发起请求者。在应用FOLIO前,建议对OKAPI进行部署练习,编译和运行OKAPI提供的测试示例模块(如okapi-test-auth-modulexokapi-test-module,以及okapi-test-header-module),加深对OKAPI模块运作流程的理解,并熟悉命令维护模块的模式。3FOLIO基础平台构建FOLIO基础平台的构建需

17、FOLIO平台的效果。其中FOLIO平台初始化;翔呈如图3所示。在构建FOLIO平台的过程中,需注意以下几点。(1)FOLIO支持使用的数据库是MongoDB和PostgreSQL,如使用PostgreSQL作为平台数据库,其数据库版本需为9.6.6或以上,否则会出现pgcrypto插件错误的问题。(2)初始化FOLIO平台前,应先创建好相应的库用户,并分配其相应数据库权限,再根据FOLIO提供的数据库初始化命令,建立表及相应逻辑关系。(3)初始化FOLIO平台时,注意在开启令牌拦截模块(authtoken)前完成添加租户及超级用户的操作,否则会出现无法进入平台的问题。(4)编写一份平台启动

18、的命令文件,每添加一个应用程式后只需在该文件上添加相应的启动命令,有助于简化应用程式的拓展及维护工作。FOLIO基础平台构建完成之后,除了将原有系统的应用对接之外,还可根据图书馆界不断变化的业务需求,灵活开发更多的应用程式或对接更多外部应用程式,进一步完成新一代图书馆服务平台的拓展。4FOLIO应用程式设计与实现作为一个平台化的图书馆管理系统,FOLIO平台会与其他校园应用及各种商业应用有着大量的交互。应用的描述准确度、接口的说明文档质量以及各开发团队之间的交流效率极大地影响着应用之间的交互效率。为此,FOUO为应用程式开发设计了一套规范化的开发流程,其核心技术为微服务架构Vert.x,接口

20、ostgres、MySQL、MongoDB.Redis等常用组件,并且有很多在生产环境中的应用案例。通过Vert.x框架构建Folio应用程式,使用Vert.x提供的整套模组构建响应式微服务,可以确保系统的响应性、弹性以及高性能。以微服务架构为核心的项目,服务的交互众多,接口的描述及管理尤为重要。RAML(RESTfulAPIModelingLanguage)是一种简单的RESTfulAPI描述性语言,也是基于YAML和JSON格式定义的API建模语言14,具备以下特性。(1)API设计直观:RAML允许以纯文本的格式描述API,RAML内容对API的描述完整、格式简单,能直观地了解API的结

21、构和功能,易于学习、使用。(2)API构建快捷:通过特定开发工具,便可依据设计好的API文档提供服务。(3)API测试准确:使用单元测试可以有效地保证API的准确性。(4)API文档化:RAML设计的API,就是一份标准的接口文档。(5)API共享性:共享简单、多方交流便捷。通过RAML标准进行应用程式维护,利用其直观、快捷、准确的特性,描述接口文档的详细信息,可以协助团队更好地交流协作。其中,RAML构建的信息结构包括以下三种。(1)基本信息:描述API的关键内容,如名字、标题、路径。(2)用户文档:描述便于用户理解的API技术文档。(3)资源:描述规范RESTful资源、方法和标准。微服务

22、架构应用RAML建模语言,利用其完的API设计生命周期,能高效便捷地管理应用程式。同时RAML建模语言引入了支持结构化文件和继承的语言功能,提高了代码的重用率,解决了跨领域的问题。RMB框架(Raml-Module-Builder)以RAML标准为驱动,自动生成接口代码、接口参数的实体类及可视化API说明文档15,包含以下工具。(1)domain-models-api-interfaces:根据RAML、JSON文件生成Java实体类和Java接口。(2)domain-models-api-aspects:验证RAML定义的API规贝上(3)domain-models-runtime:基于V

23、ert.x的工具库。将RAML中定义的接口URL映射到正确的实现函数,抽象出所有样板功能,专注于实现业务功能,提供实现一次性作业、计划任务的功能。提供工具的(PostgresSQL客户端等)使用。(4)rules:提供BasicDrools功能,模块开发人员通过*.drl只陵文件(JSON模式)创建验证规则。通过RMB自动构建框架,不仅能极大i助是高开发人员的开发效率,免去繁琐且重复的代码撰写,规范的构建框架更能保证代码架构及代码规范的统一,大大提高开发团队人员之间的协作效率。5选座日志应用程式的设计与实现目前深圳大学图书馆有两套选座系统。一是由厂商开发的刷卡系统,数据存储在SQLServer

26、件发送至已在运行的FOLIO平台,完成应用程式向FOLIO平台的配置。FOLIO平台应用拓展后会有大量的应用程式交互,RMB自动构建代码程序以RAML文件为驱动生成代码,应用程式接口应严格遵循RAML文件的编写规范,在命名规范上建议以项目、模块以及功能划分,以防止因为应用程式接口路径重复,导致OKAPI服务崩溃的情况出现。配置模块时应在该应用程式的目录下保留一份部署命令文件、删除命令文件,使后期对应用程式的更新维护工作更加简单高效。对应用程式的配置及调试建议使用网页调试工具(如Postman),通过网页调试工具进行H请求不仅能减少命令语句的编写,更能直观获取OKAPI服务对应用程式返回的响应信

THE END
1.电子科技大学图书馆“聚焦未来产业·阅启数智新篇”—外文电子书开放阅读活动2024-10-09 图书馆已引进APA PsycArticles心理学期刊数据库-助力师生学术研究!2024-09-20 关于图书馆外文搜索功能暂停使用的通知2024-09-18 百年留声 万世传音:中国音网开通试用2024-09-11 AI学术研究助手、经济社会大数据研究平台等CNKI系列资源试用开通2024https://www.lib.uestc.edu.cn/nl?isM=true&type=resource
2.科学网—学术界如何支持预印本发布模式?行业动态Plan S是一个由国际研究资助和执行组织联盟cOAlition S支持的开放获取出版计划,其规定自2021年起,联盟中所有公共资助的科研成果必须在合规的开放获取期刊或平台上发表[7]。 2024年10月,cOAlition S发布了一项评估Plan S影响的独立研究。该研究指出,Plan S不仅为全面即时的开放获取探索了新路径,还成功促使政策制定者https://blog.sciencenet.cn/blog-3516770-1465076.html
3.新一代图书馆平台FOLIO及其元数据转换模块的实现中国需要有一个平台代替ILS来整合全部图书馆的元数据,第三图书馆平台FOLIO(Future of Libraries is Open)的出现让这个构想成为现实。本论文将对以FOLIO为代表的第三代图书馆服务平台进行分析,在FOLIO平台上对主流的CNMARC元数据和DC元数据转化展开研究。首先,论文阐述了我国数字图书馆管理系统发展的轨迹,分析了国外优秀https://cdmd.cnki.com.cn/Article/CDMD-10673-1020765842.htm
4.极简FOLIO史重庆大学图书馆、厦门大学图书馆等都有研究FOLIO;深圳大学图书馆不光研究还有实践;上海图书馆正在搭建基于FOLIO的下一代图书馆服务平台FOLIO项目,并制定了2019、2020的相应开发计划;CALIS从2017年3月便已开始对FOLIO的架构及核心模块进行研究,目前以FOLIO架构为基础的新一代图书馆服务平台CLSP正在不断发展,并组织成立了https://www.360doc.cn/article/80234498_1041586174.html
5.扯一扯下一代图书馆管理与服务平台上海图书馆正在搭建基于FOLIO的下一代图书馆服务平台FOLIO项目,并制定了2019、2020的相应开发计划。上图将在2020年上半年完成“上图FOLIO平台”的开发和实施,下半年各基础模块陆续开始测试并试运行,争取年底发布上图FOLIO平台。“上图FOLIO平台”非开源项目,仅服务于上图和中心馆一卡通,计划涵盖上图、各区馆、街道馆http://www.360doc.com/content/22/0727/14/80234498_1041586142.shtml
6.Folio图书馆系统UI前端框架stripescomponents资源浏览查阅73次。《Folio图书馆系统UI前端框架Stripes-Components详解》 在现代数字图书馆系统中,用户界面(UI)的设计与实现是至关重要的,它直接影响到用户的使用体验和系统的易用性。Folio图书馆系统是一个开放源代码的平台,旨在提供现代化的图书馆,更多下载资源、https://download.csdn.net/download/qq_33365152/88258310
7.智慧图书馆解决方案真正以用户为中心的系统必须具有几乎无限的扩展能力,提供无限多的个性化可能性,这是智慧图书馆的要求,因此必须维持一个开放的、任何公司或个人都能够参与的应用生态环境,而只有采用了开放的微服务架构,支持配置各业务系统/模块通过程序接口(API)集成,遵循社区驱动的敏捷开发模式的“新一代智慧图书馆服务平台”才能做到这https://www.xinyetongcard.com/rfid-system/4073.html
8.智慧图书馆要素研究及建设思考[14]叶仁杰,吴元业.新一代图书馆开放服务平台 FOLIO 应用实 践研究 [J].新世纪图书馆 ,2020(2):41-47. [15]邓李君,杨文建.关于智慧 图书馆非技术建设的思考 [J].图书馆工作与研究 ,2020(1):5-10. 作者简介: 江 山 (1983- ),男,馆员,天津图书馆 (天津市少年儿童图书馆 ),天津 ,300201. http://bjb.tjl.tj.cn/CN/PDF/10.16384/j.cnki.lwas.2022.02.008
9.下一代图书馆管理与服务平台襄阳职业技术学院OLE是第一个由大学图书馆和研究图书馆共同研发的开源图书馆服务平台系统,但是项目进展缓慢,目前尚无国内机构进行系统部署。深圳大学图书馆后来在深入研究FOLIO平台与深大图书馆新一代管理系统的整合,目前已完成FOLIO平台的本地化构建,并与新一代管理系统完成应用对接。https://tsg.hbxytc.cn/info/1018/3156.htm
10.Archivefor2023上海市图书馆学会网站刘炜以“大语言模型与下一代图书馆服务平台”为题作了报告,他介绍,ChatGPT引爆新一轮人工智能(AI2.0)迅猛发展,智慧图书馆建设的中国模式正迎来新的发展机遇,为图书馆服务平台的更新换代带来全新的可能。首先,可以将AI技术与图书馆服务相结合,实现AI+和+AI的图书馆服务的创新模式,大量的图书馆业务将由全新的AI赋能https://society.library.sh.cn/sna/2023/00/news/all