Who are you?


이동범(Dongbum Lee)


Microsoft Regional Director


Microsoft MVP - VB.net


MHVB.net 시삽

Wanna talk with me?

Subscription

MSN 메신저를 통해 글이 갱신되면 알려드립니다.

Windows Live Alerts

Search

Navigation

Categories

.net (16) .NET Service (1) Ajax (1) asp.net (2) authentication (1) AxWebBrowser (1) Azure (2) basic (2) blog (3) browser (1) Cloud Computing (4) das blog (1) dasBlog (2) Data Portability (1) DataGridView (1) Delegated Web Authentication (1) FabrikamShipping (1) Geneva Framework (1) Google (1) Identity (1) ie (1) iis (2) IIS7 (1) I'm a PC (1) Internet Information Server (1) javascript (1) jQuery (1) Live Framework (4) Live messenger (8) Live Service (6) Live Writer (0) mac (1) Microsoft (16) Microsoft Azure Service Platform (3) oAuth (2) Office (2) OOXML (1) OpenID (1) PC (1) PHP (1) Silverlight (1) small basic (2) Team System (2) UX (1) VB (3) vb.net (4) Vista (1) visual studio (5) visual studio 2010 (1) Windows Azure (2) Windows Azure Service Platform (2) Windows Live (9) Windows Live ID (4) Windows Live Messenger (7) Windows Live Messenger Web Toolkit (7) windows7 (1) Winform (3) WinFX (1) WPF (2) 개발자 (1) 독점 (1) 라이브 메신저 (3) 라이브 아이디 (3) 마이크로소프트 애저 (2) 베이직 (1) 성공사례 (1) 성산포 (1) 스몰베이직 (1) 아웃백 (1) 애저 (2) 웹서버 (1) 윈도우 라이브 (7) 윈도우 라이브 메신저 웹 툴킷 (6) 음악 (1) 일상 (9) 제네바 프레임워크 (1) 조용필 (1) 클라우드 (1) 클라우드 컴퓨팅 (1)

On this page

아웃백 스테이크하우스의 Windows Azure Platform 성공사례
PHP Azure 에 게시하기
Everything is enabled by Identity
Windows Azure “How do I” Video

Archive

Blogroll

Notice

알림
본 블로그는 저의 개인적인 의견을 담고 있습니다.
제가 몸담고 있는 조직의 공식적인 의견과는 다를 수 있습니다.

RSS 2.0 | Atom 1.0 | CDF Send mail to the author(s) E-mail

BlogStats

Total Posts: 66
This Year: 1
This Month: 0
This Week: 0
Comments: 23

Sign In

# Sunday, February 28, 2010

아웃백 스테이크하우스의 Windows Azure Platform 성공사례가 나왔네요.

레스토랑 방문고객들의 충성도를 높이기 위해 소셜 네트워크 사이트인 페이스북에 팬 페이지를 만들고 이를 통하여 쿠폰을 서비스하는 어플리케이션을 Windows Azure Platform 기반으로 개발했습니다.

바이럴 마케팅의 특성상 고객들의 관심이 폭발적으로 증가하기 때문에 이를 대처하기 위해 어플리케이션(시스템)은 높은 확장성을 요구받게 됩니다.
이를 충족시키기 위해 다양한 호스팅 서비스들을 검토한 끝에 Windows Azure Platform을 선택하고, 2달이 채 걸리지 않아 서비스 개발을 완료했다고 하네요.

클라우드 컴퓨팅 최적의 시나리오 중 하나가 바로 서비스 사용량(트래픽)의 변화가 특정 시점에 집중되는 경우 서비스 인스턴스를 늘려 안정적인 서비스를 유지할 수 있다는 점인데, 아웃백 스테이크하우스에서는 이러한 이점을 적절히 살려 어플리케이션을 구축하였습니다.
(물론 사용량이 적은 경우에는 서비스 인스턴스를 줄여 비용을 절감할 수 있음은 물론이죠)

usage
[서비스 트래픽이 일정하지 않은 경우의 서비스 사용량의 예 – 출처. Simon Guest PPT 중에서]

국내에서는 아직 정식으로 Windows Azure Platform이 서비스되고 있지 않은 아쉬움이 있습니다.
하지만 이러한 서비스 성공 사례들을 사전에 검토하고 서비스를 준비하면 조만간 더욱 멋있는 클라우드 컴퓨팅 성공사례를 만들어 낼 수 있는 토대가 될 수 있지 않을까 싶어 소개해 드립니다.

