[Windows Azure] Windows Azure 對 MSDN 訂閱戶服務的改變

如果有訂閱 MSDN (或是你是微軟 MVP 又有訂閱 MSDN Utlimate Subscription) 而且又有在使用 Windows Azure Member Offer for MSDN Subscription 的人請注意,微軟將在 2013/8/1 起變更 MSDN 訂閱戶的權益,將原本固定額度資源的方式改變為以配發免費額度的方式,亦即原本是以資源與使用額度 (Resource-based) 的優惠限制,改為給予抵用金 (Credit-based) 的方式,這樣的作法對微軟來說可以更有效的控制與分配資源,但對我們這些已經在 Windows Azure 平台上做實驗以及使用資源的人來說就未必是件好消息了。

...繼續閱讀 »

[Windows Azure] 將 Table 的 Entity 結構由 ITableEntity 中解放吧

Windows Azure Platform 的 Table Storage 是一個結構化的資料儲存地,一般來說 (連我的書也是這麼寫),在使用 Table 之前,我們需要對 Table 中的資料列做型別宣告,也就是要建立一個 Table Entity 的類別,然後用 DataServiceContext.AddObject() (Storage Client 1.0) 或是 TableOperation.Insert (Storage Client 2.0) 來存取它,但這對於很多 NoSQL 的應用很難適應,因為 NoSQL 是 Free-Schema,但 Table 的 Entity 限制反而形成了 Schema,對 NoSQL 應用有相當的副作用...

...繼續閱讀 »

[Windows Azure] 使用 Windows Azure Access Control Service 2.0 開發 ASP.NET MVC 單一簽入應用程式

單一簽入 (Single Sign On) 一直是驗證存取權機制的最終境界,整合單一簽入的技術在市場上早已炒到不能再炒了,而且也有相當多的單一簽入解決方案,其中包含 OAuth 1.0/2.0,Open ID,Active Directory,LDAP 等等協定和服務,而在社群網路流行後,幾個重要的大型帳戶儲存庫像 Facebook, Google, Yahoo, Twitter, Plurk, Linked In 等廠商也相繼的開發了認證的 API 群,以支援來自不同設備或用戶端的驗證需求,而在台灣最新的個人資料保護法正式施行前,外部的單一簽入已經成為應用程式認證機制的首選,尤其是小型網站或新進市場的應用程式,透過大廠來處理驗證,使用者不但不用記太多的帳戶密碼,也容易吸引使用者登錄資料...

...繼續閱讀 »

[Windows Azure] Spring Release 新功能五部曲:全新的快取模式

Session State 和雲端應用程式狀態管理一向是設計 Cloud 應用程式的重要考量因素之一,因為雲端應用是分散在不同的虛擬機器內執行的,VM 間可應用的大概只有像資料庫或 storage 這種集中式資料來源,而且雲端應用的儲存也都是分散式的,若是有一個地方能快取這些資訊,那麼就能降低分散環境的 I/O 負擔,應用程式的回應速度也會比較快,所以才會有 Windows Azure Caching Services (原稱 AppFabric Caching Services) 的出現,只是有個問題,就是它有點貴:128MB 的快取要 $45 美元月費,而中大型應用程式的快取通常需求又很高,同時 Caching Services 也是分散式的環境,所以還是有 I/O 的問題。

...繼續閱讀 »

[Windows Azure] Spring Release 外傳:品牌名稱的改變

Spring Release 除了看得到的改變外,有一項隨處可見但沒有被大書特書的改變,大概就是整個產品線的重新命名吧,一開始的時候整個 Windows Azure Platform 是以三個產品線為主-Windows Azure, SQL Azure 與 AppFabric 三個品牌,經過兩年的推廣,很多人都不知道這三個品牌是系出同門,也就是都是 Windows Azure Platform 的一部份,而且 Windows Azure AppFabric 和 Windows Server AppFabric 是不同的技術 (雖然都有 AppFabric 這個字),相信連微軟自己都很頭痛,所以這次的 Spring Release 中,微軟對整個 Windows Azure 做了產品線的檢視,並將必要的產品線名稱重新拉回到 Windows Azure 之內,不但可以讓業務在解釋產品時能更聚焦,也能讓看到這個品牌的人明確知道這就是 Windows Azure 下的產品,而不是一個獨立產品。

...繼續閱讀 »

[Windows Azure] Spring Release 新功能四部曲:虛擬網路服務 (Virtual Network Services)

