SOA架构介绍与简单代码示例

1.SOA架构介绍

SOA (Service Oriented Architecture)“面向服务的架构":是一种设计方法,其中包含多个服务,服务之间通过相互依赖最终提供一系列的功能。一个服务通常以独立的形式存在与操作系统进程中。各个服务之间通过网络调用。

微服务架构=80%的SOA服务架构思想+100%的组件化架构思想+80%的领域建模思想
微服务架构是在SOA的基础上进行了升华,它强调业务需要彻底的组件化和服务化。
在微服务架构中,原有的单个业务系统会被拆分为多个可以独立开发、设计、运行的小应用。
这些小应用之间通过服务完成交互和集成,每个微服务都可以被单独部署和扩展。

在这里插入图片描述

2.应用代码示例

在这里插入图片描述
在这里插入图片描述

如上图所示,在k8s环境中的容器暴露了两个service,分别是服务A与服务B

  • 服务A kubeflow-dashboard:python代码实现,该服务为kubeflow相关的业务后端容器,其中包括启动notebook、pipeline、k8s等相关功能
  • 服务B xxx-service:go代码实现,该服务为平台相关的容器,如资源购买、用户鉴权、计费等功能

2.1 服务B调用服务A的restapi

首先根据k8s暴露出的service,当然由于是ClusterIP的service,故只能在集群内部访问,服务访问链接如下所示

# 域名访问http://kubeflow-dashboard.infra/
CubeStudioUrl := "http://kubeflow-dashboard.infra/"

# ip访问http://21.201.27.12/
clusterIP := service.Spec.ClusterIP
FrontExternalIpSchema := "http://" + clusterIP + "/"

因此,我们直接根据以上暴露的服务与接口即可调用服务A,如下所示。
在这里插入图片描述

2.2 服务A调用服务B的restapi

与上例类似,仅有语法区别
在这里插入图片描述

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pistachiout

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值