今天是連假第二天,我已經胖到自己都不認識了QQ
但還是要來寫一下挑人賽的東西
我們做完了四種傳遞的方法,現在來小結一下這四種傳遞方式,
client-server
(1) 最單純的傳遞模式,一個request對一個response
(2) 沒有使用樣板模式監聽(因為不是stream流)
client-servers
(1) Client發出一個request,server會回傳多個response
(2) 如果是非同步傳遞,Client會使用樣板程式對server進行監聽,直到接收到傳遞結束的標籤
clients-server
(1) Client發出多次request,server會回傳一個response
(2) Server會透過樣板程式接收request,直到Client傳送一個傳遞結束的標籤
(3) Client會使用樣板程式來監聽response,當接收到response以及傳遞結束的標籤時,結束連線
clients-servers
(1) Client發出多次request,server也發出多個response
(2) Server會透過樣板程式來接收request,Client也會使用樣板程式來接收response
(3) 當Client傳送完訊息後,會送一個傳遞結束的標籤給Server,準備結束連線
(4) 當Server接收到傳遞結束的標籤後,也回送一個傳遞結束的標籤,將整段連線結束
以上這些大概就是我們實作的四種傳遞方式的整理,可以看到,一旦使用stream的傳遞方式,多半會選擇以非同步傳遞以及搭配樣板程式來進行監聽以及傳遞,這在實際作業環境上也是比較富有彈性。
接下來,我們就來實作一個讀取檔案並傳遞的gRPC模型吧!