项目准备阶段
本章中,我们将开始一个大型实战项目——博客网站。通过“以战代练”的方式来学习如何构建Spring Cloud微服务架构,让读者走出理论的丛林,在实践中玩转微服务架构。
我们知道,在正式开始搭建框架之前,首先应分析项目需求,再进行原型和UI设计,接着设计数据库结构,最后根据项目特点进行技术选型。本章将依次为大家介绍框架搭建前的准备事宜。
项目介绍
- 相信大家都使用过博客,一个完整的博客网站大多包括以下功能。
- 博客列表:通过搜索或者分类展示用户发布的博客列表。
- 评论点赞:每个用户都可以对博客进行评论或点赞。
- 博客收藏:用户可以对自己喜欢的博客进行收藏,方便下次阅读。
- 个人中心:包含用户自己发布的博客列表、账号管理、收藏管理、评论管理等功能。
通过本实战练习,读者将学习到如何搭建注册中心、配置中心和服务网关,了解各服务间如何通信,学会负载均衡的运用,能够通过Elasticsearch实现博客搜索,学会消息队列的使用,明白如何制定安全策略来保证博客的安全性,能够利用容器技术发布Spring Cloud集群等。
需求分析
想要实现任何一个应用,第一步应该做需求分析。产品经理需要从用户那里获得第一手需求,并进行整理,经过不断地沟通,最终确定完整需求后进行产品设计。
那么,针对本书要开发的博客网站,先来看一下如图5-1所示的流程图,这个图更方便我们分析具体功能。
通过图5-1,可以分析出本博客网站的大致功能。
- 首页会展示一些通过后台管理系统置顶的博客,也可以记录用户浏览习惯,推送一些用户可能感兴趣的博客。
- 通过首页可以进入分类列表,根据分类展示该分类下的博客。
- 点击博客,可以进入指定的博客详情页。登录用户可以对博客评论、点赞和收藏。口首页会设置一个搜索功能,根据用户输入模糊搜索博客列表。
- 用户可以在博客网站进行注