一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种旅程规划与游记社交管理平台系统及其使用方法与流程

2022-03-23 08:25:57 来源:中国专利 TAG:


1.本发明涉及计算机系统领域,具体涉及基于微服务的一种旅程规划与游记社交管理平台系统及其使用方法。


背景技术:

2.我国有着日益增长的庞大旅游市场,其中大部分的旅客都选择了自主出行的方式。这部分旅客在旅行时都会遇到相近的问题,主要表现为缺乏对目的地的深度认识,受限于时间或经验原因难以制定个性化旅程规划,并且缺乏一个合适的当地向导陪伴旅行等。另一方面,大量的导游不仅熟悉当地情况,有丰富的旅行和制定旅程规划经验,而且通晓当地方言,非常适合为这部分自由行旅客提供包括旅程规划在内的多项服务。针对游客对旅行规划的随意性和对旅行目的地的陌生,游客有了对旅行良好体验的迫切需求。而导游虽然对旅行规划更专业,对旅行目的地也更熟悉,但却无法直接很好地对接有此需求的旅客。因此,一个能连接导游与自由行旅客,并能为他们之间的服务赋能的管理平台系统尤其有存在的必要性。
3.同时,大部分的自由行旅客在旅行结束后都有编写游记并发布在社交平台的习惯,但是他们往往需要手动记录旅程的所有细节,根据回忆进行编写,此过程不仅过于繁琐,而且没有充分利用出发前导游制定的旅程规划,导致有效信息的浪费。
4.目前缺乏标准化的旅程规划制定系统让导游根据旅客需求制定线上的旅程规划。旅客在旅行结束后无法充分利用行前制作的旅程规划作为蓝本来创作游记。


技术实现要素:

