用 thrift 或 gRPC 之類的框架做 app 和伺服器的通信合適嗎?
12-25
和 JSON-RPC 以及各種真假 REST 相比,什麼樣的方案更適合偏內容型的 APP 呢?
內容型的App要考慮Cache吧,用HTTP協議會更好
copied from grpc.io:
Why would I want to use gRPC?
The main usage scenarios:
- Low latency, highly scalable, distributed systems.
- Developing mobile clients which are communicating to a cloud server.
- Designing a new protocol that needs to be accurate, efficient and language independent.
- Layered design to enable extension eg. authentication, load balancing, logging and monitoring etc.
How does gRPC help in mobile application development?
gRPC and Protobuf provide an easy way to precisely define a service and auto generate reliable client libraries for iOS, Android and the servers providing the back end. The clients can take advantage of advanced streaming and connection features which help save bandwidth, do more over fewer TCP connections and save CPU usage and battery life.
Thrift的python庫有坑。
業務量上去了用thrift會有效減少伺服器壓力和流量壓力。且具有更好的安全性。
但是量沒上去前用thrift並無優勢,而且不兼容現在很多已有框架。debug和日誌收集,單元測試和壓力測試框架都比較麻煩。需要自己手動修改。thrift可以用在手機端嗎
何必呢?對外通信最好還是基於HTTP,內部服務調用可以做RPC化,畢竟場景和生態不一樣。
我們的app用php寫的介面層,用go寫的server,
go和php用的yar,
目前最大的問題是,RPC不好進行七層代理
gRPC我們在用,Objective-C版本bug挺多的,升級也很費勁。期待5月份GC版本。
thrift + http我們在使用,另外evernote用的也是thrift。整體來看thrift還是很方面的,當時還沒有gRPC。
同求一款適合做移動服務端api的框架
推薦閱讀:
※目前主流的伺服器有哪些?軟體和硬體?
※公司在機房有幾台伺服器,進機房前應該做哪些防護措施呢?輻射會不會很大?
※查看一個網站伺服器操作系統的最準確方法是什麼?
※鹿晗關曉彤公開戀情,是如何把新浪微博的伺服器搞垮的?