- 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=1739296835-1apxijkEitEQU4nbDdN9raN7L6pQLRtw-0-136b8eb21dea6639105bb6337612592b)
types.go文件包含各种接口方法的签名中使用的结构体:
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/046-2-i.jpg?sign=1739296835-l3MH3m9VNFUQH5kXQAnKDUpKvkgfGNjD-0-b6b0e7c73ad051229f0086e1b2832f42)
![](https://epubservercos.yuewen.com/0B378C/17517093206689306/epubprivate/OEBPS/Images/047-i.jpg?sign=1739296835-q6IX2OcU8plNbmkJZJT5UNnN4cQOKk4V-0-ce918c916bad728c6da30752ae89bb0c)
object_model包仅使用基本的Go类型、标准库类型(time.Time)和Delinkcious域的用户自定义类型,完全是纯Go代码。在这个层次上,没有对网络、API、微服务或Go kit的依赖或认识。