高效能非同步RPC框架 kiss rpc介紹和測試

2021-09-16 18:10:22 字數 1411 閱讀 1660

1. 輕量級,簡單易用。支援idl和手動編寫協議兩種方式。模擬函式式呼叫方式,更加符合rpc遠端呼叫邏輯,簡單,透明。

易修改易使用,已有的**可以直接發布使用

資料格式支援向下相容

支援多值返回特性,支援超時機制,模擬grpc,thrift,dubbo快幾倍甚至 幾十倍。

支援管道資料壓縮,動態資料壓縮,請求式資料壓縮,運用場景靈活廣泛。

開發環境

* 環境: linux, unix, windows, macos

* 傳輸協議:capnproto(需要安裝此依賴庫,

* 開發語言:dlang

* 編譯器:dub

* github:

* 開發者筆記:[開發筆記](

動態壓縮技術: 當資料報大於200位元組或者設定的閾值的時候,會壓縮資料報,否則不壓縮資料報,有助於空間的利用和效能的提公升,response也會根據請求是否需要動態壓縮資料。

單請求壓縮:對於單個request請求進行壓縮,response也會根據請求的資料報壓縮方式進行壓縮。

管道壓縮: 可對指定的管道進行資料報壓縮。

待開發* 環境:ubuntu 16.04 lts(64位)

* 硬體:xeon cpu [email protected] x 8

* 記憶體:8g

* 網路:localhost(本地環迴)

1.單連線同步非同步測試:

2.1000併發非同步測試:

其他rpc效能對比 測試:(

*** 海量網際網路業務系統只能依賴分布式架構來解決,而分布式開發的基石則是rpc;本文主要針對兩個開源的rpc框架(grpc、 apache thrift),以及配合golang、c++兩個開發語言進行效能對比分析。

併發4個client程序,每個程序長連線10w rpc,服務端單程序多執行緒(協程),計算耗時;

1.單程序下,長短連線,兩個rpc框架和兩大語言對比

2.多程序(執行緒,協程)下,兩大rpc框架和兩大語言對比

百度開源高效能RPC框架 sofa pbrpc

使用sofa pbrpc只需要三步 樣例 參見 sample echo 定義協議只需要編寫乙個proto檔案即可。範例 echo service.proto package sofa.pbrpc.test option cc generic services true message echoreq...

高效能非同步爬蟲

目的 在爬蟲中使用非同步實現高效能的資料爬取操作。非同步爬蟲的方式 多執行緒 多程序 不建議 弊端 無法無限制的開啟多執行緒或者多程序 執行緒池 程序池 適當的使用 好處 可以降低系統對程序或者執行緒建立和銷毀的乙個頻率,從而很好的降低系統的開銷 弊端 池中線程或程序的數量是有上限 from mul...

搜狗開源srpc 自研高效能通用RPC框架

今年 7 月底,搜狗公司開源了內部的工業級c 伺服器引擎workflow,一路收穫業內許多認可和關注。9 月 15 日,作為workflow最重要的生態專案 srpc,乙個基於其打造的輕量級rpc框架,也在github上開源了。github搜尋 sogou srpc 即可找到該專案。乙個效能更好的t...