09年必須關注的10大軟件架構主題

原貼網址: http://www.jdon.com/jivejdon/thread/36197.html

在過去一年左右的時間裏,在相當平靜,企業的軟件架構變得相當令人振奮的一次。 我們終於看到新出現的一些課題已經融入主流,並潛在地改變了遊戲規則,一些創新,本來徘徊在邊緣的技術也開始進行顛覆式革命。

一些大的變化是:傳統的霸權的第3和第4層應用模型 ,重量級的運行平臺(集中式數據庫計算模型),以及古典面向服務SOA的架構已經主宰了近十年,現在幾乎被四分五裂了一系列新辦法的設計和架構應用。

這 些聽起來似乎很輕率的話,但確實在悄悄發生,建築師正在尋找新的解決辦法,因爲他們在新的領域中遇到了新的挑戰。 因此,這些新的方式可以解決現行做法的缺點或添加新的功能, 例如一些例子包括建立可重複使用的平臺的應用,OpenAPI開放API的故事 ,或符合成本效益的創建架構,可以即時支持全球分銷,數百TB的數據,以及數以千萬計的用戶。

這些創新的特點是因爲當前超大的系統正在構建(遭遇到由於規模scale,性能performance或功能集 feature set等引起的獨特特點) ,軟件的進步,也寬範圍地跨越從日常的軟件企業系統及互聯網應用新移動設備,如新興空間的社會化網絡應用。

主 流結構的應用,如關係型數據庫模型,集中獨佔式計算運行方式,甚至是一些已經確定成熟多年的軟件技術也正在受到挑戰:非關係數據系統non- relational systems , 雲計算cloud computing ,新的拉動爲基礎 pull-based的系統的一致性和數據的完整性,甚至是大型支持系統的運行和性能設計。

我們也不要忘記,Web 2.0帶來的方法和設計模式 也 是越來越廣泛地在在線系統和企業架構上的應用。 Social architectures, crowdsourcing, 和open supply chains正在成爲規範,這些最新的軟件系統的發展速度比預期快得多 不幸的是,有關這些專門知識以及如何有效地使用設計在架構上還是不很豐富。

掌握的最新情況,並探討這些新出現的問題........

這裏列出的最重要的新領域,軟件架構師應該精通並期待在2009年:

10個軟件架構師在2009年必須知道話題:
1. 雲計算Cloud Computing。.......

2. 無關係型數據庫Non-relational databases。託尼貝恩Tony Bain 在readwriteweb.com問:Is The Relational Database Doomed?關係數據庫註定要死了嗎? ,雖然到目前爲止還爲時過早宣佈關係數據庫消亡,但是有大量的有希望的替代品出現。 爲什麼要擺脫傳統的關係型數據庫? 某些應用程序的設計可以大大受益於優勢資源的文件或爲中心的存儲方法。 使用非關係型數據庫性能將高的很多;關係數據庫有非常驚人的低天花板,即使伴隨集羣 和 網格計算。 不但存在對象數據庫阻抗 ,不僅產生更多的開銷,而且還同一時間在服務請求中對付高併發請求存在性能瓶頸,非關係數據庫的解決方案包括CouchDB ,開始看到越來越多的產品,Amazon SimpleDB, Drizzle (from the MySql folks), Mongo, 和Scalaris.。 雖然許多應用程序將繼續相處得很好的關係數據庫和對象關係映射,它們還是不斷地需要他們。

3.新一代分佈式計算 Next-generation distributed computing。一個出色的故事今天在紐約時報關於Hadoop提供了一個良好的背景下,關於這個問題:新的分佈式計算模式正走出實驗室,併成爲不可 或缺的選擇,可以連接計算處理以前無法想象的大量的數據。 而傳統的請求響應模式,網絡的主體爲導向的計算是重要的,所以越來越多的有效的方法來處理大量的數據,現在常見的現代軟件系統。 視頻採訪雅虎的Mark Risher 和Jay Pujara ,討論Hadoop如何使他們能夠通過數十億片的郵件隔離模式 , 並確定垃圾郵件發送者。他們現在能夠創建新的查詢 , 並在幾分鐘內得到結果,得到問題的發生時間或被認爲是以前不可能的做到的結果。 雖然Hadoop已經相當大的勢頭,其他類似的產品包括商業 GridGain 和open source Disco 。

