当前位置: 首页 > news >正文

网站建设首选原创先锋信誉好的电商网站建设

网站建设首选原创先锋,信誉好的电商网站建设,wordpress修改器,域名注册后能开始建设网站吗RPC基础知识 RPC 是什么? RPC#xff08;Remote Procedure Call#xff09; 即远程过程调用#xff0c;通过名字我们就能看出 RPC 关注的是远程调用而非本地调用。 为什么要 RPC #xff1f; 因为#xff0c;两个不同的服务器上的服务提供的方法不在一个内存空间…RPC基础知识 RPC 是什么? RPCRemote Procedure Call 即远程过程调用通过名字我们就能看出 RPC 关注的是远程调用而非本地调用。 为什么要 RPC 因为两个不同的服务器上的服务提供的方法不在一个内存空间所以需要通过网络编程才能传递方法调用所需要的参数。并且方法调用的结果也需要通过网络编程来接收。但是如果我们自己手动网络编程来实现这个调用过程的话工作量是非常大的因为我们需要考虑底层传输方式TCP 还是 UDP、序列化方式等等方面。 RPC 能帮助我们做什么呢 简单来说通过 RPC 可以帮助我们调用远程计算机上某个服务的方法这个过程就像调用本地方法一样简单。并且我们不需要了解底层网络编程的具体细节。 举个例子两个不同的服务 A、B 部署在两台不同的机器上服务 A 如果想要调用服务 B 中的某个方法的话就可以通过 RPC 来做。 一言蔽之RPC 的出现就是为了让你调用远程方法像调用本地方法一样简单。 RPC 的原理是什么? 为了能够帮助小伙伴们理解 RPC 原理我们可以将整个 RPC 的 核心功能看作是下面 5 个部分实现的 客户端服务消费端调用远程方法的一端。客户端 Stub桩这其实就是一代理类。代理类主要做的事情很简单就是把你调用方法、类、方法参数等信息传递到服务端。网络传输网络传输就是你要把你调用的方法的信息比如说参数啊这些东西传输到服务端然后服务端执行完之后再把返回结果通过网络传输给你传输回来。网络传输的实现方式有很多种比如最近基本的 Socket 或者性能以及封装更加优秀的 Netty推荐。服务端 Stub桩这个桩就不是代理类了。我觉得理解为桩实际不太好大家注意一下就好。这里的服务端 Stub 实际指的就是接收到客户端执行方法的请求后去执行对应的方法然后返回结果给客户端的类。服务端服务提供端提供远程方法的一端。 具体原理图如下后面我会串起来将整个 RPC 的过程给大家说一下。 服务消费端client以本地调用的方式调用远程服务客户端 Stubclient stub 接收到调用后负责将方法、参数等组装成能够进行网络传输的消息体序列化RpcRequest客户端 Stubclient stub 找到远程服务的地址并将消息发送到服务提供端服务端 Stub桩收到消息将消息反序列化为 Java 对象: RpcRequest服务端 Stub桩根据RpcRequest中的类、方法、方法参数等信息调用本地的方法服务端 Stub桩得到方法执行结果并将组装成能够进行网络传输的消息体RpcResponse序列化发送至消费方客户端 Stubclient stub接收到消息并将消息反序列化为 Java 对象:RpcResponse 这样也就得到了最终结果。over! 相信小伙伴们看完上面的讲解之后已经了解了 RPC 的原理。 有哪些常见的 RPC 框架 我们这里说的 RPC 框架指的是可以让客户端直接调用服务端方法就像调用本地方法一样简单的框架比如我下面介绍的 Dubbo、Motan、gRPC 这些。 如果需要和 HTTP 协议打交道解析和封装 HTTP 请求和响应。这类框架并不能算是“RPC 框架”比如 Feign。 Dubbo Apache Dubbo 是一款微服务框架为大规模微服务实践提供高性能 RPC 通信、流量治理、可观测性等解决方案 涵盖 Java、Golang 等多种语言 SDK 实现。 Dubbo 提供了从服务定义、服务发现、服务通信到流量管控等几乎所有的服务治理能力支持 Triple 协议基于 HTTP/2 之上定义的下一代 RPC 通信协议、应用级服务发现、Dubbo Mesh Dubbo3 赋予了很多云原生友好的新特性等特性。 Dubbo 是由阿里开源后来加入了 Apache 。正是由于 Dubbo 的出现才使得越来越多的公司开始使用以及接受分布式架构。 Dubbo 算的是比较优秀的国产开源项目了它的源码也是非常值得学习和阅读的 GitHubhttps://github.com/apache/incubator-dubboopen in new window官网https://dubbo.apache.org/zh/ Motan Motan 是新浪微博开源的一款 RPC 框架据说在新浪微博正支撑着千亿次调用。不过笔者倒是很少看到有公司使用而且网上的资料也比较少。 很多人喜欢拿 Motan 和 Dubbo 作比较毕竟都是国内大公司开源的。笔者在查阅了很多资料以及简单查看了其源码之后发现Motan 更像是一个精简版的 Dubbo可能是借鉴了 Dubbo 的思想Motan 的设计更加精简功能更加纯粹。 不过我不推荐你在实际项目中使用 Motan。如果你要是公司实际使用的话还是推荐 Dubbo 其社区活跃度以及生态都要好很多。 从 Motan 看 RPC 框架设计http://kriszhang.com/motan-rpc-impl/open in new windowMotan 中文文档https://github.com/weibocom/motan/wiki/zh_overview gRPC gRPC 是 Google 开源的一个高性能、通用的开源 RPC 框架。其由主要面向移动应用开发并基于 HTTP/2 协议标准而设计支持双向流、消息头压缩等功能更加节省带宽基于 ProtoBuf 序列化协议开发并且支持众多开发语言。 何谓 ProtoBuf ProtoBuf Protocol Bufferopen in new window 是一种更加灵活、高效的数据格式可用于通讯协议、数据存储等领域基本支持所有主流编程语言且与平台无关。不过通过 ProtoBuf 定义接口和数据类型还挺繁琐的这是一个小问题。 不得不说gRPC 的通信层的设计还是非常优秀的Dubbo-go 3.0open in new window 的通信层改进主要借鉴了 gRPC。 不过gRPC 的设计导致其几乎没有服务治理能力。如果你想要解决这个问题的话就需要依赖其他组件比如腾讯的 PolarisMesh北极星了。 GitHubhttps://github.com/grpc/grpcopen in new window官网https://grpc.io/open in new window Thrift Apache Thrift 是 Facebook 开源的跨语言的 RPC 通信框架目前已经捐献给 Apache 基金会管理由于其跨语言特性和出色的性能在很多互联网公司得到应用有能力的公司甚至会基于 thrift 研发一套分布式服务框架增加诸如服务注册、服务发现等功能。 Thrift支持多种不同的编程语言包括C、Java、Python、PHP、Ruby等相比于 gRPC 支持的语言更多 。 官网https://thrift.apache.org/open in new windowThrift 简单介绍https://www.jianshu.com/p/8f25d057a5a9 作者声明 如有问题欢迎指正
http://www.pierceye.com/news/94326/

