掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
前言

在某一個傍晚,與頭為產(chǎn)品“雨后春筍” 歷經(jīng)一個下午的討論的結(jié)束而得出一個新的idea,架設一個暫現(xiàn)內(nèi)部使用的“云”平臺,目前主要含有微信相關(guān)服務內(nèi)容,主要目標為實現(xiàn)統(tǒng)一的微信接入地址 而可以使用微信自動接入的功能(微信開放平臺提供的一種授權(quán)方式,可以托管客戶的微信,而不需要客戶去配置服務器url、token等參數(shù)),而次要的目 的主要是為了公司內(nèi)部開發(fā)團隊更快的接入微信和實現(xiàn)不同項目對微信的統(tǒng)一管理與數(shù)據(jù)共享。
伴隨著這樣的需求,我打算重新造一個輪子,微信SDK(Rabbit.WeiXin),旨在提供更好的性能,更易擴展的機制。今天它以開源的姿態(tài)進入大家的視野,希望大家可以嘗試使用起來,更希望大家能夠參與進這個項目之中。
特點
功能
支持的消息類型
請求消息(參考文檔:http://mp.weixin.qq.com/wiki/10/79502792eef98d6e0c6e1739da387346.html)
GitHub:https://github.com/RabbitTeam/WeiXinSDK/tree/master/Rabbit.WeiXin/SDK/Rabbit.WeiXin/Messages/Request
事件消息
由于較多直接給出GitHub地址:https://github.com/RabbitTeam/WeiXinSDK/tree/master/Rabbit.WeiXin/SDK/Rabbit.WeiXin/Messages/Events
響應消息
GitHub:https://github.com/RabbitTeam/WeiXinSDK/tree/master/Rabbit.WeiXin/SDK/Rabbit.WeiXin/Messages/Response
消息處理中間件
支持的API
暫不支持的API
關(guān)于性能
在之前的文章就有提及新的SDK是比較追求性能的而在beta1版本中通過一些性能測試還算是達標,后續(xù)我會繼續(xù)在性能上做足優(yōu)化,爭取提升并發(fā)量。
下面是與市面上一個較成熟的微信SDK的性能測試對比:
測試環(huán)境:
CPU:i7-3610qm
內(nèi)存:16gb
系統(tǒng):Windows 8.1 x64
編譯配置:Release
迭代次數(shù):10000(一萬次)
計數(shù)工具:CodeTimer
對比的SDK:暫不透露
測試結(jié)果:
為了防止和用來做對比的SDK粉絲或作者爭吵,所以具體的測試代碼我不放出了,同樣用來被對比的SDK名稱我也不公布了,但測試結(jié)果絕對公正。
關(guān)于擴展性
在消息處理過程中采用了管道模式的設計,借鑒了Open Web Interface的思想和一些規(guī)范來打造整個消息處理的模型,使消息處理變得更加輕便。
同時SDK內(nèi)部內(nèi)置了一個簡單的依賴注入實現(xiàn) IDependencyResolver,解耦了很多服務與服務實現(xiàn)。
下面的Demo項目的中的微信請求Action:
使用者可以自行注冊處理的中間件來完成自定的邏輯,后面會專門寫具體的使用教程。
關(guān)于易使用性
這一塊不過多闡述,因為目前這一塊并不是很突出,會在后續(xù)的版本優(yōu)化這一塊的內(nèi)容。
關(guān)于架構(gòu)
消息處理
請求消息
事件消息
響應消息
消息格式化器
開源信息
開源協(xié)議:Apache License 2.0
托管地址:https://github.com/RabbitTeam/WeiXinSDK
示例地址:https://github.com/RabbitTeam/WeiXinSDK/tree/master/Rabbit.WeiXin/Sample/Rabbit.WeiXin.Sample
Get By Nuget
主要分為兩個組件
Rabbit.Web
地址:https://www.nuget.org/packages/Rabbit.WeiXin/
命令:Install-Package Rabbit.WeiXin.MvcExtension
Rabbit.WeiXin.MvcExtension
地址:https://www.nuget.org/packages/Rabbit.WeiXin.MvcExtension/
命令:Install-Package Rabbit.WeiXin
交流方式
QQ群:384413261
Email:[email protected]
寫在最后
頭說不打廣告不準開源=_=,so…該SDK會應用在我們的自主產(chǎn)品“雨后春筍”,地址:http://www.chunsun.cc/,歡迎大家參觀,有合作意向的可以聯(lián)系0591-63323934。
后面會在繼續(xù)完善SDK(性能和還未實現(xiàn)的API及一些調(diào)優(yōu))的同時,寫一些文章來說明如何使用SDK,和關(guān)于SDK設計的相關(guān)文章。

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流