- Kubernetes微服务实战
- (印)吉吉·赛凡
- 166字
- 2020-08-27 06:09:11
3.5.1 对象模型
对象模型是由服务实现的所有接口和相关数据类型的集合,这里我们选择将它们全部放在一个包github.com/the-gigi/delinkcious/pkg/object_model中,它包含两个文件:interfaces.go和types.go。
interfaces.go文件包含三个Delinkcious服务的接口:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/046-i.jpg?sign=1739186349-4vTgLg6nOwieSBSGNkpkuaAFvcxwWVrv-0-f7f4854d330ce44c18f7824e15df9542)
types.go文件包含各种接口方法的签名中使用的结构体:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/046-2-i.jpg?sign=1739186349-Y6cr4a9uTxTMrj7GAqWwFnMOhKiTUUqk-0-ee94d3773ca8dfecd377b0eded6d8348)
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/047-i.jpg?sign=1739186349-oHNkHWmRcODF0ExIwqkbjeTodE2umSK5-0-45d7e30cea97e760fbcf4b9aff080266)
object_model包仅使用基本的Go类型、标准库类型(time.Time)和Delinkcious域的用户自定义类型,完全是纯Go代码。在这个层次上,没有对网络、API、微服务或Go kit的依赖或认识。