旅游平台day01

1. 项目总体内容划分:

  • 项目介绍
  • 注册登录
  • 目的地
  • 旅游攻略
  • 旅游日记
  • 内容评论
  • 数据统计
  • 网站首页
  • 项目相关

2. 项目介绍

基于SpringCloud Alibaba+Spring boot的分布式微服务旅游点评网站。面向的受众是旅游爱好者。致力于打造一个真实详细的自助旅游咨询平台。提供景区旅游、宾馆酒店、渔乐家住宿、旅游车船、休闲娱乐、旅游购物等服务,是一个点评类内容的互联网旅游导向的项目。

  • 核心模块:
    目的地、旅游攻略、旅游日记、站内搜索。

  • 用户与角色:
    普通用户、后台管理员、游客

  • 系统关键词:
    平台、后台管理

  • 系统基本结构
    展示前端 (所有客户使用)、管理后端 (企业营运人员使用)、数据服务(项目数据维护)

2.1 项目目的

  1. 为了了解整个旅游点评项目各个流程和需求,对实际项目的开发有一个较为深刻的理解;
  2. 掌握项目中的一些重要的第三方工具/框架;如:oss、CKeditor、vue等的使用;
  3. 掌握提升自我价值的知识点;如:redis、mongodb、es、mbp等;
  4. 掌握如何从0到1项目的开发;

2.2 项目需求

2.2.1. 前端旅游网站
2.2.2. 后端管理

2.3 项目演示

2.4 技术路线

数据库:mysql+redis+es+mongodb

持久化层:spring-data+mbp

业务层:springboot

Web:springMVC

微服务方案:springcloud alibaba

前端:管理后台 jQuery+BootStrap3+layui+vue 前端展示 vue+css+jQuery

开发模式:管理后台 前后端分离 前端展示 前后端分离

2.5 项目搭建

2.6 项目细节

3. 微服务项目拆分

3.1 模块划分

  1. 目的地模块
  2. 攻略模块
  3. 游记模块
  4. 机票模块
  5. 酒店模块
  6. 评论模块
  7. 问答模块
  8. 搜索模块
  9. 用户模块

3.2 服务拆分原则

3.2.1 基于业务逻辑

简而言之就是基于模块去拆分

可能由于模块之间耦合度高造成一定的问题

3.2.2 基于稳定性

一个稳定的服务 和一个不稳定的服务

不稳定的服务频繁更新,会造成稳定的服务出现问题

3.2.3 基于可靠性

按照可靠性进行排序,对可靠性要求高的核心模块归在一起,对可靠性要求不高的归在一起

核心服务 非核心服务

3.2.4 基于高性能

对于用户访问量大的模块,要求服务性能好,单独拆分

对于请求量不大的服务,可以划分一起

3.3 拆分结果

  • 文章模块(旅游目的地管理攻略,游记管理)
  • 评论模块(文章评论管理)
  • 用户模块(登录注册)
  • 搜索模块(基于es实现全文搜索)
  • 数据模块(文章数据统计)
  • 问答模块(暂不考虑)

用户服务、文章服务、点评服务、数据服务、搜索服务

4. 开发周期与人员配比

  • 产品公司
    周期:3个月
    人员:后端6+ 前端3+
  • 外包公司
    周期:3-4个月
    人员:后端5- 前端2

5. 项目结构规划

微服务:用户服务、文章服务、点评服务、数据服务、搜索服务

网关:网关服务

前端服务:后台管理服务管理前端、前台展示页面服务

  • 父项目
    • 网关
      trip-gateway
    • 前端
      trip-website
      trip-mgrsite
    • 公共模块 父项目
      trip-common
      trip-common-core
      trip-common-redis
      trip-common-es
      trip-common-xxx
      ...
    • 微服务 api 父项目
      trip-server-api
      trip-article-api
      trip-comment-api
      trip-user-api
      trip-data-api
      trip-search-api
    • 微服务
      trip-server
      trip-article-server:文章/目的地
      trip-comment-server:评论
      trip-user-server:用户
      trip-data-server:数据统计
      trip-search-server:搜索

6. 项目创建

jdk:1.8

创建父项目trip-cloud:使用父项目进行统一依赖版本管理

创建网关模块trip-gateway:spring-cloud-starter-gateway spring-cloud-starter-alibaba-nacos-discovery

创建两个前端项目模块:trip-website trip-mgrsite

创建公共模块trip-common:不管理依赖,作为父模块的存在

trip-common-core:公共核心模块,导入lombok依赖

创建server父模块

创建api父模块

7. 用户服务

7.1 用户实体类

7.2 配置文件

7.3 小细节

使用构造方法注入:学习这种构造方法,与Autowired注入的不同之处

配置nacos命名空间:每个项目有自己的命名空间,不同的项目放到不同的命名空间下

本地配置转移到nacos配置中心:本地使用bootstrap.yam

配置文件profiles:activate:dev环境表示:开发环境

7.4 共享配置

7.4.1 单项目配置共享

nacos共享配置文件,使用profile:activate:test(dev)一键切换。

7.4.2 跨项目配置共享

相关推荐
道可云1 天前
道可云人工智能&OPC每日资讯|《江苏省“人工智能+文化旅游”行动方案(2026—2028年)》发布
人工智能·旅游
西电研梦2 天前
【26考研录取解析】部分专业难度降低,023卓越工程师学院(广研院)拟录取名单数据分析!
考研·旅游·研究生·考研复试·西安电子科技大学·西安
largecode3 天前
给用户打电话,怎么在对方手机显示为“XX旅游”?号码认证办理教程
linux·服务器·容器·智能手机·ssh·旅游·vagrant
GIS数据转换器4 天前
农业物联网可视化管理系统
人工智能·物联网·3d·无人机·知识图谱·旅游
智慧景区与市集主理人8 天前
全域旅游打破资源壁垒,巨有科技一机游赋能区域文旅高质量发展
大数据·科技·旅游
汤姆yu10 天前
基于微信小程序的旅游路线定制系统
旅游
永远不会的CC12 天前
Hello-Agents 初识智能体(实现一个简单旅游推荐智能体)
人工智能·学习·旅游
中冕—霍格沃兹软件开发测试13 天前
区块链交易最终一致性测试的核心挑战与实践框架
微服务·架构·单元测试·区块链·集成测试·旅游
码界筑梦坊15 天前
111-基于Python的中国旅游用户数据可视化分析系统
python·信息可视化·django·毕业设计·旅游
天辛大师17 天前
AI助力旅游扩大化,五一旅游公园通游年票普惠研究
大数据·启发式算法·旅游