사족) 국내에서 성공사례 자료를 만들 때에도 이처럼 고생한 파트너 업체도 함께 소개해 줄 수 있는 상생의 마인드(?)를 잊지 말아 주었으면 합니다. :-)

# Monday, September 07, 2009
Monday, September 07, 2009 4:12:44 PM (Korea Standard Time, UTC+09:00) ( Azure | Cloud Computing | Microsoft Azure Service Platform | PHP )

How to publish PHP files on Azure

IIS에서 Fast CGI를 통해서 PHP스크립트를 구동할 수 있게 되었습니다.
이와 함께 Azure Service Platform 에서도 역시 CGI 엔진을 통해 PHP를 구동할 수 있습니다.

PHP를 수동으로 설치할 때에는 조금 번거로운 설정들을 했어야 했지만 Web Platform Installer를 사용하면 IIS에 손쉽게 PHP를 설치할 수 있습니다. (이 곳에서 다운로드 받을 수 있습니다.)

초 간단 PHP Azure Publishing하는 방법에 대해 기술해 봅니다. (사실 Azure SDK에 나와있는 문서가 말을 너무 어렵게 써 놓은 지라 ^^)

Visual Studio 를 사용합니다.(무료 버전인 Web Developer 2008 Express 도 가능합니다)

1. Cloud Service 프로젝트 추가

 image

2. 추가된 Cloud Service 프로젝트에서 *.csdef 파일 수정하기

image

