GitHub轻松阅读微服务实战项目流程详解第一天:数据库表设计及其环境搭建项目运行

Posted Roninaxious

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GitHub轻松阅读微服务实战项目流程详解第一天:数据库表设计及其环境搭建项目运行相关的知识,希望对你有一定的参考价值。


github地址https://github.com/Zealon159/light-reading-cloud


项目服务端主要使用SpringBoot+SpringCloud+SpringCloudAlibaba+ElasticSearch+Redis+RabbitMQ的技术栈。

1.数据库表详解

此项目包含了使用了两个数据库

(1)reading_cloud_account(与账户相关的数据库)

1. 用户表(user)				#用户信息相关
2. 用户书架表(user_bookshelf)   #用户书的收藏
3. 用户喜欢看表(user_like_see)	#保存喜欢看的书的信息

Ⅰ.在user表中,定义了唯一标识符UUID、用户登录名、昵称、密码、手机号、头像等;id没有使用类似于mybatisplus的id生成策略,因此加入了UUID字段。
Ⅱ.书架表中主要定义user_id(确定是哪个用户的书架),book_id;由于user和book是多对多的关系,所以这个书架表可以间接理解为第三张中间表。剩下的属性还有最后一章节的id以及用户最后一次阅读该书的时间。
Ⅲ.用户喜欢看表主要有两个字段user_id和book_id,这个和Ⅱ有点类似,可以间接理解为第三个中间表,用来关联user表和book表(因为user和book之间是多对多的关系嘛)

(2)reading_cloud_resource(与阅读资源相关的数据库)

book(这个不用多说)
book_author(书的作者表)
book_chapter(书的章节表)
index_banner(轮播图表)   可以认为是轮播图的类型表
index_banner_item (轮播明细表)		具体某个类型的轮播图信息
index_booklist(书单配置表)这里可以指某个类型(其中包含了很多书),比如热门中包含了很多不同的书,热门就是其中的一条记录
index_booklist_item(书单配置明细表) 这里可以理解为index_booklist和book的第三张中间表
hot_search_word(热搜词表)
index_page_config


2.项目环境准备

(1)启动Nacos

Linux的Nacos的下载安装教程:https://blog.csdn.net/Kevinnsm/article/details/117387323
window应该比较简单!

(2)启动ElasticSearch
需要修改配置文件中关于es的配置

windows下载启动ElasticSearch教程:https://blog.csdn.net/Kevinnsm/article/details/120604537?spm=1001.2014.3001.5501
Linux下载启动ElasticSearch教程:https://blog.csdn.net/Kevinnsm/article/details/120622257?spm=1001.2014.3001.5501
ElasticSearch集群部署【windows+Linux双系统搭建】:https://blog.csdn.net/Kevinnsm/article/details/120616555?spm=1001.2014.3001.5501
ElasticSearch万字长文基础教程:https://blog.csdn.net/Kevinnsm/article/details/120604751?spm=1001.2014.3001.5501

(3)启动Redis

这个Redis启动比较简单,需要注意的是Redis密码的设置,当你的Redis关闭之后,密码就会重新回到默认不存在,所以需要特别注意每次开闭Redis时,项目配置文件中关于Redis的配置是否设置了密码。

(4)启动前端项目

(5)将Nacos作为配置中心

根据上方的四个文件,在nacos中进行配置
命名空间id需要与bootstrap.yml文件中的一致

在test命名空间下进行配置这四个配置文件


在account和book配置文件中有关于redis的配置

(6)访问localhost:9000即可成功

以上是关于GitHub轻松阅读微服务实战项目流程详解第一天:数据库表设计及其环境搭建项目运行的主要内容,如果未能解决你的问题,请参考以下文章

GitHub轻松阅读微服务实战项目流程详解第二天:API网关的设计与实现

GitHub轻松阅读微服务实战项目流程详解第三天:公共模块的设计与实现

Spring Cloud 微服务实战

SpringCloud微服务实战学习系列配置详解

Docker详解与部署微服务实战

微服务实战:选择微服务部署策略