4.面向 Web的架構( WOA ) 。 我已經討論了面向Web的體系結構好幾年, 總之,前提是,RESTful 是一種更自然,生產,和有效的方式,建立日益開放和聯邦網絡爲基礎的應用。 該WOA的辯論已經持續了一段時間,因爲它已經成爲一個熱門話題,但去年最大的網絡世界已經投票贊成WOA的方式,網絡正在變大; WOA爲基礎的應用程序更好地跟隨這種方式。 在我看來,這是一個更好的方法來建立面向服務的架構,幾乎所有要求,從而導致更多的柔軟和彈性的軟件,是那麼困難和昂貴的建設和維護。 爲企業考慮轉向WOA ,這裏是很好地概括我做了簡短而回的問題和演變的SOA 。

5.混合集成Mashups。David Linthicum不知道今天在信息世界的Mashups已經澄清,他相信他們已成爲不可分割的SOA和提供有價值的企業架構。 Mashup Patterns 是一個很好的開始,可以研究它們如何影響軟件體系結構。混合集成mashups是提供一個快速投資回報,使用一些比如AJAX 基本瀏覽器技術工具和重用Web服務和Web組件比如RSS等。

6.Open Supply Chains via APIs 開放API 。,其中越來越多的證據表明它是一個非常強大的模型,跨組織的SOA ,所以我已經開始稱他們爲“ 開放的供應鏈 。 ” 開拓您的業務的可擴展性,成本效益的方式,作爲一個平臺,爲合作伙伴建立的是一個在21世紀最強大的商業模式。 ..... 因爲越來越多的組織開放。 我最近提“國家聯盟”的開放API 。

7.動態語言。雖然動態語言已經在網絡上流行了,最早的是Javascript和Perl,這只是 最近,它已經成爲可以接受的發展“真正的”軟件。 .NET和Java的仍然極爲引人注目(共同)平臺,但它的動態語言,如Ruby, Python, PHP, 和 Erlang動態語言越來越受歡迎 。 這是爲什麼呢? 正如我探討了詳細比較了一段時間後,權衡在運行時性能一般被發現,憑藉動態語言可以完成一個大的生產力提高。....越來越多框架如 Rails, CakePHP, 和 Grails 是建立在動態語言上,他們帶來了最新的最佳實踐和設計模式 ,現在動態語言正在開始階段,會有很大比例的新項目。 軟件架構師應該對此做好準備。

8. 社會計算Social computing。開發人員和軟件架構師往往不適應社會計算方面的軟件系統,但是Reed's Law已明確表明,社會制度的價值通常遠遠高於非社會制度。 或者你可以只看了許多流行的應用程序存在的主要驅動力的社會行爲以及由此形成的(往往巨大)價值的參與造成的。 例如YouTube的臉譜, Twitter的,或數以千計的其他社會應用(企業和消費者都) ,教訓是很清楚的:社會結構是一個重要的新的應用層協議棧......。

9. 端到端的計算結構Crowdsourcing and peer production architectures。強大的開放的商業模式已經開始改變我們運行我們的企業和研究機構。 開始是開放源碼軟件,並已轉移到媒體和現在蠶食各種行業。 這是利用羣體智慧....。 只要看看亞馬遜的Mechanical Turk 或CrowdSound ,認爲後者是一個widget 工具,允許甚至最終用戶的動態包括crowdsourcing到他們自己的應用。 .....


10. 新的應用模式New Application Models。語義Web(Semantic Web )似乎再次上升,和我已經涵蓋平臺作爲服務和混合集成,除了這些我們看到了全新的應用模式中出現大規模網絡上。 無論是Facebook的應用,下一代移動應用服務( iPhone的機器人, RIM公司等) , OpenSocial還是日益流行的工具和設備,這一趨勢在霧化軟件(這是做也許仍然是最好和最有效迄今還在Unix ),但是這提醒我們,我們仍然有新的發現在我們面前。 雖然這些看似瑣碎,....,對下一代內部網和門戶網站以及在線“桌面” ,微型應用程序都不得不與scale伸縮性和安全做鬥爭,而其他嵌入應用程序中越來越飛速發展。 需要知道他們是如何工作的,爲什麼他們這麼受歡迎(有幾萬對數以萬計的Facebook和OpenSocial應用) ,並瞭解他們如何可提供真正的實用價值。

發佈了47 篇原創文章 · 獲贊 23 · 訪問量 50萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章