2011-10-16 85 views
1

我正在測試兩個客戶端服務器配置(ZeroMQ和WCF)。奇怪的是,我發現wcf比zeromq快!它是我的代碼,或者是網絡綁定,因此被刪除(因爲zeromq必須從我正在閱讀的內容中快速獲得)?zeromq比wcf慢嗎?

回答

2

有什麼約束力?

我真的想看到你的號碼和你的代碼,因爲我們一直在使用WCF自從它仍然被稱爲靛,當我們比較它最近zeromq,這是中甲聯賽這是從來沒有非常快,尤其是它自己的。但速度很大程度上取決於您使用的綁定。 Http顯然比其他一些更慢。

+0

綁定顯然是net.tcp以獲得「更正」結果。因爲wcf是序列化對象我雖然它可以很好地測試一個簡單的客戶類(Id,Name,BirthDate)。在zeromq已經測試了.net的二進制串行器,但速度很慢。所以我決定使用protobuf-net serializer,因爲每個人都說它的速度很快。結果是二進制串行器的平均值和一點點比wcf還差,並且protobuf-net比wcf快20%左右,但並沒有太大的差別。也許它的代碼? – Mantzas

+0

那麼這可能是正確的,取決於代碼,但這樣的微基準是不可靠的。 除此之外,主要優勢來自所有不在zeromq中的東西,而wcf需要/提供。在我的經驗中,WCF創建了比解決問題更多的問題,並沒有真正使它更容易編寫分佈式代碼。這就是說,當你封裝你的通信代碼時,切換它不應該太困難。 – mgoetzke