相关文章:

  • 济南网站制作公司哪家好网站建设搞笑广告词
  • 建设主管部门门户网站摄影网站源码 免费下载
  • js 曲线 网站营销型网站方案书
  • 如何盗取网站软件开发的自学教程
  • 傻瓜建站家庭网络搭建网站
  • 扬中做网站的公司静态网页生成器
  • 襄阳做公司网站的软件公司wordpress网站好做排名吗
  • 电商网站功能介绍太原市做网站公司
  • 网站开发融资计划网站响应式和电脑手机
  • 专做水果的网站天门市规划建设局网站
  • 网站百度地图生成器建设一个网站可以做什么
  • 用阳寿做交易的网站建盏公司简介
  • 机械加工网站哪个好服装设计专业有前途吗
  • 深圳 企业 网站建设哪家好没有域名的网站需要备案吗
  • 深圳返利网站建设扁平化 手机网站首页
  • 郑州核酸点推vip服务网站优化标准
  • 建设银行河南分行网站邢台做网站哪里便宜
  • 网站收录原创文章wordpress新框架vue
  • 中工信融做网站怎么样凡科建站代理平台
  • 网站设计图能用ps做么dedecms 图片网站
  • 自己有服务器怎么做网站wordpress会员卡
  • 网站打不开 ...wordpress 评论表情插件
  • 网站开发框架 Wordpress网站整体设计流程
  • 深圳沙井网站建设网站建设管理工作
  • 网站广告条效果wordpress改关键词
  • 做移动网站首页软截获网站流量怎么做
  • 用dw做网站怎么添加背景图片大连网页制作培训
  • 新网站百度有审核期成都 网站建设培训班
  • 在线购物网站的设计成都网站seo费用
  • 访问国外的网站很慢wordpress 电商主题