socket,protobuf,rpc之間的理解

2021-09-01 12:31:12 字數 573 閱讀 9260

之前有篇博文講解了prc和socket的區別,但是僅僅是從使用者實現角度來判斷的,這幾天在學習了brpc之後,在這三者的層次上又有了更深刻的理解,這裡對這三者的比較在做乙個簡單的小節。

1、三者的定義

socket

套接字,與底層tcp/ip網路協議棧打交道的物件,直接利用socket進行通訊的,類似傳統的tcp/udp的通訊,這種通訊是以資料流的形式進行交換的,也就是我們稱為的二進位制資料。

那麼當cs兩端取得資料之後,也是由二進位制資料,至於讀出來的資料具體代表什麼,需要使用者自己去完成。

protobuf

google開源的一種序列化和反序列化工具,這個工具就是使用者可以自己定義不同的資料型別,然後通過這個工具將不同資料型別轉換為二進位制,實際是一種編碼的過程,然後通過網路傳統,同樣可以進行反序列化,得到使用者自己定義的不同資料型別的資料。但是它只是一種資料序列化和反序列化的工具,對於序列化或者反序列化的資料有什麼含義,具體做什麼這些都不知道。

rpc2.分層理解

3.rpc用處

rpc的用處顯而易見,對於分布式程式設計來說rpc都是不可缺少的,只要使用的rpc呼叫的好,就可以像呼叫本地的程序一樣方便。

Batch Normalization的理解體會

網路上對於batch normalization的講解也非常多了,本文主要想記錄下對此的心得體會,並總結下我所理解的bn的優勢。在此先mark一下我認為寫得比較全面的資料 bn的原理 文章1 深度學習 深入理解batch normalization批標準化 bn的 batch normalizati...

25 理一理關於tensorflow的各種騷操作

1.tf.squeeze 2.tf.cast 3.tf.expand dims 4.tf.slice 按照指定的下標範圍抽取連續區域的子集 講的不錯 5.tf.gather 按照指定的下標集合從axis 0中抽取子集,適合抽取不連續區域的子集 6.tf.one hot 7.tf.transpose ...

對自動化測試和效能測試之間的關係的簡單理解

什麼是自動化測試一般是指軟體測試的自動化,軟體測試就是在預設條件下執行系統或應用程式,評估執行結果,預先條件應包括正常條件和異常條件 自動化測試 介面自動化 介面自動化什麼是效能測試效能測試是通過自動化的測試工具模擬多種正常 峰值以及異常負載條件來對系統的各項效能指標進行測試。負載測試和壓力測試都屬...