這篇基本上是寫給 IT PRO 看的,身為開發人員看不懂沒關係,因為網路設定這部份通常不會是由開發人員來做的,尤其是複雜的 Gateway, DNS, DHCP 以及主機設定,包括以前在學校或電腦補習班學的子網路 (subnet) 知識,以及路由表設定的知識等等。之所以要使用虛擬網路服務,是為了配合之前所報導的 Virtual Machine 服務,主攻企業混合雲 (Hybrid Cloud) 基礎建設,也就是在雲上的基礎建設服務 (Infrastructure Services),MIS 人員能直接在 Windows Azure 資料中心內建置自己的虛擬機以及網路環境,再透過 VPN 連接本地端的網路,形成混合雲的完整基礎建設。

...繼續閱讀 »

[Windows Azure] Spring Release 新功能三部曲:Windows Azure Website 角色

以往 Windows Azure 上可執行應用程式的角色,只有 Web Role 和 Worker Role,這兩個角色都要由開發人員上傳應用程式套件到雲上,而且還要自行設定許多的組態 (ex: Database) 才能啟用,就算使用者只想要用簡單的方式來建置自己的網站,也還是要先學習 Visual Studio 和 Windows Azure 開發才行,似乎對一些只有簡單需求的使用者來說門檻有點過高了,而且微軟自己已經有了一個 Web Platform Installer,裡面有豐富的 Web Application Gallery,許多開放原始碼的現成套件都在裡面,使用者也許只需要用這樣的套件,而不是一定要自己親手開發。

...繼續閱讀 »

[Windows Azure] Spring Release 新功能首部曲-全新的 Management Portal 入口網站

Windows Azure 這次的 Spring Release 大改版,最令人期待的亮點,就是整個管理入口網站正式改版,這個全新的入口網站使用了 HTML5 技術,並配合 AJAX, OData Services 等技術開發而成,依筆者個人實測速度,比前版快至少一倍以上,而且重新整理的時間也縮短了。

...繼續閱讀 »

[Windows Azure] Spring Release 快速預覽

對於 Windows Azure 來說,明天 (美國時間 6/7) 是很大的日子,最新的 Windows Azure Platform Spring Release 在明天就要正式開放,除了台灣正式納入 Windows Azure Platform 的服務範圍外,整個平台有較大幅度的服務與功能新增,其中有數項功能是針對企業用戶的私有雲 (Private Cloud) 而來,微軟希望在新的 Windows Azure 平台上能和企業的私有雲整合,將混合雲 (Hybrid Cloud) 的概念更完整的實現。

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 28 - Windows Azure AppFabric Overview

早期企業在打造應用程式時,除了少數較宏觀的主導者以外,多數都是按照當下的需求以及業務條件來發展的,很少會有考量到軟體特性(例如Scalability、Extensibility、Maintainability等)的規劃。隨著時代的進步,物件導向程式設計與系統分析的發展,讓資訊產業開始重視軟體元件(Software Component)的概念,軟體元件的可重覆使用性愈高,則軟體元件的效益就會愈高,同時也代表該軟體的價值也愈高。但只要是在資訊產業涉足一段時間的人,通常都會知道資訊產業的主流總是掌握在幾個大廠商或是領導社群中,企業需要在不同的廠商標準間將內部所有的系統整併以維持或強化企業的資訊體質...

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 21 - VM Role (2): Deploying VHD

繼前一天的VM Role作業,我們已經成功的上傳了自訂的 VM Role 基礎作業系統影像 (base operating system image),接下來就是在 Visual Studio 中使用這個VM Role。VM Role 和 Web Role/Worker Role 不同,它擁有自己的組態環境,不像 Web Role/Worker Role 是可以在上面建置專案,也就是說,企業的應用程式必須要在 VM Role 中都設定好以後,再將 VHD 上傳到 Windows Azure 資料中心。當然,你也可以使用 Remote Desktop Connection 的檔案上傳來傳送檔案,但是速度不會比直接在 VHD 組態好後再上傳來的快。

...繼續閱讀 »

[Book][Review] Microsoft Windows Azure Development Cookbook

在今年九月的時候,收到來自於國外一間出版公司 Packt Publishing 的電子郵件,邀請我為他們的書 Microsoft Windows Azure Development Cookbook 寫篇書評,當時我原本是因為語言的關係回絕,但他們回覆說允許我使用繁體中文來撰寫,所以我就答應了,但因為很來事情實在太多,應接不暇,所以才拖到現在寫,對他們是有些抱歉 ...

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 19 – Remote Desktop Connection

