1、2 0 2 4年2期2 0 9 2 0 2 4年第4 6卷第2期基于N e t t y的智能文件管理系统的设计与实现陆俊屹1 郑伟坪2 张 捷1作者简介:陆俊屹(1 9 9 8-),硕士生,研究方向为控制理论与控制工程。(1.南京理工大学自动化学院 南京2 1 0 0 9 4;2.陆军装备部驻重庆地区军代局驻重庆地区第一军事代表室 重庆4 0 0 0 6 0)摘 要 公安机关工作需要的文件种类繁杂、数量繁多、存取频繁。为集中、有效地管理文件,提高工作效率,文中设计并实现了一种智能文件管理系统。该系统采用B/S架构,软硬件结合,通过后台管理系统、移动端A P P、智能文件柜的组合,实现了纸质文件
2、和电子文件的存、取、归档、销毁等功能,切实解决了文件管理流程化、规范化、一体化等问题。文中主要阐述了系统的总体架构设计、各个功能模块以及采用的关键技术。关键词:文件管理;物联网;N e t t y中图分类号 T P 3 9 1D e s i g na n dI m p l e m e n t a t i o no fA nI n t e l l i g e n tF i l eM a n a g e m e n t S y s t e mB a s e do nN e t t yL UJ u n y i1,Z HE N W e i p i n g2a n dZ HAN GJ i e1(1.N
3、a n j i n gU n i v e r s i t yo fS c i e n c ea n dT e c h n o l o g y,S c h o o l o fA u t o m a t i o n,N a n j i n g2 1 0 0 9 4,C h i n a;2.T h eF i r s tM i l i t a r yR e p r e s e n t a t i v eO f f i c eo f t h eA r m yE q u i p m e n tD e p a r t m e n t i nC h o n g q i n g,C h o n g q i n
4、g4 0 0 0 6 0,C h i n a)A b s t r a c t T h ed o c u m e n t s r e q u i r e df o r t h ew o r ko fp u b l i cs e c u r i t yo r g a n sa r ec o m p l i c a t e d,n u m e r o u sa n df r e q u e n t l ya c-c e s s e d.I no r d e rt o m a n a g ed o c u m e n t sc e n t r a l l ya n de f f e c t i v e
5、 l ya n di m p r o v ew o r ke f f i c i e n c y,a ni n t e l l i g e n td o c u m e n tm a n a g e m e n t s y s t e mi sd e s i g n e da n d i m p l e m e n t e d i nt h i sp a p e r.T h es y s t e ma d o p t sB/Sa r c h i t e c t u r e,c o m b i n i n gs o f t w a r ea n dh a r d w a r e.T h r o
6、u g ht h ec o m b i n a t i o no fb a c k g r o u n dm a n a g e m e n t s y s t e m,m o b i l ee n dA P Pa n d i n t e l l i g e n t f i l ec a b i n e t,t h e f u n c t i o n so f s a v i n g,r e t r i e v i n g,f i l i n ga n dd e s t r o y i n gp a p e rd o c u m e n t sa n de l e c t r o n i cd
7、 o c u m e n t sa r er e a l i z e d,a n dt h ep r o b l e m so fd o c u m e n t m a n a g e m e n tf l o w,s t a n d a r d i z a t i o na n di n t e g r a t i o na r ee f f e c t i v e l ys o l v e d.T h ep a p e r m a i n l ye x p o u n d s t h eo v e r a l l a r c h i t e c t u r ed e s i g no f
8、t h es y s t e m,e a c hf u n c t i o n a lm o d u l ea n dt h ek e yt e c h n o l o g i e sa d o p t e d.K e y w o r d s F i l em a n a g e m e n t,I n t e r n e to fT h i n g s,N e t t y0 引言近年来,随着信息化建设的逐步推进,各级公安机关对文件管理的要求也逐步提高1。由于公安机关工作的特殊性,文件数量繁多、种类繁杂,传统的文件管理方式容易出现文件管理混乱、存取困难、效率低下等问题。为解决上述问题,需要应用
9、信息化手段和互联网技术2,结合目前的纸质文件和电子文件管理方式,实现对文件的集中、规范管理,提高警员的工作效率3-5。本文根据公安机关对文件管理的实际需求,后端以S p r i n g B o o t为主体框 架,结 合N e t t y框 架、M y b a t i s框 架、M y S Q L数据库、R e d i s缓存中间件等技术,提出了一种软硬件结合的智能文件管理系统。该系统由后台管理系统、移动端A P P、智能文件柜等部分组成,三者结合可以对纸质文件和电子文件的存、取、归档、销毁 等 进 行 监 控 和 操 作,实 现 文 件 管 理 的 全 流 程闭环。1 系统设计1.1 系统架
10、构设计该系统的架构如图1所示,其主要分为5层,分别为表示层、设备层、通信层、业务层和数据层。图1 系统架构表示层是与用户产生交互的U I界面,采用V u e框架,并结合了E l e m e n tU I组件库。本系统的客户端分为两部2 1 0 2 0 2 4年2期分(P C端和移动端A P P)。其中,P C端通过浏览器访问后台管理系统。系统采用前后端分离架构,故用于部署前端的N g i n x服务器也归于表示层。设备层(即智能文件柜)可以收到服务器发出的指令,也可以通过安卓屏与用户交互,根据用户输入的存取件码打开对应柜门。通信层主要包括两部分。(1)H t t p协议,用于客户端与服务器之间
11、的通信,主要作用是将客户端用户的指令发送到服务器,完成信息查询、数据修改等操作。(2)N e t t y框架,这是一个基于J a v aN I O技术的开源异步事件驱动的网络编程框架,用于智能文件柜与服务器之间的信息发送与接收、任务指令的下发与接收。业务层(即W e b服务器)以S p r i n g B o o t为基础框架,向外部提供业务功能的接口。由于前后端分离,W e b服务器不再需要提供HTML页面转发功能,可以专注于业务。数据层由3部分组成。其中,M y S Q L服务器配合M y-b a t i s框架,主要用于文件柜、文件、用户、角色等数据的持久化储存;R e d i s服务器
12、用于系统的缓存,将热点数据存在内存中,减少I O操作,提高系统响应速度,其也承担着权限认证等工作;文件服务器采用M i n I O框架,用于存储文档、图片等非格式化的数据。系统整体采取模块化设计,采用前后端分离架构,可以按需加载,提高响应速度,提升用户体验。同时,服务器的并发性、可用性与拓展性也得到了进一步提升。1.2 系统功能模块设计系统可分为P C端后台管理系统、移动端A P P、智能文件柜3个部分。其功能模块划分如图2所示。图2 系统功能模块图1.2.1 P C端P C端后台管理系由4部分组成,分别是系统管理模块、文件柜管理模块、文件管理模块、操作记录模块。各模块的详细功能如下。(1)系
13、统管理模块。该模块包括用户管理、角色管理、部门管理、菜单管理等子模块。用户管理模块用于管理员创建并管理用户信息,将用户与角色关联起来。角色管理模块用于管理角色、创建角色,并给角色赋予不同的权限。部门管理模块用于创建并管理部门体系结构,将用户归于不同部门,上级部门可管理下级部门,同级部门相互独立,完成数据权限的分割。菜单管理用于给菜单、按钮配置权限、路由等,将不同角色的使用权限限制在固定范围内。(2)文件柜管理模块。该模块用于文件柜的注册与管理,它与实体智能文件柜相互关联,文件柜在此模块完成注册后,管理员能实时监控文件柜的状态。在特殊情况下,可由管理员在该模块发出指令,实现远程开柜。(3)文件管
14、理模块。该模块分为文件登记和文件存取两个子模块。文件登记模块负责该系统所有文件的管理,包括电子文件的上传下载与纸质文件的登记。登记过的文件可执行存、取、归档、销毁等操作。文件存取模块主要用于管理纸质文件的存取,在该模块创建或审批存取请求后,系统会自动生成存取件码,并将取件码发送到用户终端。用户凭借存取件码,则可打开文件柜门。(4)操作记录模块。该模块会记录所有用户对文件的操作,做到流程可追溯、信息一目了然。1.2.2 移动端(1)文件信息查询模块。该模块用于查询文件信息,用户可输入关键字查询需要的文件,每个用户的权限不同,能查询的文件也不同。(2)文件存取模块。该模块用于管理纸质文件的存取,用
15、户可在此向管理员发送文件存取请求,待管理员同意后,即可获得存取件码,打开文件柜。(3)文件上传模块。该模块用于上传电子文档或图片。1.2.3 智能文件柜智能文件柜主要用于存放纸质文件。文件柜由柜体和安卓屏组成。每个文件柜有1 2个格口,每个格口都有独立的电子锁,由安卓屏统一控制。文件柜采用模块化设计,可根据用户需要实现拓展,增加副柜。副柜没有安卓屏,可由接入安卓屏的主柜管理,在后台系统注册副柜后,即可投入使用。用户在安卓屏输入存取件码,即可打开对应的柜门。文件柜与服务器通过N e t t y进行通信,以接收服务器指令、完成对应操作。在紧急情况下,可由管理员输入密码打开任意柜门。2 系统关键技术
16、的实现2.1 基于N e t t y的文件柜通信框架设计N e t t y是一个高性能的网络框架,其采用R e a c t o r模型,在N I O的基础上对I/O事件处理线程进行了大量的封装与优化,具有高并发、传输快、封装完善等特点6。由于本系统与智能文件柜之间存在大量的通信需求,因此采用N e t t y作为通信框架。(1)N e t t y通信的具体过程。N e t t y基于R e a c t o r模型抽象出两组线程池,B o s s G r o u p负责接收客户端的连接请求,W o r k e r G r o u p负责读写网络I/O事件7。线程池的类型为事件循环组N i o E
17、 v e n t L o o p G r o u p,每个循环组包含多个用于事件循环的基于N I O模型封装后的I/O线程,被称移动信息2 0 2 4年2期2 1 1 为N i o E v e n t L o o p。每个线程都有一个用于监听注册在其上的S o c k e t的S e l e c t o r。(2)N i o E v e n t L o o p在B o s s G r o u p中的主要作用是轮询客户端请求A c c e p t。当发现A c c e p t事件时,会与对应客户端建立连接并生成N i o S o c k e t C h a n n e l,并将该通道注册到某个S
18、 e l e c t o r中(S e l e c t o r位于W o r k e r G r o u p中的N i o E v e n tL o o p上)。(3)N i o E v e n t L o o p在W o r k e r G r o u p中的主要作用是轮询I/O读写事件。发现I/O事件后,其会调用P i p e l i n e中的业务处理器进行后续处理。P i p e l i n e是一种基于责任链模型实现的业务处理器容器。在上述过程中调用业务处理器时,不会主动进行线程切换。这种串行化的处理方式避免了多线程操作导致的锁竞争,是一种能有效提升性能的方式8。结合项目实际,以M
19、e s s a g e T o B y t e E n c o d e r结合M e s-s a g e T o M e s s a g e E n c o d e r、以R e p l a y i n g D e c o d e r结 合M e s-s a g e T o M e s s a g e D e c o d e r作为编码器和解码器,可以自定义需要的编码格式,完成数据的高效传输。与文件柜通信时,服务器收到的消息类型有很多种,包括心跳消息、客户端命令、柜门状态反馈、锁状态等。服务器收到消息后,通过设定的S e r v e r H a n d l e r对业务进行分类和处理,并通过P
20、 i p e l i n e责任链进行消息的传递。需要注意的是,使用心跳机制是由于T C P连接保活存在局限性,不能很好地保证服务器与文件柜之间的连接的有效性。而使用N e t t y中的I d l e S t a t e H a n d l e r心跳检测处理器,可通过R e a d e r l d l e T i m e与W r i t e r d l e T i m e设置检测时间,当终端没能定时向服务器发送心跳检测包时,系统会调用I d l e S t a t e H a n d l e r事件。在智能文件管理系统中,智能文件柜需要定时向服务器发送心跳消息,服务器则通过接收心跳消息来确
21、定文件柜是否在线。当文件柜超过一定时间没向服务器发送心跳消息时,服务器会判断该文件柜已经离线,连接失效,便会主动断开与文件柜的连接。此时,如果是网络波动导致的非正常离线,文件柜会按照设定的策略与服务器进行断线重连,直到连接成功或重连次数达到上限。这种机制保障了文件柜与服务器之间的稳定连接和快速的数据传输。2.2 基于R B A C模型和J WT的权限管理框架设计在该系统中,要求不同人员可以完全基于其工作职能、职责等因素拥有完全不同的访问权限。例如,超级管理员拥有所有权限,每个部门的管理员拥有管理本部门文件的权限,普通用户只有查看部分信息和提交申请的权限。这要求系统需要拥有权限的划分和管理功能。
22、传统将用户与权限直接绑定的权限管理方式存在操作繁琐、容易出错等弊端,这是因为不同用户的权限可能是重复的,且权限数量繁多,会给管理员的工作带来极大的负担9。因此,本系统采用R B A C模型,即基于角色的访问控制(R o l e-B a s e dA c-c e s sC o n t r o l)。R B A C基本模型有3个元素,分别是用户、角色和权限。模型设计基于“多对多”原则,即多个用户可以具有相同的角色,一个用户可以具有多种角色。同样,可以将同一权限分配给多个角色,也可以向同一角色分配多个权限1 0。R B A C最大的优点之一是它提供了一种系统化的方法,用于定义和维护角色,使管理员能仅
23、根据用户需要一致地授予访问权限,从而降低数据泄露或数据丢失的风险。基于此,本系统设计了超级管理员、部门管理员、普通用户这3种角色用于权限控制。在实际使用中,还可以根据需要创建其他角色并配置权限。R B A C模型如图3所示。图3 R B A C模型完成权限划分后,用户每次访问系统都需要对权限进行验证和鉴别。本系统采用J WT(J S ON W e bT o k e n)的方式来进行认证授权。J WT以J S ON作为W e b应用中的令牌,用于在各方之间安全地将信息转变为J S ON对象进行传输。在数据传输过程中,还可以完成数据加密、签名等相关处理1 1-1 2。本系统的鉴权流程如下。用户在登
24、录页输入用户名、密码、验证码,提交l o g i n接口。使用UU I D生成s e s s i o n I d,以s e s s i o n I d为k e y,以L o g i n U s e r为v a l u e,并保存到R e d i s,有效期3 0 m i n,这个过程本质上就是自定义s e s s i o n。然后,将生成的t o k e n返回给前端。完成登录授权。授权完成后,用户每次发起请求,都会在请求头中带上该t o k e n。请求首先通过J w t A u t h e n t i c a t i o n T o k e n F i l t e r权限过滤器,该过滤器会
25、获取t o k e n并验证有效性,并通过解析t o k e n,获取t o k e n中的s e s s i o n I d信息,再根据s e s s i o n I d,从R e d i s获取并返回L o g I n U s e r,之后更新用户信息到用于权限控制的S p r i n gS e c u r i t y的上下文。至此,鉴权完成。3 结语本文介绍了基于N e t t y的智能文件管理系统的设计与实现。该 系 统 后 端 以S p r i n g B o o t为 主 要 框 架,应 用 了M y S Q L数据库,前端则采用V u e框架,使用N e t t y框架完成智能文
26、件柜与服务器的通信,实现了系统管理、文件柜管理、文件管理、操作记录等功能。P C端后台、移动端A P P、智能文件柜三位一体,实现了对数字文件和纸质文件的全流程闭环管理,提高了警员的工作效率。目前系统已上线,运行稳定,取得了较好的效果。但是,系统仍存在抗高并发能力不足的问题,未来可通过应用分布式架构,进一步提高系统的可用性。参考文献1孟佳.“互联网+”在公安信息化行政执法中的应用J.网络移动信息2 1 2 2 0 2 4年2期安全技术与应用,2 0 2 2(1 0):1 1 6-1 1 7.2林秀霞.科研院所档案信息化建设现状及策略分析J.办公室业务,2 0 2 3(6):1 1 1-1 1
27、2.3李庆梅,甘霖,刘江峰.电子文件柜在监理信息管理中的应用J.水利水电技术,2 0 1 5,4 6(S 2):8 7-8 8,9 0.4董菡.电子文件柜综合管理系统的设计与实现D.成都:电子科技大学,2 0 1 3.5黄梓佳,李献锋,吕明,等.智能文件柜平台的设计与实现J.信息与电脑(理论版),2 0 2 1,3 3(2 2):9 8-1 0 0.6万建民.基于N e t t y和R e d i s应对高并发场景的研究和实现D.南京:南京邮电大学,2 0 2 2.7张志栋.物联网中基于N e t t y的数据接入分层集群系统研究与实现D.重庆:重庆邮电大学,2 0 2 2.8王宁,张娜,于泽
28、川,等.基于N e t t y的高性能消息中间件设计与实现J.智能计算机与应用,2 0 2 1,1 1(6):1 6 8-1 7 2,1 7 7.9杨晟,罗奇.基于R B A C的通用权限管理系统设计J.科技创新与应用,2 0 2 2,1 2(9):1 2 3-1 2 6.1 0鞠博,边臻.R B A C模型在访问控制中的应用J.福建电脑,2 0 2 2,3 8(9):3 7-4 0.1 1肖双林,何迎生,田杰,等.基于J WT+S p r i n gS e c u r i t y的动态权限管理系统J.信息与电脑(理论版),2 0 2 1,3 3(1 4):1 3 1-1 3 4.1 2周虎.
29、一种基于J WT认证t o k e n刷新机制研究J.软件工程,2 0 1 9,2 2(1 2):1 8-2 0.(上接第2 0 5页)心,为政务云核心业务提供同城应用级容灾能力,当主数据中心业务不可用时,可以通过同城灾备中心继续对外提供政务服务。间隔3 0 0 k m以上选取异地灾备中心,当本地两个数据中心同时不可用时,异地数据中心可以保护数据,以便灾后重建。5 结语本文通过融合架构很好地解决了设备利旧和平滑演进的问题,为政务云建设提供了新的思路。通过新技术架构的应用,在保障安全可靠的基础上,提升了政务云服务的技术先进性、需求定制灵活性、业务上线快捷性,支撑了政务业务建设模式的创新。参考文献1朱登攀.电子政务云平台的技改升级J.中国新通信,2 0 2 1(1 9):9-1 0.2温晓泳,吴德沣,汪涛.南京市新一代政务云建设的研究和实践分析J.改革与开放,2 0 2 1(5):1 5-1 9.3徐啸峰.省级政务云多云管理平台建设思路J.智能建筑与智慧城市,2 0 2 2(8):7 8-8 0.4何锡点,马桂勤.基于云平台的数据中心改造架构设计及关键技术J.网络安全技术与应用,2 0 1 8(1 2):7 3-7 5.5廖崇良,基于政务云平台的数据中心改造架构设计及关键技术J.科技创新与应用,2 0 2 1(1 4):1 0 7-1 1 0.移动信息