Google GWT的RPC原理淺析

主要是爲了轉發個帖子,Mark一下。 css

工做的時候遇到個問題,打包的war包部署到線上環境時發現post請求都發到了cdn.xx.com去了,這才產生了想法。 java

整個項目使用Google GWT的框架進行開發,GWT的好處在於使用Java的方式來寫JS,而且客戶端與服務端採用RPC的方式進行通信,簡化了沒必要要的序列化反序列化的操做,簡化了開發過程。那麼最終又是如何生成js代碼並和後臺通訊的呢。 服務器

在使用ANT進行編譯的時候,首先編譯java後臺代碼,以後調用GWT的編譯器com.google.gwt.dev.Compiler,這裏須要給他配置src文件加的地址,並可加上localworkers style等參數。這時候就會由Compiler去進行編譯工做。 框架

那麼編譯出來的js確定是須要和後臺servlet進行通訊的,默認狀況下gwt編譯出來的js代碼都是不加host的,也就是說google鼓勵js代碼和後臺代碼部署在同一個機器上,而css和圖片能夠放到cdn上。這樣若是js部署在cdn服務器上的話就不適用本身的場景了,也就是須要在rpc請求時手動的加上前面host的地址。 post

這裏還有個在rpcImpl中實現的序列化策略的問題,這裏尚未弄得很清楚,之後再加上 google

相關文章
相關標籤/搜索