.NET在開發效率、開發平台支持方面的優勢是非常明顯的,但在性能監控方面、高可用方面除了微軟之外一直沒有能讓人覺得具有壟斷性潛質的方案提供商。原因是多方面的,兩點原因很關鍵:一方面因為它太新了、6歲半的時候就要從1.0走到3.5;另一方面與原廠商相對薄弱的Java不同,.NET一直在微軟的強勢控制之下,在MOM、System Center Server和WMI的聯合之下,很少有廠商願意去做這個市場。不過相對一般的.NET集成和應用開發而言,這一塊市場潛力是巨大的,因為只要是夠一定規模的.Net應用都會考慮運行監控和性能調優,所以看到有這麼大塊“東坡肉”, Symantec的APM(Application Performance Management)部門也就不斷在推出至今第8個版本的i3 portfolio了。
i3專注於.NET和SQL Server應用,它主要有兩塊功能,面向實時應用情況監控的SmartLink和性能問題專家系統SmartTune,另外還有一個獨立的SDK,用戶可以根據監控需要定制監控內容。考慮到SOA的大環境,.Net應用往往與Java應用“雜居”在各種IT環境中,因此這個版本還包括了一個面向J2EE方面性能診斷的知識庫。
不過,不管分析師們對這個產品給予何種“令人鼓舞”的評價,相信它要在.NET和SQL Server監控市場上遇到來自微軟的多方面壓力。畢竟Windows系統層面的監控幾乎基於WMI機制,而與這個機制切合最好的恐怕非MOM莫屬;無論是學習還是實際應用,事實上Enterprise Library已經成為眾多.NET應用,尤其是大型應用的樣板,Instrument作為Common Block的主要組成,可以說是為整個Enterprise Library內置的,它的外圍是性能監控器和WMI;微軟Patterns && Practices社區一直在關注.NET監控和性能調整,除了Improving .NET Application Performance and Scalability、Monitoring in .NET Distributed Application Design和即將發布的Designing Manageable Applications for .NET等3個系列之外,其它系列也幾乎都會花很大時間來介紹如何提高.NET應用性能;甚至於在開發工具層面,Design Guidelines for Developing Class LibrarIEs已經直接嵌入到VSTS的開發環境中。內容很全面,不過似乎都給人一個“半生不熟”的感覺,對於很多企業而言幾乎沒有多少技術力量可以把這些內容串起來,而企業更傾向於在一個“現成的”監控產品基礎上提供面向業務指標的監控能力,但微軟似乎總在致力於其關鍵服務器產品——SQL Server、SharePonint、BizTalk的推廣上,可以說微軟遺留了一塊市場,不過相信在.Net生產廠商與企業信任度夾縫中的Symantec估計也很艱難。
盡管如此,i3倒是提醒了我們不僅要關注處於白盒階段的代碼和運行態的黑盒子系統,也要好好考慮怎麼把它變成灰盒子了,否則在IT服務化的今天,沒有運行維護體系支持的.Net應用,就會脆弱得像入冬後樹枝上最後一片葉子。