分布式应用;
社区管理;
节点信息同步
大学的学生社区一直是维稳工作的重点。学校的要求包括:阻止不法人员随意进入学生社区,保障学生的人身和财产安全;
辅导员、班主任定期走访学生,了解学生思想状况解决学生的一些实际问题;
组织丰富多样的社区活动,引导学生健康成长;
防火防盗管理,保障社区安全。但是社区低效的传统的手工管理方式已经不适应要求,需要实现信息化和智能化。除学生工作部以外,学生社区管理各部分的功能需求相对独立,相互间信息交换频度不大。采用对等网络(peertopeer,p2p)模式[1]来实现学生社区管理系统,可使系统的可靠性得到提高[2],扩展性更好,工作负荷得到平衡[3-4],从而避免客户服务器模式的一些问题。
传统手工方式的社区管理存在诸多问题。(1)来访者管理存在隐患。一些学校还在采用的由来访者自行在来访者登记簿上登记个人信息,社区管理人员进行人工查验、信息查询和统计工作。随着外来人员的增加,面临社区通行效率低、核查来访者身份困难、易发生漏登漏查、查阅和统计低效等问题。(2)社区走访管理工作量大。辅导员、班主任定期走访学生社区是学生管理工作的考核目标。但是手工方式下,走访社区的登记、查询、统计等工作量大。(3)学生晚归监控难度大。控制学生晚归是社区管理工作的一项重要内容,通过定期与辅导员交换学生晚归信息,辅导员可以及时了解学生晚归情况,采取管控措施。周末和节假日是学生晚归的高发期,易造成晚归登记的时段性堵塞和漏登现象。(4)学生社区活动包括社区组织的文娱、体育、学术交流等活动,社区安全事件包括发生在社区的盗窃、火灾和各种冲突等,这些方面也有大量工作需要信息化。
2.1系统功能设计。按照社区管理提出的功能需求,系统划分为7个子系统,包括:来访者管理、辅导员及班主任走访社区管理、学生晚归管理、社区活动管理、社区安全管理、学生工作管理和系统信息服务。由于社区有出入口、社区办公室、学生工作部和社团等多处管理场所,按照需要在多处配置对等网络节点(p2p节点),将子系统被部署到节点中。下面是p2p节点的功能。(1)来访者管理主要包括来访者信息登记、查询、统计和维护功能。登记时,社管人员查看来访者的有效证件,录入姓名、访问事由(亲友来访、参观学习、办理公事等),系统采集人脸图像、记录来访时间。通过公安系统公布的犯罪通缉人员信息和人脸图像识别技术,排除对社区安全可能构成威胁的隐患,实现嫌疑人预警。可以进行本地查询、接受学生工作管理系统的网络查询和多p2p节点联合查询。在查询方式上可根据来访者姓名、进入时间、访问事由等,进行单项查询和组合分类查询,然后在本机显示或由网络回传查询结果。(2)辅导员及班主任走访社区管理主要功能包括走访记录、查询、统计和维护。辅导员、班主任使用校园卡进出社区,读卡器读取身份信息,系统记录出入社区的时间和地点,作为信息统计的依据。查询和统计时,按照姓名、部门、走访时间进行单项和组合条件查询。同样,可以接受学生工作管理系统的网络查询和多p2p节点联合查询。(3)学生晚归管理在固定时段(如学校规定的晚归时段),系统记录学生的进出信息,以反映学生的晚归情况。学生使用校园卡进出社区,读卡器读取身份信息,系统记录他们出入社区的时间地点,采集学生图像,对学生身份进行识别。提供晚归查询、维护、统计和报送等功能。接受辅导员和学生工作管理系统的网络查询和统计。(4)社区活动管理包括社区活动的登记、查询、维护和统计功能。同样,可以接受学生工作管理系统的网络查询,回传查询结果。(5)社区安全管理包括社区安全事件的登记、查询、维护和统计功能。接受学生工作管理系统的网络查询。社区案件信息可以和公安系统交换数据。(6)学生工作管理学生工作管理系统与各子系统形成分布式应用模式,协同完成社区信息汇总工作。主要功能包括对系统信息的综合查询、综合统计、报表制作等。子系统分布在社区不同位置,负责局部信息获取和处理,学生工作管理系统通过网络联查、汇总,可以完成整个社区的综合统计查询。网络联查是系统的基本要求。例如统计学生晚归情况,由于学生可能出入于社区多个出入口,通过各p2p节点的联合查询,对返回的结果进行汇总才能获得全面信息。(7)系统信息服务主要功能包括系统基础信息(如学生、教师、来访者、部门、院系等相关基础信息)管理、系统信息同步、用户访问权限管理、p2p节点连接信息的同步和状态监控。通过网络的刷新和同步,保证各系统之间连接和信息交换的畅通,实现透明的信息交换。2.2系统架构设计。对等网络是局域网常用的组网方式之一[5]。p2p节点通过提供服务和内容可以共享资源,协同p2p节点完成任务[6],它们既是资源的提供者也是使用者,还是任务的协同完成者[2,7]。p2p节点间可以直接互访。由于p2p技术具有分布性、动态性、可靠性和开放性等特点,基于p2p技术实现以信息资源共享为基础的分布式应用系统是有优势的。社区系统没有采用客户服务器c\s模式和b\s模式,而采用如图1所示的p2p集中式架构,主要因为大部分子系统功能相对独立,业务信息分布在p2p节点的本地数据库中便于处理。尽管学生工作管理和系统信息服务与各p2p节点上的子系统有较强的信息依赖关系,但它们彼此间信息交换的频度不高,来访者管理与公安系统(外部系统)有信息交换,频度更低。然而c\s和b\s的集中式数据库和服务器,使各子系统节点间的依赖关系增大,系统可靠性会降低,服务器的工作负荷加大。本系统p2p节点的业务数据分散保存在本地,由子系统维护,包括:来访者登记表、学生晚归登记表、辅导员班主任走访登记表、社区活动信息表、社区安全信息表。需要同步的数据放在系统信息服务节点,包括:来访者基本信息表、学生基本信息表、辅导员班主任基本信息表、机构院系基本信息表、用户访问权限表、p2p节点信息表。来访者基本信息表由p2p节点收集,并提交系统信息服务节点,其余系统信息由系统信息服务维护,各p2p节点对系统基本信息有需求时可以向系统信息服务节点请求,系统信息服务节点信息更新后主动向p2p节点刷新。p2p节点信息表保存所有p2p节点的连接信息,包括:编号、节点ip地址、业务类型、活动状态。p2p节点信息表是为了维系p2p节点的连接。2.3p2p节点通信设计。p2p信息通信架构[8]如图2所示,包括:消息收发、消息解析与任务调度、p2p节点注册管理、p2p节点状态监测、各种业务功能等模块。(1)p2p节点消息收发与解析。p2p节点之间的通信采用tcp协议,通过tcp协议提供的机制保证消息及资源传输的可靠性。每个p2p节点监听连接请求端口,有连接请求时创建消息接收线程,建立socket通信连接并接收消息,再按照系统应用层通信协议解析消息,并由任务调度模块交给相应业务处理模块完成相应的业务处理。(2)p2p节点注册与信息同步。p2p节点的通信[9-10]需要连接节点的ip地址和端口号等信息,在系统信息服务节点建立网络p2p节点目录,集中管理p2p节点信息,向节点定期传送p2p目录,方便节点间的通信。新p2p节点要加入系统,在登陆时要在系统信息服务节点注册,向系统信息服务节点发送p2p节点登陆消息,系统信息服务节点记录登陆节点的ip地址、端口号、用户信息、业务类型等。p2p节点离线时向系统服务节点发送离线消息。在系统信息服务节点,当系统信息更新时要向所有相关p2p节点发刷新消息,进行信息同步。(3)p2p节点状态检测。由于网络环境等因素的影响可能导致p2p节点网络连接的中断,系统信息服务节点定时向各p2p节点发送“心跳消息”,检查p2p节点的在线状态,反映节点的连接情况。(4)业务处理。各子系统信息处理主要在本地进行,学生工作管理节点要处理的信息则分散在各p2p节点上,通过向相关p2p节点发送查询、统计消息,相关节点回传结果,再汇总和分析结果来完成工作。
系统的类图结构如图3所示。p2p节点间的通信由通信类完成,通过任务调度与所有相关业务类相联系。可以按p2p节点业务需求和用户访问权限进行配置。用户登陆时,主控类根据用户访问权限,为p2p节点配置业务模块,即发送用户验证消息给系统信息服务节点,根据验证回复打开业务模块。一个p2p节点可配置多个模块,如社区处入口的p2p节点可以配置来访者管理、辅导员班主任走访社区管理、学生晚归管理。本系统软件采用microsoftvisualc++6.0编程实现。
本文介绍了一种基于p2p网络结构的社区管理系统,系统能够满足大学社区管理的需求。对等网络系统提高了系统的可靠性、扩展性和灵活性,工作效率也得到提升。经实验验证,系统运行稳定,可为同类系统在小型分布式应用方面的设计和实现提供经验。下一步考虑在学校更大范围内推广应用。另外,还要在网络安全性、稳定适应性和文件传输效率方面开展研究。
[1]李治军,姜守旭,李晓义.利用多级局部性实现可扩展的无结构p2p搜索[j].软件学报,2011,22(9):2104−2120.
[2]张宇翔,张宏科.一种层次结构化p2p网络中的负载均衡方法.计算机学报,2010,33(9):1580-1590.
[3]李勇军,代亚非.p2p文件共享系统中的一种基于商品市场模型的访问控制机制.计算机学报,2012,35(8):1675-1687.
[6]王杨,王汝传,严远亭,韩志杰,赵保华.tclm-p2p:面向p2p社区的任务协作逻辑模型[j].计算机研究与发展,2012,49(2):270-277.
[7]周大伟.基于广播加密的p2p社交网络方案的设计与实现[j].计算机应用与软件,2017,34(5):299-305.
[8]梅红岩,张玉洁,孟祥武.基于局部需求的稀有资源主动复制与搜索机制[j].软件学报,2015,26(9):2418−2435.
[9]徐洋,王鹏举,张焕国,谢晓尧.基于p2p网络模型的web搜索引擎用户隐私保护[j].计算机应用研究,2016,33(10):3057-3060.
[10]张信媛,陆天波.一种用于p2p文件共享网络的匿名通信方案[j].软件,2015,36(12):05-08.