Windows Azure Platform一開始的設計大多是以開發人員為中心,因為它是一個Cloud Platform,要先吸引開發人員的目光,才會讓它的應用變得更廣泛,但是雲端運算不是只有開發人員的任務,在應用程式發行之後,維運則是MIS與企業內的IT人員的工作,所以在1.3版開始,微軟慢慢的加入了與MIS維運有關的功能,其中一項就是Remote Desktop Connection(遠端桌面連線)。

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 18 - Windows Azure Diagnostics Services

開發雲端應用程式的思維可不能像平常開發應用程式一樣,我們每天在開發應用程式時,都能運用除錯器來偵錯,或是調台近端的主機上傳測試用,或是公司自己有自動化測試的機制,然而當應用程式上了雲端環境後,這些習慣幾乎通通不能用了,原因很簡單,雲端應用程式執行的地方可能是離你幾千公里外的公有雲機房,我們不可能在機房內掛除錯器偵錯,就算要上傳也要幾經思量(要錢),但是我們又希望能夠記錄或測量應用程式的執行細節,這時我們能夠用的,就是Windows Azure Platform本身的診斷服務(Diagnostics Service)。

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 17 - Storage Service (4): Drive Storage

Drive Storage是Windows Azure SDK特別為.NET的開發人員所準備的一個儲存格式,它只存在於Windows Azure SDK的組件和API中,它並沒有對外的REST APIs,除了使用Windows Azure SDK外,沒有別的方法可以使用,它本身是基於Page-BLOB為主的儲存服務,但將它模擬成一個獨立的磁碟機供應用程式使用...

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 16 - Storage Service (3): Queue Storage

學過資料結構的人一定都聽過Stack和Queue吧,Stack是後進先出(LIFO),而Queue則是先進先出(FIFO)的資料結構,商用系統的實務開發上,Queue的應用範圍比Stack要大的多了,因為在實務上會用到先進先出的案例太多了,舉凡線上訂位(購買)、抽號碼牌、選位等等商用的需求都會要求先進先出的條件,故Queue的應用範圍會比Stack大的多,微軟當然也很清楚這一點,所以在Storage中也實作了一個專門處理Queue的服務,即為Queue Storage。

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 15 - Storage Service (2): Table Storage

Table Storage是一個模擬關聯式資料庫的結構化資料(structured data)存取服務,它就像是在雲端中的表格一樣,允許應用程式可以在Table儲存體中宣告並存取自己的資料結構。而在Table儲存體的內部,則是橫跨多個伺服器與磁碟儲存區的基礎架構,微軟的Windows Azure開發小組將核心內的所有作業都隱藏起來,只顯露出一個REST API供外部應用程式存取,而且都是透過相同的URL來呼叫,因此Table基本上並不是儲存在應用程式所在的VM,而是在Windows Azure Platform內部自動規範的儲存區域中。

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 14 - Storage Service (1): BLOB Storage

BLOB Storage顧名思義,是專門用來儲存二進位檔案使用的儲存服務,基本上檔案的格式沒有任何的限制,只要是可以轉換成二進位資料(binary data)的檔案都可以儲存,也就是我們常說的非結構化(unstructured)資料,舉凡一般的文字檔案到大型的影音檔案都可以使用。

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 13 - Windows Azure Storage Services

作為應用程式以及其他類型線上服務的核心平台,Windows Azure Platform除了針對雲端運算的基礎建設、營運與管理部份特別設計並支援外,它也必須要具有應用程式以它為基礎開發服務的相關支援,以一個作業系統來說,除了硬體與運算資源的分配與控管外,對軟體最直接最基本的支援,非儲存功能莫屬。如果沒有儲存功能的話,作業系統只能執行運算,而不能利用近端的媒體來儲存資訊,因此作業系統必須要有儲存的能力,才能夠達到開放給應用程式發展的最低限度服務。

...繼續閱讀 »

[Windows Azure][IT鐵人賽系列] Day 11 - 部署到雲端前的準備工作

在完成Cloud Application的開發也完成本地的測試後,我們就可以將應用程式發行到雲端環境了,當然,使用者必須要先申請到Windows Azure Platform的帳戶,然後登入到Windows Azure Management Portal建立新的主機服務(Hosted Service),才可以進行上傳的工作。

...繼續閱讀 »