idanBean 種豆得瓜

猶如傑克與巨人的魔豆,貫穿裝置到雲端。

Tag

RPC

Apache thrift between javascript and node.js

在處理前後台溝通時,之前是使用 RESTful API,某些前後台共同功能會需要兩次開發或是開成 RESTful API 由後台統一處理。為解決這個問題,所以決定導入 RPC 來達到跨語言呼叫,此修改也將為我們後台功能模組化帶來便利性。由於我們的前台用 Javascript 後台是 Go,一導入 thrith 就面臨  CORS 的問題,但目 thrift 只有 nodejs有針對 CORS 已經有 solution,不過以 node.js 而言可直接將靜態網頁掛在上面,也就不會有 CORS 的問題。下面和大家分享一種是將靜態網頁直接掛在 RPC Server,另一種是將 html和 RPC Server 分開,要如何加上 CORS 參數。  將靜態網頁掛在 RPC Server server side: client side:… Continue Reading →

Apache thrift between golang and node.js

下面要與大家分享的是使用 node.js 當 client 連接 go 的server。 之前已經試過使用 go client 和 java client 去連go server,原本以為因該是很容易就可以測試成功,沒想到光是想成功用 node.js連上 go server就讓我卡關一天。最後發現原因竟然是因為 transport 和 protocol 的選擇造成,在此分享可以實作成功的組合。 golang server 建置過程已在 Apache thrift with golang 分享,這裡只分享所使用的 transport 和 protocol 種類   node.js client 建立node.js 版本服務定義檔: thrift –gen js:node… Continue Reading →

Apache thrift with golang

之前介紹過 Apache thrift 的安裝步驟,下面要分享的是如何建立一個  golang 的 server 和 client。 建立 RpcService.thrift來定義所要提供的service   使用  “thrift –gen go RpcService.thrift ” 指令會建立 gen-go 的資料夾,裡面是針對提供 service 和使用 service 所產生的 golang code,將這資料夾加到 server 和 client端的project中 安裝 thrift 的 golang librbary: go get git.apache.org/thrift.git/lib/go/thrift server code 將想要提供服務的… Continue Reading →

RPC Solution Install Hands on

海量互連網服務需要依賴分散式架構來支持,而分散式開發的基石則是 RPC Introduction Solutions Apache Thrift: 是可伸縮跨語言的軟體框架。允許定義一個描述文件,描述資料類型和服務接口。依據該文件,編譯器方便地生成RPC client/server code。由 facebook 開發用做系统内各語言之間的RPC通信 。2007年由 facebook 貢獻到 apache 基金 ,現在是 apache下的opensource之一 。  gRPC: Google公布的 open source,基於最新的 HTTP2.0 協議,並支持常建的眾多語言。gPRC的Java實現底層是Netty,而且是用到最新的 Netty5.0.0.Alpha3 的開發版本。 Hands on Apache thrift 安裝: sudo apt-get install libboost-dev libboost-test-dev libboost-program-options-dev libboost-system-dev libboost-filesystem-dev libevent-dev automake libtool… Continue Reading →

© 2019 idanBean 種豆得瓜 — Powered by WordPress

Theme by Anders NorenUp ↑