第三节|第三节 微服务基本案例设计

在线餐馆定位系统-OTRS

  • 基于微服务的原则对可以很轻松的对在线订餐系统划分为三个部分
  1. 餐馆服务:
此服务提供对餐馆资源提供如下功能:创建、读取、更新、删除操作和基于标准的搜索功能。 它提供餐馆和餐桌之间的关联,因为餐馆对Table的关联这里可以直接对Table的访问

  1. 用户服务:
用户服务主要是对用户资源进行CRUD操作

  1. 预定服务:
这个服务是基于用用户服务和餐馆服务,通过用户服务和餐馆服务,对预定智行CRUD操作。 通过使用餐馆搜索,与其相关联的餐桌的查找,并基于餐桌再指定时间段的可用性对其进行分配。 他会建立Restaurant/Table和User的关联

第三节|第三节 微服务基本案例设计
文章图片
otrs.png 上图为该项目基本模块,构建这样的微服务,就可以对不同的服务分别开发、修改、维护而不影响其他服务的主要原因
开发实现
  1. 定义服务API
    使用resetful风格的Api,具体可参见源码。
形如端点:获取餐馆信息的 GET/v1/restaurants/ 响应一般为json对象、 其中v1表示版本号。因为我们使用spring could 作为微服务的框架,这个端点应根据 注册中心的服务地址做映射,具体参考源码

  1. 服务类、存储库类、实体类、参考上一节分层设计和程序源码
  2. 预定和用户服务
    通过RestaurantService实现来开发预定(Booking)和用户(User)服务。User服务能提供 与
    CRUD相关的用户资源操作,。Booking服务可以提供CRUD操作餐桌位置可用性相关的。
  • 第四节 spring could框架
  • 【第三节|第三节 微服务基本案例设计】github 源码地址

    推荐阅读