2010年4月10日星期六

IT 界的金融海嘯

金融海嘯的發生是由於金融產品層層打包、相互支撐,令其複雜的連帶關係無人明白,因此當出了問題,便如推骨牌般散開。

現在 IT 的發展卻走向相同的方向,IT 界這兩年最熱門的題目是 virtualization 和 cloud computing,通俗的說,前者是把「硬件」外判,後者是把「軟件」外判。站在公司立場,外判可以減低維護成本和加快開發時間,virtualization 建基於廣為人知的標準,風險不大,要找相同的服務供應商甚或自行建設亦不困難。cloud computing 則截然不同,當你的軟件由很多外部組件組成,假如其中一個組件掛了,你的軟件便會便會廢掉,由於各組件的溝通方法迴異,要代替亦不是一時三刻可以做到。

最大的問題是這個組件為什麼會出問題?假如這個組件是由其他組件組成,而這其他組件也由其他組件組成的話,可能問題不是因為你用的組件,而是這個組件的組件的組件,由於不同組件的溝通方法五花百門,即使你發現是這個組件出問題,你也沒有辦法即時找另一個組件替代;而提供這個組件的公司發現問題,也同樣遇到你的困境,單單這個組件可能已影響了一千數百個軟件的運作,更無法計算上游組件和下游組件的影響有多大。

要解決這個問題,最佳的方法是不用 cloud computing;要用 cloud computing,一定要確保這個 cloud 沒有千絲萬縷的關係,限制 cloud 的層數,並保存整個 cloud,以確保即使發生任何問題,都可以用備用的 cloud 運作。可是現在的社會一切講求成本效益,相信沒有太多人會明白這個問題的嚴重性而做好準備,相信 IT 界的金融海嘯將無可避免。

沒有留言: