感觉理解不是太到位。
"RPC"是进程间调用的一种方式,本质是本地程序调用远程计算机上过程/函数的机制。
"SDK"是软件开发工具包,它是将一组功能相对完整的工具封装在一起的一个工具包。
所谓"RPC"与"本地调用":猜测你想表达的应该是进程间调用与进程内调用。进程内调用,因为进程内资源共享,即可以访问相同的内存地址,其实就是堆内存数据。
而"SDK"则是为了方便适配某种特定语言,开发的工具包。
***
举例如开源软件"MinIO"。
它提供基于HTTP API接口,兼容亚马逊S3协议。
如 获取Object接口
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240921/3deceba8970c18a37742fc6d9b2bf2d9.png)
很多语言对这个HTTP协议做了封装,方便不同的语言进行使用。其实就是SDK
这些SDK的本质就是将函数调用转化为HTTP API的调用。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240921/d8c91a8e7f836ab1e433bdd5e4bfb985.png)