『高级篇』docker之微服务业务分析(九)

zhugeaming 2019-01-25 01:45:15

原创文章,欢迎转载。转载请注明:转载自 IT人故事会,谢谢!
原文链接地址: 『高级篇』docker之微服务业务分析(九)

从本节开始微服务的开发,说到开发有几个问题需要解决,首先要知道我们需要开发什么?什么样的业务场景,分析业务场景,有几个微服务,每个微服务需要完成什么样的功能,微服务之间的关系,之间的依赖关系,他们之间是如何通迅的,这些都了解的之后,我们就可以进入开发阶段了。

业务场景

  • 用户可以注册和登录

现在的登录系统一般都是单点登录,支持跨域,在去使用其他系统的时候就不需要登录了,最好是不要使用session,最好是无状态的,避免使用session。

  • 登录用户可以对课程进行CURD操作

上边这个不是大而全的系统,只是微服务的功能,老铁咱们的目的很明确是搞微服务,不是学web开发的,我们通过上边的几个功能上从0开始了解微服务,一行不拉的完成开发微服务,让大家去开发有个真切的体会的。

基本的微服务的流程

  1. 用户访问api网关

  2. api网关访问2个用户的edgeservice(java) 和 课程的edgeservice(java)

  3. 这2个接口提供的http协议(rest)

  4. 用户的edgeservice 访问的用户服务

  5. 课程的edgeservice 访问的课程服务

  6. 用户服务对外接口是Thrift 跨语言的协议

  7. 课程服务对外接口使用Dubbo,只限java

  8. 用户服务(java) 后端有个数据库

  9. 课程服务(java) 后端也有一个数据库

  10. 信息服务(python)对外接口是Thrift (用户注册的时候,可能发送短信,或者邮件确认可能需要信息服务)

  11. redis 来进行用户的信息存储,提供给用户服务使用

  12. 课程的edgeservice 和 课程服务 通过 zookeeper 来完成服务的发现

  13. 用户查询课程 需要调用课程服务,这也就是微服务之间的调用

1240

PS:接下来,老铁跟我一起完成微服务的建设和搭建过程。

1240


蝉知2.0