[Data Access] ORM 原理 (11): 效能議題

這絕對是 ORM 的使用者,開發人員與 DBAs 共同想要問的議題,到底我使用了 ORM 和使用傳統的 ADO.NET 下 SQL 指令的方式會差多少? 這個問題不但會發生在 Entity Framework 上,也會發生在 NHibernate 等 ORM Framework 內,連同我自己在這個系列文中開發的 ORM 機制也會受到影響...

...繼續閱讀 »

[Data Access] ORM 原理 (10) : 全程式碼對映–當 ORM 遇到 Lambda 與 Fluent Interface

ORM 原理前面8集中己經講述了基本的ORM核心內的運作方式,大多數的ORM其實都是這麼做,當然還會做一些更進一步的最佳化工作,例如產生SQL的方式等。不過既然都是寫程式的,當然會希望這些對應欄位的設定工作可以完全的程式化 (Coded Map),而不用再假手那麼多的設定檔。

...繼續閱讀 »

[.NET] 如何選擇實作 HTTP 服務的技術?

在雲端服務風行之後,HTTP service 己經成為各大網路服務供應商的選擇,因此各大服務幾乎都用 HTTP service 來實作自己的網路APIs,也讓 HTTP APIs 有如雪球般快速的擴大,現在己經遠遠的超過了Windows API的函式數量。據programmableweb.com的統計,現在全球共有6,700多個HTTP API可用,而且還在快速的成長中...

...繼續閱讀 »

[Windows Azure] 在 Windows 8 上使用 Windows Azure MMC

Windows Azure MMC 是一個很簡單但又能直接管理 Windows Azure 上虛擬機器狀態與儲存區的管理工具,在沒有 System Center 的情況下,算是一個蠻好用的管理工具,筆者經常使用它來管理現有的雲端環境,但是它並不直接支援 Windows 8 和 Windows Server 2012,未來也許會修改,但現階段不支援...

...繼續閱讀 »

[.NET][SignalR] 由 Server 呼叫 JavaScript–使用 SignalR 實作 Push 訊息模式

在前一個範例中,我們己經實作出來一個簡單的應用程式,而這次我們要來展示 SignalR 的另一個功能:由伺服端呼叫用戶端的 JavaScript 指令碼的功能,而這個功能的要求必須是要實作成 Hub 的模式,因此我們可以順便看到如何實作 Hub 類型的 SignalR 應用程式。

...繼續閱讀 »

[.NET] SignalR: 一個改變 Web 應用開發觀念的開發方式

  • 31589
  • 0
  • AJAX
  • 2012-07-02

SignalR 這個專案是 ASP.NET MVC 3.0 在開發的時候就建立的一個專案,由 David Fowler 與 Damian Edwards 兩位 ASP.NET 團隊成員所建置,它的主要功用是讓 Web Application 的用戶端和伺服器間的通訊能夠一致化,在 SignalR.net 網站內的介紹中,SignalR 的主要功能協助開發人員在 .NET 上建置出能夠支援即時通訊 (real-time) 且多使用者互動 (multi-user interactive) 的 Web 應用程式,因此它的標的不只是針對 ASP.NET MVC 本身,而是整個 .NET Framework 平台,它也不限 Hosting 的應用程式,這種筆者覺得它變成是 Web API 的另一種實作選擇,但是它在核心端處理連線的功能上比 ASP.NET MVC 的 Web API 要強多了,更重要的是,它可以在 Web Form 上使用。

...繼續閱讀 »

[Programming] 事件驅動的世界

這幾年來,Web 的應用開發方式的發展有了不少的改變,JavaScript 再度成為 Web Application 的用戶端開發的顯學之一,伺服端也出現了一個叫做 node.js 的伺服端開發技術,它們兩個都有一個共通的特性:事件驅動式 (event-driven),早先在 Windows API 以及 Visual Basic 上常用的程式開發方式,再次於 Web Application 上流行,這也象徵著 Web Application 己經成為一個相當成熟的應用程式平台。

...繼續閱讀 »

[Windows Azure] 使用 Linked Server 方式連接 Windows Azure SQL Database

本文介紹使用 Linked Server 存取 Azure SQL Database 的作法,但要特別聲明,微軟其實並不建議用這個方法,針對跨資料庫查詢,微軟提供了 Azure SQL Database Elastic Query 的功能,請參閱:https://azure.microsoft.com/zh-tw/documentation/articles/sql-database-elastic-query-overview/,而我也將會找時間編寫這個功能的介紹文章。
...繼續閱讀 »

[HTML5] HTML5 File API

雖說接觸 HTML5 已經一段時間了,但真正讓我使用到 HTML5 特殊功能的源頭,還是檔案上傳,畢竟檔案上傳這件事每個 Web 應用程式幾乎都有,而且多半是單檔上傳,多檔的話只能用 Flash 或 Silverlight 寫檔案上傳元件配合 JavaScript 來做,但到了 HTML5,Flash 和 Silverlight 大概就只能靠邊站了,因為 HTML5 不愧是號稱可以打趴 Flash 的新技術,幾乎 90% 以上 Flash 可做到的功能,在 HTML5 上都可以做到...

...繼續閱讀 »

[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] 同質群組 (Affinity Group) 的使用

同質群組 (Affinity Group) 是 Windows Azure 上用來將自己的服務集中在一個地方的一種群組設定,在 Spring Release 之前,它只有設定讓所有服務都集中在相同的資料中心的能力,實用性真的不高,所以很少有人使用它,不過在 Spring Release 之後,同質群組已經和虛擬網路服務連結在一起了,也就是說,同質群組已經變成要配置 VM 到自己的虛擬網路內時必須設定的項目,而且不論是何種服務 (Website Role, Web Role, Worker Role, VM 等) 都適用,等於是給自己的網路加上了一個識別標籤一樣。

...繼續閱讀 »

[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 新功能二部曲-Windows Azure Virtual Machines

Spring Release 終於在美國時間 6/7 正式上市了,帶來許多的新功能與增強功能,除了全新感受的 HTML5 Management Portal 外,Spring Release 亮點的其中之一,要算是 Windows Azure Platform 真正踏入了 Infrastructure Service 的供應領域,由 2010 年 10 月開放公開 beta 的 VM Role 也終於正式釋出,稱為 Windows Azure Virtual Machines,不但保留了原本的 VM Role 功能,更增加了線上 VM Gallery 建置 VM 的功能,而且還可以在線上修改 VM (安裝軟體) 後,將 VM 產製作自己的 VM image,以供未來使用,大大增加了部署與設置自己的 VM 的彈性。

...繼續閱讀 »

[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 Server] 安裝 Windows Server 2012 RC

等了那麼久,Windows Server 8 的發行前版本 Windows Server 2012 RC (Release Candidate) 終於在今天發表了,可以到 Windows Server 的官方網站上找到,或是搜尋一下 Windows Server 2012,相信很容易就能找到下載連結。與 Windows Server 8 Beta 類似的是,安裝介面沒有太大的改變,不過 RC 版本有繁體中文版,因此本文以繁體中文版來示範。

...繼續閱讀 »