原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!
原文链接地址:『高级篇』docker之微服务业务分析(九)
从本节开始微服务的开发,说到开发有几个问题需要解决,首先要知道我们需要开发什么?什么样的业务场景,分析业务场景,有几个微服务,每个微服务需要完成什么样的功能,微服务之间的关系,之间的依赖关系,他们之间是如何通迅的,这些都了解的之后,我们就可以进入开发阶段了。
业务场景
- 用户可以注册和登录
现在的登录系统一般都是单点登录,支持跨域,在去使用其他系统的时候就不需要登录了,最好是不要使用session,最好是无状态的,避免使用session。
- 登录用户可以对课程进行CURD操作
上边这个不是大而全的系统,只是微服务的功能,老铁咱们的目的很明确是搞微服务,不是学web开发的,我们通过上边的几个功能上从0开始了解微服务,一行不拉的完成开发微服务,让大家去开发有个真切的体会的。
基本的微服务的流程
- 用户访问api网关
- api网关访问2个用户的edgeservice(java) 和 课程的edgeservice(java)
- 这2个接口提供的http协议(rest)
- 用户的edgeservice 访问的用户服务
- 课程的edgeservice 访问的课程服务
- 用户服务对外接口是Thrift 跨语言的协议
- 课程服务对外接口使用Dubbo,只限java
- 用户服务(java) 后端有个数据库
- 课程服务(java) 后端也有一个数据库
- 信息服务(python)对外接口是Thrift (用户注册的时候,可能发送短信,或者邮件确认可能需要信息服务)
- redis 来进行用户的信息存储,提供给用户服务使用
- 课程的edgeservice 和 课程服务 通过 zookeeper 来完成服务的发现
- 用户查询课程 需要调用课程服务,这也就是微服务之间的调用
PS:接下来,老铁跟我一起完成微服务的建设和搭建过程。
网友评论