![](/img/trans.png)
[英]YAML/JSON/XML: which one to choose on IPhone for communication over RESTFul protocol?
[英]Protocol Buffer vs Json - when to choose one over another
誰能解釋一下微服務架構何時使用協議緩沖區而不是 JSON? 反之亦然? 同步和異步通信。
當我們在做的時候,你看過flatbuffers嗎?
這里涵蓋了一些方面google protocol buffers vs json vs XML
參考:
https://codeclimate.com/blog/choose-protocol-buffers/
https://codeburst.io/json-vs-protocol-buffers-vs-flatbuffers-a4247f8bda6f
當消費者使用或可能使用內置原生支持 JSON 的語言(例如 Javascript)、Web 瀏覽器或需要人類可讀性的語言編寫時,我會使用 JSON。 說起來,至少對於異步調用來說,很多開發者都喜歡直接檢查隊列的內容進行調試,甚至在正常的開發過程中也很方便。 根據所使用的技術堆棧,使用 protobuf 只是為了減少網絡負載可能值得也可能不值得權衡,因為任何性能提升都不會在異步世界中為您帶來太多好處。 並且我們不再需要像過去在大多數語言中使用 JSON 編組和解組那樣編寫一堆樣板代碼。
我會將 protobuf 用於其他所有事情……如果根據上述考慮還有其他用例可供使用。 您可能會看到一些優勢,例如性能、網絡負載、其版本控制方案提供的向后兼容性、原始文件神奇地附帶的可愛文檔以及一些驗證! 如果由於某種原因你在微服務之間有很多 REST 或其他同步調用,protobuf 可以通過線路而不是 JSON 發送,沒有很多權衡,如果有的話,同時提供很多優勢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.