日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

RPC简易框架开发

發布時間:2025/3/21 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RPC简易框架开发 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為什么80%的碼農都做不了架構師?>>> ??

  • 什么是rpc

  • RPC,即 Remote Procedure Call(遠程過程調用),采用客戶機/服務器模式。請求程序就是一個客戶機,而服務提供程序就是一個服務器。首先,客戶機調用進程發送一個有進程參數的調用信息到服務進程,然后等待應答通知。在服務端,進程保持睡眠狀態直到調用信息到達為止。當一個調用信息到達,服務端獲得進程參數,進行業務操作,發送答復信息,等待下一個調用信息。最后,客戶端調用進程接受答復信息,獲得答復結果,然后繼續業務操作。
  • 通俗一點就是,調用遠程計算機上的服務,就像調用本地服務一樣。
  • RPC可基于HTTP或TCP協議實現,Web Service是基于HTTP 協議的RPC,它具有良好的跨平臺性,但其性能卻不如基于TCP 協議的 RPC。會兩方面會直接影響 RPC 的性能,一是傳輸方式,二是序列化。
  • TCP是傳輸層協議,HTTP是應用層協議,傳輸層較應用層更為底層,在數據傳輸方面越底層越快。就序列化而言,Java提供了默認的序列化方式,但是在高并發場景下會帶來瓶頸, 現在也出現了好多優秀的序列化框架,從而提供更高效的性能,如protobuf、hessian、jackson等。
  • RPC的簡易結構

  • 框架中使用的技術
    Spring:它是最強大的依賴注入框架,也是業界的權威標準。
    Netty:它使 NIO 編程更加容易,屏蔽了 Java 底層的 NIO 細節。
    Protostuff:它基于 Protobuf 序列化框架,序列化更高效。
    ZooKeeper:提供服務注冊與發現功能,開發分布式系統的必備選擇,同時它也具備天生的集群能力。

  • 工程目錄結構

  • 目錄結構結構說明

    rpc-client:創建netty客戶端,通過動態代理調用對象,服務發現。
    rpc-common:序列化、編碼、解碼
    rpc-registry:服務注冊、服務發現
    rpc-sample-app:模擬遠程調用的應用端
    rpc-sample-interfaces:服務接口
    rpc-sample-service:服務實現,具體業務邏輯編寫
    rpc-server:netty服務端,將業務實現發布為遠程服務

  • 源碼

    gitee地址:https://gitee.com/riseee/rpc-sample

轉載于:https://my.oschina.net/riseee/blog/1586122

總結

以上是生活随笔為你收集整理的RPC简易框架开发的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。