1. RPC是什么? RPC(Remote Procedure Call)远程过程调用协议,一种通过网络从远程计算机上请求服务,而不需要了解底层网络技术的协议。RPC它假定某些协议的存在,例如TPC/UDP等,为通信程序之间携带信息数据。在OSI网络七层模型中,RPC跨越了传输层和应用层,RPC使得开发,包括网络分布式多程序在内的应用程序更加容易。通俗来讲,就是提供者提供一些信息放到注册中心,然后消费者可以通过连接注册中心进行调用,可以有效避免一些重复代码的编写。
  2. 如何实现RPC,我用的dubbo,可以参考Dubbo 入门 | Apache Dubbo,进行快速入门代码的编写可以有效提高你对RPC更深的理解,其中入门的dubbo采用的是内嵌的Zookeeper,你可以正常运行快速入门的代码,但是你如果引入你的的项目中的话,会出现的种各样的错误(我帮大家踩坑了),所以我在这里使用的是nacos,可以有效地避免这些问题。

Nacos(Nacos 快速开始)进行下载安装

如何使用nacos?

可以阅读官方文档进行学习,我们可以输入以下命令进行单机启动

startup.cmd -m standalone

会出现以下界面




nacos为啥改用grpc nacos rpc_nacos为啥改用grpc


也可访问可视化界面,进行查看生产者提供接口或方法供生产者进行使用


nacos为啥改用grpc nacos rpc_nacos为啥改用grpc_02


applicationyml配置文件

dubbo:
  application:
    name: dubbo-springboot-demo-provider
  protocol:
    name: dubbo
    port: -1
  registry:
    id: nacos-registry
    address: nacos://localhost:8848

3.如果你需要把项目进行RPC远程调用,你可以把生产者和消费者两端需要的公共类进行一个提取,放到一个公共的项目中去,根据maven进行一个打包(jar包),然后进入pom文件将文件名进行复制,再分别到生产者和消费者中pom文件中进行一个导入,然后其中的接口都可以进行使用,省了写一些重复的代码,可以将dubbo中快速实现的代码放到一个新的项目中,将application.yml文件修改为nacos的配置文件,开启可视化界面,启动生产者,可以发现有注册信息,消费者可以通过调用得到这些信息!