周庆平徐则阳苏玉
(1.湖南体育职业学院 湖南 长沙 410019;2.湖南信息职业技术学院 湖南 长沙 410200)
2021年9月27日落幕的中华人民共和国第十四届全运会是在中国共产党成立100周年、我国开启全面建设社会主义现代化国家新征程的重要节点举办的综合性体育盛会,也是我国提出到2035年建成体育强国、健康中国后举办的一次重要综合性运动会。十四届全运会坚持以人民为中心的发展思想,突出“全民全运、同心同行”主题。现如今,全运会成为了全民运动,无疑为全民健身的发展,提供了强劲的推力。全民健身也是为健康中国,百姓健康提供了强大的群众基础。在全民健身与全民健康深度融合的今天,全民健身给群众带来的成就感、获得感、幸福感和满足感,都变得更加的扎实。
党的十九大报告提出 “加快推进体育强国建设”。2019年9月,国务院办公厅印发《体育强国建设纲要》,按照纲要要求,到2035年,“全民健身更亲民、更便利、更普及,经常参加体育锻炼人数比例达到45%以上,人均体育场地面积达到2.5m2,城乡居民达到《国民体质测定标准》合格以上的人数比例超过92%”。到2050年,“全面建成社会主义现代化体育强国,人民身体素养和健康水平、体育综合实力和国际影响力居于世界前列,体育成为中华民族伟大复兴的标志性事业”,“落实全民健身国家战略,助力健康中国建设”。
《全民健身计划(2021-2025年)》的印发,进一步为“十四五”期间我国全民健身工作指明了发展方向,每五年制定的一次“全民健身计划”,不仅为全民健身的发展起到了导向与指引作用,也为我国体育事业的发展,为建设体育强国奠定了群众基础,开展全国运动会赛事活动,成为新时期我国全民健身发展的主要任务之一。
本文深入分析当前全民健身群众体育的实际需求,按照新时代中央有关公共服务体系建设的战略部署,结合新时代全民健身的精神和发展方向,提出一种基于微服务架构的全民健身公共服务平台,通过该平台的使用,为广大人民群众提供更多的体育健身咨询,科学指导全民健身,提供相关运动场馆的最新开放信息,相关体育赛事活动以及场馆培训等信息。让广大人们群众更好的享受到全民健身的便捷性以及更好的享受到全民健身的乐趣。考虑到全民健身的群众化,更多的用户会使用到全民健身服务平台以及系统的多模块性和后续平台的扩展性,原始的单体应用难以应付系统的频繁更新和维护,因此,平台使用微服务架构进行设计,助力“健康中国”以及“体育强国”的建设和发展。
微服务架构是一种全新的设计理念,当前Spring Cloud是微服务架构的主流模式,微服务架构的出现主要是为了解决应用系统的高可用、高并发以及高性能等问题,微服务架构主要是将系统中不同的业务逻辑进行颗粒化,划分为不同的细小的服务模块,如此一来,可以降低系统业务逻辑的耦合度,提升系统的性能。Spring Cloud微服务架构不仅仅只是一个架构模型,更是一种整体的解决方案。
Spring Cloud Eureka主要是为分布式系统提供一种服务注册与服务发现的功能,微服务只有在Eureka中注册了,才可以被发现和调用,Eureka每隔一段时间会有一次心跳监听,如果没有发现微服务就会移除该条微服务信息。
Spring Cloud Config是微服务分布式系统中的配置管理中心,Client通过接口的形式获取远程Service配置内容,为Client所需要。
Spring Cloud Zuul作为微服务架构中的API网关使用对象,支持动态路由和过滤功能,为API服务提供了统一的访问入口,起到了路由请求、校验过滤等作用。
Spring Cloud Bus将Java事件处理机制和消息中间件中消息的发送和接收进行整合和完善,实现了对不同业务中消息事件的监控和管理。
Spring Cloud Ribbon是基于Spring Cloud封装的一种面向Rest模板请求的一种负载均衡工具,存在于每一个Spring Cloud构建的微服务基础设置之间,所有的API的调用,都是需要经过Ribbon的负载均衡转发。
全民健身公共服务平台的建设是为了积极响应国家 “体育强国”战略,增强人民群众从全民健身运动中获得感、幸福感和喜悦感而设计的一种综合性信息咨询发布平台。在对全民健身公共服务平台的实际调查和研究之后,设计出全民健身公共服务平台的主要功能模块,主要包含全民健身新闻资讯信息,体育赛事活动,运动场馆开放,健身设施,健身指导,政策法规,健身地图等主要功能模块,全民健身公共服务平台的主要功能模块如图1所示。
图1 全民健身公共服务平台主要功能模块图
图1中主要描述了全民健身公共服务平台中的主要功能模块,平台的主要功能模块介绍如下:
(1)赛事活动。
该模块主要向人民群众展示出一年内不同省份主要的公共体育赛事活动,如不同省市举办的马拉松赛事,公共体育赛事活动等。
(2)新闻资讯。
该模块主要向人民群众展示出当前体育运动的相关新闻资讯信息,如全国运动会的开幕新闻,以及运动获奖等详细新闻资讯信息。
(3)政策法规。
该模块主要向人民群众展示出当前国家关于全民健身运动的相关政策和法律法规,如《体育强国建设纲要》和《全民健身计划(2021-2025年)》等政策法规信息。
(4)健身教练。
该模块主要是向人民群众展示出全民健身运动中的明星教练团队,公众可以依据自身的健身运动需要,合理的选择和咨询健身运动指导。
(5)联系我们。
该模块主要是向人民群众提供一个与平台沟通和对话的窗口,人民群众在平台使用的过程中遇到一些相关疑问,都可以通过联系我们栏目进行联系,主要提供电话、邮件等咨询方式。
(6)场馆开放。
该模块主要是向人民群众展示出当前有哪些可供使用的健身场馆,展示出区域内运动场地,主要包含公共性质、经营性质、半公开性质的场馆信息。
(7)健身场地。
该模块主要向人民群众展示出区域内所有的可供人们使用的健身场地,如城市绿荫,城市公园等健身场地。
(8)健身指导。
该模块主要向人民群众展示出健身相关性的指导信息,主要向人民群众展示出一些体育运动专家的采访和报告信息。
(9)健身地图。
该模块是通过地图的形式向公众展示出健身场馆和健身场地,在地图上将健身场馆和健身场地做好标识,方便人民群众寻找健身场所。
(10)系统管理。
该模块是系统运行必要的管理模块,主要包含对系统用户的管理、系统权限、系统菜单栏目的管理等。
本文所设计的全民健身公共服务平台采用Spring Cloud的微服务架构模型,基于Spring Cloud的微服务架构提供了一整套的微服务解决方案,整个平台的微服务架构如图2所示:
图2 全民健身公共服务平台微服务架构图
全面健身公共服务平台在设计中应用到微服务集群,通过对Eureka的集群处理,多个Eureka Service之间可以同步注册服务,如果一个Eureka出现宕机,其余的Eureka Service仍然具备服务注册以及发现的能力,从而可以保证服务注册中心的高可用性。通过在application.yml文件中配置实现Eureka的集群化,主要核心配置代码如下:
平台将相关业务数据信息存储到Redis集群中,同时物理数据存储在MySQL集群服务器中,MySQL数据库集群处理主要是通配置 /etc/my.cnf文件,在该文件中配置集群信息。用户在请求访问系统的微服务的时候,从Spring Cloud Zuul开始,Zuul作为目标代理服务的时候,通过Ribbon的负载均衡策略来选择一个微服务的服务实例。本文通过继承Abstract Load Balancer Rule类实现一个自定义的负载均衡策略,自定义负载均衡策略中实现,在自定义负载均衡策略中,如果一条请求的数量超过了8次,就会将请求发送到另外的一台服务器中。
本文所设计的全民健身公共服务平台按照微服务的颗粒化划分,可以将总体的业务微服务划分为如图3所示的集群,业务微服务集群中主要包含赛事活动管理微服务、政策法规管理、健身教练管理、场馆开放管理等微服务。
图3 微服务设计图
图3中将业务服务集群和基础微服务集群进行划分,两者之间通过Feign组件进行服务之间的通信,通过微服务组件的使用,可以提升微服务之间的数据通信,不仅如此,还可以提高系统的开发效率,缩短系统开发的周期,服务的颗粒化,系统微服务以及降低模块之间耦合程度,提升系统的可靠性和稳定性。
全民健身公共服务平台采用Java语言实现后端逻辑,前端使用HTML以及JavaScript、CSS技术实现,前端通过JSON数据格式实现与后端的交互,平台基于Spring Cloud实现业务逻辑。用户打开全民健身公共服务平台之后,进入到平台首页,平台首页提供各个模块的超链接,如图4所示为全民健身公共服务平台首页。
图4 全民健身公共服务平台首页
在平台首页的最上面展示出所有功能模块的超链接,如赛事活动、新闻资讯、政策法规、健身教练、场馆开放、健身场地、健身指导、健身地图等超链接。
首页的最中间展示出最近发布的三项赛事活动,赛事活动中展示了赛事活动的名称、时间、地点等数据信息。
此外,用户如果想通过地图信息查找到相关的体育运动场所和设施的话,直接在最上方的超链接中点击健身地图,即可查找到相关健身运动地图信息,如图5所示。
图5 健身地图搜索健身场地
健身地图模块使用的是高德地图搜索引擎,在使用高德地图之前,需要申请成为高德地图的使用者,获取到地图开发者的Key便可以调用地图服务,通过调用高德地图API可以方便用户搜索到健身场地,健身场馆等信息。
全民健身公共服务平台的建设是新时代体育强国建设的重要举措之一,也是全民健康的重要方式之一,体育强国,健康中国更是离不开全民健身,全民健身已然成为国家发展战略,构建全面健身公共服务平台意义重大。本文正是在当前全民健身大背景下,采用Spring Cloud的微服务架构设计全民健身公共服务平台,通过平台的使用,方便全民公众参与到全民健身中来,为公众提供一种信息化的体育健身平台,满足人民日益增长的多元化的健身需求,通过平台的使用增强人民体育健身的获得感、幸福感。
基于微服务架构的全民健身公共服务平台,采用最新的微服务架构技术进行设计和开发,具备稳定性强,操作简单,便于维护和更新等特征,同时本文所设计的全民健身公共服务平台可以为其他智慧体育相关领域的平台提供设计思路的借鉴。