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