1.中恒建筑设计院(广州)有限公司,广东 广州 510000 2.中恒信息科技(广州)有限公司,广东 广州 510000 3.中新广州知识城财政投资建设项目管理中心,广东 广州 510000
摘要:随着我国信息化建设的快速发展,智慧工地作为新一代的建筑施工管理模式,成为了建筑业转型升级的重要研究方向。智慧工地管理平台旨在通过引入先进的物联网、大数据、云计算等技术手段,实现对施工现场的实时监控、智能化管理和高效协同。本文以SpringCloud微服务框架为基础,对智慧工地管理平台进行研究与设计,通过使用微服务架构,将平台的各个功能模块划分为独立的服务,实现了服务的模块化、组件化。同时,利用SpringCloud提供的服务注册与负载均衡、分布式配置等组件,提高了系统的可扩展性、稳定性和可维护性。结合知识城南方医院项目的落地应用与打磨,以期为我国智慧工地建设提供有益的参考和借鉴。
关键词:智慧工地;微服务架构;SpringCloud;组件化;
中图分类号:TU17
0 引言
近些年来,智慧工地的发展步伐愈发加快,表现为施工现场的信息化、智能化程度不断提高,各类物联网设备、大数据分析技术、云计算平台等纷纷应用于施工现场管理。数字化管理趋势使得现场管理更加精细化、高效化,进而提高了施工质量、安全性和环保性。然而,现有的智慧工地管理平台在实际应用中仍存在诸多挑战,如通过何种合理的方式整合各类技术手段,进而可以构建出高度集成、数据流转通畅的管理类平台。
传统智慧工地管理平台往往采用常规的技术架构形式,如分层架构、SOA等。但这些架构形式在实际应用中存在一定的弊端。例如分层架构可能导致系统过于庞大,难以维护;SOA可能引入过多的中间件,导致系统复杂度上升。此外,传统架构在扩展性、灵活性、性能等方面也存在局限性,无法满足智慧工地管理平台的高可用、高并发、灵活扩展的需求。
为解决上述问题,本文结合知识城南方医院工程项目,探讨了在智慧工地管理平台中应用SpringCloud微服务架构的优势。SpringCloud微服务架构通过将复杂的业务场景拆分为多个简单、独立的服务,实现了模块化、组件化的开发。这使得系统具有更好的可扩展性、可维护性和灵活性。同时,SpringCloud提供了丰富的组件,如服务注册与发现、负载均衡、分布式配置等,从而为智慧工地管理平台提供了更为强大的技术支持[6]。
1 工程概况
知识城南方医院(九龙新城综合医院)建设项目,总建筑面积202389㎡,建筑层数(最高)为地上17层,地下一层,最高建筑总高度76.8m。主要建设门诊急诊综合楼、住院楼、医技楼、科研行政综合楼、后勤保障、院内生活等主体建筑及相关配套设施。
图1 知识城南方医院(九龙新城综合医院)建设项目
2 微服务及Spring Cloud架构
微服务架构作为一种软件开发方法,其发展历程可以追溯到20世纪90年代。随着互联网技术的飞速发展,企业应用系统变得越来越复杂,传统的单体应用架构逐渐无法满足日益增长的需求。在此背景下,分布式系统和面向服务的架构(SOA)应运而生。2014年,Netflix公开了其微服务架构,这一事件被认为是微服务架构走向普及的里程碑。随后,Amazon、Google等科技巨头也纷纷采用微服务架构来构建其庞大的业务系统。
微服务架构的核心理念是“将复杂的事情简单化”,通过将庞大的系统拆分成多个独立、可组合的小服务,实现系统的松耦合。从而可以实现每个微服务都具有明确的功能边界,互不干扰;并且避免引入过多的中间件和复杂配置;这使得开发、部署、维护变得更加简单明了,有助于提高系统的可扩展性和易用性。
Spring Cloud是一个基于Spring Boot实现的应用开发工具,为基于JVM的应用开发提供了丰富的组件和基础设施支持。其在微服务架构中的应用主要包括服务注册与发现、负载均衡、分布式配置、断路器、服务熔断、消息队列等方面。
微服务架构以其灵活性、可扩展性、松耦合等优势,成为了应对日益复杂的业务场景的有效手段。而Spring Cloud则为微服务架构提供了强大的基础设施支持,能够更加便捷地构建和维护微服务应用。
3 管理平台系统架构
智慧工地管理平台是一种集成了先进信息技术、物联网技术、大数据分析等的现代化施工管理解决方案。其系统架构分为五个层级[1],分别为基础设施层、数据层、接口层、功能应用层、用户访问层,如图2所示。以下是对各层级的详细描述[2]。
图2 智慧工地管理平台系统架构图
基础设施层是智慧工地管理平台的基础,负责提供硬件设备和网络环境。这一层级包括服务器、控制器、施工现场各类传感器、摄像头等硬件设备部分。
数据层是智慧工地管理平台的核心,负责收集、处理、存储和分析来自基础设施层的数据。如数据采集是通过传感器、摄像头等设备采集现场温度、湿度、噪声、空气质量等数据;数据存储是将采集到的数据存储于数据库当中,进而对采集到的数据进行预处理、清洗、转换等,以便于后续分析。
接口层是智慧工地管理平台的中间层,负责连接数据层和功能应用层,提供数据交换和通信接口。主要包括服务接口、数据接口、安全接口、文件接口等。
功能应用层是智慧工地管理平台的具体应用部分,负责实现各种业务功能,如进度管理、安全&质量管理、物料管理等。最终在访问层提供与用户的交互界面,如Web界面、移动端应用等[3]。
笔者结合知识城南方医院项目施工现场的实际情况和需求,将智慧工地管理平台的功能应用层设计为“展示前台”和“管理后台”两个部分。这种设计旨在实现为多种角色用户提供不同的使用入口,以便于管理者实时监控施工现场的各项数据,从而做出有效的决策、现场作业人员便利性的使用管理平台。在展示前台,我们将监管类数据进行统一展示,使得管理者可以直观地了解施工现场的各类信息。这一部分的设计注重可视化,以方便管理者快速查看和理解数据。通过展示前台,管理者可以实时掌握施工现场的动态,为决策提供有力支持。而在管理后台着重处理现场实际操作逻辑,并将这部分功能进行精简设计,以满足现场操作人员的实际需求。这种设计兼顾了管理者的监管需求和现场操作人员的便利性,有助于提高施工现场的管理效率。
4 管理平台微服务技术架构
近些年应用系统主要由服务端应用、数据库和前端界面构成。然而,随着技术的发展,越来越多的应用系统呈现出“重”后端、“轻”前端的趋势。这种现象导致系统每个模块的调整都需要经过统一编译和发布,从而降低了系统的灵活性和可扩展性[5]。
针对以上情况,特别在建筑施工现场这种复杂场景下,笔者采用了Spring Cloud微服务架构来满足系统对灵活性、可扩展性和稳定性的需求。在微服务架构中,智慧工地管理平台的人员管理、机械管理、进度管理、安全&质量管理等子系统服务被划分为单个小型微服务应用程序,每个微服务都有自己的进程。微服务之间采用轻量级机制进行通信,最终通过自动化部署机制实现独立部署;该架构形式使得整个系统更加灵活、可扩展且稳定[7]。整体架构如图3所示。
图3 基于Spring Cloud微服务架构
为了在智慧工地管理平台中使用微服务架构,笔者采用了主流的核心组件,如Nacos(阿里注册中心)、Ribbon(负载均衡)和Config(配置中心)等。后端各子服务接口遵循Restful风格,从而使平台软件更加简洁、易实现和易维护[8]。
具体来说,Spring Cloud微服务架构包括以下几个关键部分:
1、服务注册与发现:通过Nacos实现服务实例的注册与发现,使得微服务之间可以更容易地相互通信和协同工作。
2、服务负载均衡:采用Ribbon实现负载均衡,可根据服务器的负载情况动态分配请求,从而提高系统的稳定性和性能。
3、配置中心:使用Config实现配置的外部化和动态刷新,方便管理员对系统配置进行统一管理和调整。
4、服务熔断降级:借鉴Netflix Hystrix的设计思想,实现对微服务的熔断降级,以避免单个服务故障影响整个系统。
5、微服务集成:采用Spring Cloud提供的统一微服务框架,简化微服务集成过程中的繁琐操作,提高开发效率。
6、服务追踪与监控:利用Spring Cloud提供的服务追踪和监控功能,实时了解系统运行状况,为故障排查和性能优化提供支持。
通过上述技术和组件的融合运用,知识城南方医院项目智慧工地管理平台实现了更高效的运行和更出色的扩展性,以满足建筑施工现场不断变化的需求。同时,这种灵活的架构也为平台的维护和升级带来了极大地便利。
5 管理平台业务功能模块简述
根据知识城南方医院项目施工现场的业务场景,智慧工地管理平台按照“人机料法环”主线并拓展出相应的子服务功能,如人员管理、机械设备管理、物料管理、进度管理、安全&质量管理等,以下内容分别对各子服务功能结合Spring Cloud微服务技术架构进行简要描述[9]。
1、人员管理子服务模块:
人员管理子服务模块负责处理施工现场人员的相关信息,包括实名制考勤、岗位分配、人员信息管理等;通过与Spring Cloud微服务整合后可实现以下功能:
(1)采用Ribbon进行负载均衡,确保人员考勤系统的高可用性和稳定性;
(2)使用Config实现人员信息的集中配置和动态刷新,方便管理员对人员信息进行统一管理;
(3)结合Nacos进行服务注册与发现,使人员管理子服务与其他子服务方便地进行通信与协同工作。
2、机械设备管理子服务模块:
机械设备管理子服务模块负责对施工现场的机械设备进行实时监控和管理,包括设备使用情况、维修保养、安全报警等。通过与Spring Cloud微服务整合后可实现以下功能:
(1)通过使用Spring Cloud的设备监控组件,实现对机械设备的实时状态监控;
(2)采用负载均衡技术(如Ribbon),确保机械设备管理子服务的高可用性和稳定性;
(3)利用Config进行设备配置的外部化,方便管理员对设备参数进行动态调整。
3、物料管理子服务模块:
物料管理子服务模块负责对施工现场的物料进行统一管理和跟踪[4],包括物料采购、入库、出库等。与Spring Cloud微服务整合后可实现以下功能:
(1)利用Spring Cloud的分布式锁功能,实现对物料库存的并发控制;
(2)通过Ribbon实现物料管理子服务与其他子服务的高可用性和负载均衡;
(3)使用Config进行物料配置的动态刷新,以支持灵活的物料管理需求。
4、进度管理子服务模块:
进度管理子服务模块负责实时跟踪和控制工程项目的进度,包括进度汇报、预警等。与Spring Cloud微服务整合后可实现以下功能:
(1)采用Spring Cloud的定时任务组件,实现工程进度的自动更新和汇报;
(2)通过Ribbon进行负载均衡,确保进度管理子服务的高可用性和稳定性;
(3)使用Config进行进度策略的集中配置,方便管理员对项目进度进行统一管理。
5、安全&质量管理子服务模块:
安全&质量管理子服务模块负责对工程项目的安全和质量进行全面管理,包括安全&质量检查、事故处理等。与Spring Cloud微服务整合后可实现以下功能:
(1)利用Spring Cloud的日志收集和分析功能,实时掌握工程项目的质量和安全状况;
(2)通过Ribbon实现安全&质量管理子服务与其他子服务的高可用性和负载均衡;
(3) 使用Config进行安全&质量标准的集中配置,以便于统一管理和审计。
综上所述,智慧工地管理平台的各个子服务模块通过与Spring Cloud微服务架构紧密集成在一起,实现了施工现场各种资源的高效管理和协同工作。同时,灵活的架构形式为平台的扩展和维护带来了极大地便利性。
6 结论
本文通过对智慧工地管理平台采用Spring Cloud微服务架构的探讨,结合知识城南方医院项目实例,分析了这种架构在建筑施工管理领域的应用优势。实践证明,Spring Cloud微服务架构为智慧工地管理平台提供了高性能、高可用、易扩展等技术优势,为知识城南方医院项目带来了显著的效益。
在未来,随着建筑行业的需求不断变化和升级,智慧工地管理平台将继续发挥其优势,结合更多先进技术,为现场管理提供更加完善和高效的解决方案。同时,Spring Cloud微服务架构也将不断完善和演进,为智慧工地管理平台提供更加稳定和可靠的技术支持。通过知识城南方医院项目的成功实践,可以看到智慧工地管理平台在建筑行业的应用具有广泛的前景,并借助Spring Cloud微服务架构的优势,管理平台将成为建筑行业管理和技术改革的重要工具,推动行业的持续发展和进步。
参考文献
[1]刘守宇,宋海港,周亮,等.基于BIM+智慧工地精细化协同管理平台架构[J].重庆建筑,2022(3):23-25.
[2]黄建城,徐昆,董湛波.智慧工地管理平台系统架构研究与实现U].建筑经济,2021(11): 25-30.
[3]曾凝霜,刘琰,徐波.基于BIM的智慧工地管理体系框架研究[J].施工技术,2015(10):96-100.
[4]万玲,白越.基于BIM+物联网的建筑物资采购管理平台构建研究[J].建筑经济,2021,42( 3) :55-59.
[5]付琳琳.基于Spring_Cloud的微服务容器化部署方案的研究[D].武汉:邮电科学研究院,2019.
[6]魏博.基于Spring_Cloud的云平台管理系统的研究及实现[D].北京:华北电力大学电科,2019.
[7]李祥,金安安.基于Spring Cloud微服务架构的开放实验室管理系统构建研究与实践[J].中国教育信息
化,2021,4(1):55-59.
[8]孙岩,李晶.基于SpringBoot的旅游资源管理网站的设计与实现 [J].信息技术与信息化,2021(1):37-39.
[9]郭致远,魏银珍.基于Spring Cloud服务调用的设
计与应用[J].信息技术与网络安全,2019,38(2):87-
91.