<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          srpc高性能通用 RPC 框架

          聯(lián)合創(chuàng)作 · 2023-09-23 12:11

          srpc 是搜狗自研的 RPC 系統(tǒng),主要功能和特點(diǎn)如下:

          • 這是一個(gè)基于Sogou C++ Workflow的項(xiàng)目,兼具:
            • 高性能
            • 低開發(fā)和接入門檻
            • 完美兼容workflow的串并聯(lián)任務(wù)流
            • 對(duì)于已有pb/thrift描述文件的項(xiàng)目,可以做到一鍵遷移
          • 支持多種IDL格式,包括:
            • Protobuf
            • Thrift
          • 支持多種數(shù)據(jù)布局,使用上完全透明,包括:
            • Protobuffer serialize
            • Thrift Binary serialize
            • json serialize
          • 支持多種壓縮,使用上完全透明,包括:
            • gzip
            • zlib
            • snappy
            • lz4
          • 支持多種通信協(xié)議,使用上完全透明,包括:
            • tcp
            • http
            • sctp
            • ssl
            • https
          • 用戶可以通過http+json實(shí)現(xiàn)跨語言:
            • 如果自己是server提供方,用任何語言的http server接受post請(qǐng)求,解析若干http header即可
            • 如果自己是client調(diào)用方,用任何語言的http client發(fā)送post請(qǐng)求,添加若干http header即可
          • 內(nèi)置了可以與其他RPC框架的server/client無縫互通的client/server,包括:
            • BPRC
            • Thrift Framed Binary
            • Thrift Http Binary
          • 兼容workflow的使用方式:
            • 提供創(chuàng)建任務(wù)的接口來創(chuàng)建一個(gè)rpc任務(wù)
            • 可以把rpc任務(wù)放到任務(wù)流圖中,回調(diào)函數(shù)里也可以拿到當(dāng)前的任務(wù)流
            • workflow所支持的其他功能,包括upstream、計(jì)算調(diào)度、異步文件IO等
          • 更多功能和層次介紹

          Installation

          • srpc是一個(gè)靜態(tài)庫libsrpc.a,只有開發(fā)環(huán)境需要依賴libsrpc,編譯后二進(jìn)制發(fā)布不需要依賴libsrpc庫
          • srpc依賴workflow和protobuf3
            • protobuf需要用戶自行安裝v3.0.0以上的版本
            • workflow可以通過git的submodule形式進(jìn)行依賴
            • 壓縮庫snappy和lz4也以submodule的形式在third_party/中作源碼依賴
          git clone --recursive https://github.com/sogou/srpc.git
          cd srpc
          make
          sudo make install
          
          瀏覽 22
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  99人妻精品 | 人人撸人人操 | 国产精品久久777777是什么意思 | 成人无码欧美大片免费看 | 免费观看黄色成人网站 |