如何设计一套SPI应用架构

一、API和SPI区别
1.1 API

为了做一个简单区别,先来说一下API(Application Programming Interface) ,目前一般企业架构内部都会有一个RPC框架,如果没有自研的也都在使用开源的比如比较有名的DUBBO,JSF等。业务需求确定之后,技术侧也会相互沟通说需要对方提供几个API接口。从面向接口编程的方式而言如下图1所示。另外还有当前的开放平台也是把企业内部的接口通过API网关暴露出去提供给第三方开发者如图2所示。这两种情况下说的都是API。接口我自己定义,自己来实现,然后暴露出去供别人调用,这是属于API概念。

图1

图2

1.2 SPI

SPI(Service Provider Interface)  一方制定接口,另外一方提供接口实现,比如在开放平台中,有平台制定接口,第三方去实现。这里的第三方是指开放平台的开发者,SPI这种调用关系多存在于开放平台架构中。接口我自己定义,但是我并不去实现,而是有其他模块或系统去实现,这是属于SPI概念。

1.3 小节
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值