最近終於有部分時間繼續開發爬蟲,主要的任務是客戶端和伺服器端分離,這就涉及到遠端呼叫的問題,所以研究了rpc,主要物件是hessian、jmi、dubbo、thrift。進而想用幾篇博文分享一下幾種遠端呼叫協議的一些東西,以後再接著聊爬蟲。有興趣可以訪問我的爬蟲專案:
經過研究最終選擇了自定義協議的方式完成rpc協議,以下是部分協議**:
public class crawlertransferprotocol
public void settype(int type)
public classgetcls()
public void setcls(classcls)
public t getcontent()
public void setcontent(t content)
public byte totypebyte() throws exception
}public int getcontentlen()
public byte tocontentbytes()
}
type是型別,爬蟲需要傳輸的資料分為三類,分別是命令、url、網頁文字;cls是發起端傳輸的具體型別,主要用於序列化和反序列化,這裡的序列化和反序列化協議選擇使用json協議;content代表需要傳輸的資訊物件,根據cls和content就能在被呼叫端反序列化生成被呼叫物件。
客戶端發起rpc呼叫的過程是這樣的:
開源框架 什麼是快速開發框架,推薦一款開源框架
作為乙個程式設計師,在開發的過程中會發現,有框架同無框架,做起事來是完全不同的概念,關係到開發的效率 程式的健壯 效能 團隊協作 後續功能維護 擴充套件.等方方面面的事情。很多朋友在學習搭建自己的框架,很多公司也在建立或使用自己的框架,網上開源的框架多如牛毛,每年新上線的各種框架也不知多少。而不停的...
推薦一款開源部落格框架WordPress
之前在我的論壇開源框架中介紹過phpwind和discus開源框架的本地配置和使用。最近我在用一款比較主流而且成熟的部落格框架來搭建自己的部落格,這就是wordpress 關於mysql的配置網上一大堆一大堆的,核心就是修改解壓縮包下的my檔案。開始搭建 1.解壓wamp 5.0到 例如c 自己選乙...
我們到底選擇哪一款開源的Socket框架?
fastsocket 簡稱 fs 突出 簡單靈活 上手容易。supersocket 簡稱 ss 突出 功能豐富 擴充套件強大。2.1 什麼是fastsocket?1 fs是乙個輕量級易擴充套件的c 非同步socket通訊庫,專案開始於2011年,經過近3年不斷調整與改進,目前在功能和效能上均有不錯的...