3. CGI Web Role 추가하기(Visual Basic / C# 상관없음)

image

4. WebCGI Role 프로젝트에 php 폴더 만들기

image

5. PHP CGI 파일들 모두 4번에서 생성한 폴더에 복사하기

Web Platform Installer를 통해 PHP를 설치하셨다면 설치된 PHP의 위치는 %Program Files%\PHP 일 것 입니다.
이곳의 모든 파일들과 하위 폴더들을 그림 4번에서 생성한 php 폴더 밑으로 모두 복사합니다.
image

6. 추가된 PHP 폴더 아래의 소스 파일들을 프로젝트에 include 하기

image 
파일들을 추가한 후 모든 파일들의 프로젝트 속성의 Build Action을 Content로, Copy to Output Directory를 Copy Always 혹은 Copy if newer 로 변경해 줍니다.

7. Web CGI Role의 Web.roleconfig 파일 수정하기

image

8. Web CGI Role의 Web.config 파일 수정하기

Fast CGI Handler를 Web.config 파일에 추가해 줍니다.
image

9. Cloud에 게시할 웹 스크립트 추가하기

본 블로그 에서는 간단히 phpInfo(); 를 호출하는 코드가 담긴 PHP 파일을 프로젝트에 추가합니다.
image
[WebCGIRole 프로젝트에 추가된 test.php 파일 내용]

10. 실행해 보기

image

이와 같이 실행이 된다면 성공적으로 Dev Fabric에 성공적으로 게시된 것 입니다.
image
[Dev Fabric에 게시된 예]

*잠깐!
“컴퓨터에 ntwdblib.dll이(가) 없어 프로그램을 시작할 수 없습니다. 프로그램을 다시 설치하여 이 문제를 해결하십시오” 라는 메세지가 보인다면?

PHP 설치 후 SQL Server 용 드라이버를 설치하셔서 그렇습니다.
php.ini 파일에서 extension=php_mssql.dll 항목을 remark 해 주시면 해결 됩니다.

그래도 안 된다면? php 설치 폴더의 ini 파일을 계속 참조하고 있는 듯 싶군요.
-> %program files%\php\php.ini 파일을 잠시 rename 해 주시고 다시 빌드해 주세요.

Dev Fabric에서 테스트 시에서 발생하는 오류이니 걱정하지 않으셔도 됩니다.

11. Cloud 에 게시

image 
[게시 중….]

image
[Production 환경으로 publish]

image
[Cloud 환경에서의 실행 예]

# Monday, June 22, 2009
Monday, June 22, 2009 10:59:08 AM (Korea Standard Time, UTC+09:00) ( Azure | Cloud Computing | FabrikamShipping | Geneva Framework | Identity | Microsoft Azure Service Platform | 마이크로소프트 애저 | 애저 | 제네바 프레임워크 )

클라우드 컴퓨팅 환경 구축을 위한 Identity 서비스의 시작 - Geneva Framework

클라우드 컴퓨팅에 대한 많은 소개들과 관심들이 지천이다. 많은 이들이 클라우드 컴퓨팅을 외치지만 Identity가 보장되지 않는 클라우드는 Hosting Computing의 짝퉁일 수 밖에 없다.

Microsoft Azure Service Platform에서 역시 가장 기본이 되야 할 부분이 바로 Identity.
이를 위해 지원되는 서비스를 쉽게 사용할 수 있도록 지원되는 것이 Genava Framework 이다.

하지만 멋진 PPT Sheet 를 통해서만 봤었지, 실제 테스트 환경을 구축하는 것도 실제 운영환경을 접해보는 것도 쉬운 일이 아니였다. 사실 Microsoft Internal로 VPC 이미지 4개로 릴리즈된 버전이 있긴 했으나 이 역시 구동을 위해서는 만만치 않은 하드웨어 리소스와 설정을 위한 리소스가 필요했다.

반갑게도 금번에 일반 개발자들을 위한 데모가 다가가기 쉽고 이해하기 쉽도록 새로 릴리즈 되었다.

FabrikamShipping - http://code.msdn.microsoft.com/FabrikamShipping

원래 이 데모의 시작은 작년 PDC에서 발표됐었던 Identity Roadmap for Software + Services 의 예제이다.(Must See! - http://channel9.msdn.com/pdc2008/BB11/)

어플리케이션 환경이 점차 On Premise 에서 Hosting, Cloud로 변화해 가는 과정에서 반드시 개발자로써 알아두어야 할 부분이라 생각한다.

*올해 초엔가 언젠가 인터넷상에서의 Identity Service에 대해 정리해 포스팅 하겠다고 큰소리를 쳐 놓고선 아직도 머릿속만 무겁다.

# Thursday, February 12, 2009
Thursday, February 12, 2009 1:25:04 AM (Korea Standard Time, UTC+09:00) ( .NET Service | Cloud Computing | Live Framework | Windows Azure )

총 40회에 걸쳐 소개될 Windows Azure Service Platform에 대한 “How do I” 비디오 클립 중에 9개가 먼저 선을 보입니다.
한 회당 약 5분 정도의 지루하지 않은 분량으로 전반적인 Windows Azure Service Platform에 대한 이해를 돕는 데 많은 도움이 되리라 생각합니다.

그냥 영문 그대로 링크를 소개합니다.

Get Started Developing on Windows Azure?
If you’re a developer and you’re new to Windows Azure, start here! You’ll see what you need to download and install, and how to create a simple “Hello World” Windows Azure application.

Deploy a Windows Azure Application
You’ll see what it takes to move your application into the cloud – you’ll see how to request and register a token, how to upload your Windows Azure application and how to move it between staging and production in the cloud.

Store Blobs in Windows Azure Storage?
Learn how to leverage Windows Azure storage to store data as blobs. You’ll learn about blob storage, containers and the API that makes it easy to manage everything from managed code.

Leverage Queues in Windows Azure?
Learn how to use queues to facilitate communication between Web and Worker roles in Windows Azure.

Debugging Tips for Windows Azure Applications
The Windows Azure SDK includes a development fabric that provides a "cloud on your desktop." In this screencast, learn how to debug your Windows Azure applications in this environment.

Get Started with .NET Services?
.NET Services are a set of highly scalable building blocks for programming in the cloud. In this brief screencast, you'll learn about the registration process, the SDK and the built-in samples - everything you need to know in order to get started.

Harness the Microsoft .NET Service Bus?
The .NET Service Bus makes it easy to access your Web services no matter where they are. In this brief screencast, you'll see how to take a basic Windows Communication Foundation (WCF) service and expose it to the Internet with the .NET Service Bus.

Get Started with the Live Framework?
If you are looking to get started developing with the Live Framework, this is the place to start! In this screencast you'll learn how to get a Live Services token and what you need to download in order to start writing Live Framework applications.

Use the Microsoft Live Framework Resource Browser?
The Live Framework Resource Model is a simple, straightforward information model based on entities, collections and relationships. In this brief screencast you'll learn how to navigate the relationships between entities by using the Live Framework Resource Browser, which is a tool that ships with the Live Framework SDK.