5.微服务架构是一种方法,用于在单个应用中包含众多松散耦合而且可单独部署的小型服务。这些服务拥有各自的技术栈,包括数据库和数据管理模型;通过表述性状态转移应用编程接口、事件流和消息代理的组合相互通信;以及按照业务能力进行组织,具有通常称为有界上下文的服务分隔线。使用微服务架构可以实现服务的快速启动和动态扩容以及独立部署,有利于实现整体的高性能与高可用。
6.本发明提供一种基于微服务的旅程规划与游记社交管理平台系统,以解决上述背景技术中提出的问题,具体场景描述如下:导游与自由行旅客能够在线上商议旅程细节,导游以标准化的方式对商定的旅程进行规划记录。旅程结束后,旅客可以获取其所属导游创建的旅程规划作为蓝本,基于此蓝本创建其专属的游记,并发布在游记社交平台。
7.所述平台系统使用基于角色的访问控制模型(role-based access control model/rbac模型)来对用户权限进行控制,包括限制旅客仅能获取所属导游制定的旅程规划,以及限制导游只能编辑由其创建的旅程规划。
8.为达到上述目的,本发明提出如下技术方案:一种基于微服务的旅程规划与游记社交管理平台系统,包括旅程规划系统、游记社交系统、用于提升系统性能的中间件以及必备的微服务组件。
9.其中,所述微服务组件包括:终端设备、代理服务器、网关、注册中心服务器、服务中心集群、存储设备;上述各个设备之间通过微服务的方式进行部署。
10.进一步地,所述通过微服务的方式进行部署为通过持续集成和容器管理的方式进行部署;所述持续集成和容器管理的容器环境为docket,源代码管理仓库为git,代码编译器采用maven,容器调度采用k8s,并且基于gitlab进行持续集成(ci)和持续部署(cd)。
11.进一步地,该平台系统使用websocket作为通信协议以实现各个服务器与旅客客户端的双向通信,用于让各个服务器将最新版本的旅程规划推送到旅客客户端。
12.进一步地,中间件使用redis作为系统缓存来提高读取速度,使用rocketmq作为消息队列来提高系统响应速度。
13.进一步地,所述平台系统使用nacos作为注册中心、使用spring security作为安全框架、使用spring cloud gateway作为网关、使用mysql作为业务数据存储数据库、使用fastdfs作为分布式文件存储系统、使用springboot开发单个微服务组件。
14.此外本发明还提供了一种基于微服务的旅程规划与游记社交管理平台系统的使用方法,包括如下步骤:
15.步骤1:旅客(2)与导游(1)使用任意交互工具(3)讨论旅程细节;
16.步骤2:导游(1)根据讨论结果在旅程规划系统(5)中根据标准化模板输入内容,以编写旅程规划;
17.步骤3:服务中心集群将最新的旅游规划版本推送到旅客(2)的客户端;
18.步骤4:若导游(1)与旅客(2)双方均对当前旅程规划满意,则结束;反之,重复执行步骤1-4。
19.进一步地,上述游记社交系统(4)使用mongodb作为游记的存储数据库。
20.进一步地,当旅客(2)需要创建一份新游记,游记社交系统(4)会根据mongodb数据库(8)中所记录的旅客(2)与导游(1)的关联关系,找到其最新旅程的规划,通过格式转换生成一份游记蓝本,旅客(2)可基于此游记蓝本进行编辑与个性化创作;更新后的游记使用mongodb数据库(8)进行保存;所述平台系统使用搜索引擎为elasticsearch搜索引擎(10);为了加快上述游记社交系统3的响应速度,通过rocketmq消息队列(9)将mongodb数据库(8)保存的游记异步转换成elasticsearch文档对象并保存在搜索引擎节点;游记社交系统(4)从mysql数据库(7)进行订阅关系的读写,旅程规划系统(5)对redis缓存(6)进行读写操作,同时redis缓存(6)对上述读写操作实现与mysql数据库(7)进行同步。
附图说明
21.图1为本发明所述的一种基于微服务的旅程规划与游记社交管理平台系统的整体系统架构示意图;
22.图2为旅程规划系统与游记社交系统的交互图;
23.图3为单次旅程规划包含信息的示意图。
具体实施方式
24.本发明提出的一种基于微服务的旅程规划与游记社交管理平台系统的整体架构如图1所示。本发明的平台系统包括旅程规划系统(5)、游记社交系统(4)、用于提升系统性
能的中间件以及微服务组件。
25.其中微服务组件包括:终端设备、代理服务器、网关、注册中心服务器、服务中心集群、存储设备;上述各个设备之间通过微服务的方式进行部署。具体而言通过持续集成和容器管理的方式进行部署。持续集成和容器管理属于自动化部署方式,其具有高效的特点。具体而言,持续集成和容器管理的容器环境为docket,源代码管理仓库为git,代码编译器采用maven,容器调度采用k8s,并且基于gitlab进行持续集成(ci)和持续部署(cd)。
26.该系统为运维人员和用户提供服务,运维人员例如系统管理和检修维护的人员;用户包括旅客、导游,旅客可以是国内旅客,也可以是外国游客,例如留学生。
27.该平台系统使用websocket作为通信协议以实现各个服务器与旅客客户端的双向通信,用于让各个服务器将最新版本的旅程规划推送到旅客客户端。websocket是一种在单个tcp连接上进行全双工通信的协议。websocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在websocket中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
28.上述中间件包括使用redis作为系统缓存来提高读取速度,使用rocketmq作为消息队列来提高系统响应速度。redis是一个key-value存储系统,redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得redis可执行单层树复制,存盘可以有意无意的对数据进行写操作。rocketmq是阿里巴巴在2012年开源的分布式消息中间件,中间件是一类连接软件组件和应用的计算机软件,它包括一组服务,以便于运行在一台或多台机器上的多个软件通过网络进行交互。
29.上述的相关组件包括使用nacos作为注册中心、使用spring security作为安全框架、使用spring cloud gateway作为网关、使用mysql作为主要业务数据存储数据库、使用fastdfs作为分布式文件存储系统、使用springboot开发单个微服务组件。nacos提供了一组简单易用的特性集,可实现动态服务发现、服务配置管理、服务及流量管理。fastdfs是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。
30.图2示出了旅游规划系统5与游记社交系统4的交互方式。旅程规划系统5提供标准化的旅程规划模板,包含一个旅程的宏观信息以及旅程中每一天具体的行程列表,宏观信息和旅程规划参见图3。进一步地,上述的旅程宏观信息包括旅程规划创建人,例如导游1、旅程标题、旅程分类、出发时间、出行天数、旅程审核状态、旅程原创标志位、私密旅程标志位以及旅程简介。
31.进一步地,上述的旅程中每一天具体的行程列表可由四种不同类型的行程组成,包括住宿行程、目的地行程、交通行程以及餐饮行程。所述的每一天具体的行程列表中的行程顺序可以调整。具体地,所述的住宿行程内容包括酒店星级、酒店中文及外文名字、酒店所在国家、城市及具体地址、酒店评分、酒店网址链接、酒店最早入住时间及最晚离开时间、酒店类型、酒店建成年份、酒店房间规模、酒店预定取消政策以及保留字段。所述的目的地行程内容包括目的地的中文及外文名称、目的地所在国家、城市及具体地址、目的地网址链接、目的地评分、预计活动时间、目的地描述以及目的地特殊要求。所述的交通行程内容包括交通工具类型、该交通方式的中文及外文名字、交通工具编号、出发时间和到达时间、出发地点和到达地点以及交通舱位等级。所述的餐饮行程内容包括餐馆星级、餐馆中文及外
文名称、餐馆所在国家、城市及具体地址、餐馆评分、餐馆网址链接。
32.具体的旅程规划可总结为如下步骤:
33.步骤1、旅客2与导游1使用任意交互工具3讨论旅程细节。
34.步骤2、导游1根据讨论结果在旅程规划系统5中根据标准化模板输入内容,以编写旅程规划。
35.步骤3、服务中心集群将最新的旅游规划版本推送到旅客2的客户端。
36.步骤4、若双方均对当前旅程规划满意,则结束;反之,重复执行步骤1-4。
37.上述游记社交系统3使用mongodb作为游记的存储数据库,即mongodb数据库8,作为典型的非关系型数据库;mongodb能够很好地存储非结构文本,这样的性质使其非常适合存储如游记这种无固定格式的富文本数据。游记中的图片与视频均使用url方式记录。
38.当旅客需要创建一份新游记,游记社交系统3会根据mongodb数据库8中所记录的旅客2与导游1的关联关系,找到其最新旅程的规划,通过格式转换生成一份游记蓝本,旅客可基于此游记蓝本进行编辑与个性化创作。更新后的游记使用mongodb数据库8进行保存。
39.为了使旅客2能在上述游记社交系统3中根据关键词搜索其余旅客的游记,上述平台使用了elasticsearch作为搜索引擎,即elasticsearch搜索引擎10。
40.为了加快上述游记社交系统3的响应速度,使用了rocketmq作为消息队列,即rocketmq消息队列9来实现从mongodb游记异步转换成elasticsearch文档对象并保存在搜索引擎节点的过程。rocketmq消息队列9的引入将游记社交系统3的响应与文档对象的转换保存进行了解耦,有效保证了系统的可用性。
41.游记社交系统3从前文所述的mysql数据库7进行订阅关系的读写,旅程规划系统5对redis缓存6进行读写操作,同时redis缓存6对上述读写操作实现与mysql数据库7进行同步,以保存旅程规划数据。
42.本发明为导游与自由行旅客提供了沟通的平台,并基于此设置了标准化的旅程规划模板,并可以向旅客动态展示更新旅程。本发明中游记社交系统与旅程规划系统的有机结合充分赋予了旅行前所制定规划的复用能力,以其作为蓝本进行游记创作可以提高效率。本发明使用基于微服务的方式进行开发,系统中的每个模块都可以进行独立开发和独立部署,易于扩展和维护,能有效隔离故障和资源,避免故障蔓延导致整个系统崩溃。
43.以上阐述了本发明的技术方案,一切不脱离本发明的技术方案之实质的替代,都应在本发明的权利要求的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献