偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

在Azure上構(gòu)建一個基于Facebook的營銷式應(yīng)用程序(上)

原創(chuàng)
云計算
當(dāng)你的Facebook應(yīng)用程序點擊率上升的時候,它如何進行擴展呢?如果你是在Windows Azure上構(gòu)建的這個應(yīng)用程序,并且是按橫向擴展的思想設(shè)計的這個應(yīng)用程序,那么很高興地告訴,你可以“高枕無憂”了。

當(dāng)你的Facebook應(yīng)用程序點擊率上升的時候,它如何進行擴展呢?如果你是在Windows Azure上構(gòu)建的這個應(yīng)用程序,并且是按橫向擴展的思想設(shè)計的這個應(yīng)用程序,那么很高興地告訴,你可以“高枕無憂”了。

我們將會一步一步地為你講述,如何使用Windows Azure Toolkit和Facebook C# SDK(這兩個工具包可以在CodePlex上找到),在Azure上創(chuàng)建一個簡單的基于Facebook的“病毒式”營銷應(yīng)用程序,這兩個工具包可以讓這個工作變得更加輕松。

Facebook營銷活動的主要目的是讓客戶更多地參與你的業(yè)務(wù),類似于這樣:在你的公司的Facebook頁面上,你可以給提供了聯(lián)系信息的客戶發(fā)放一些獎品。這個活動要有一定的時間限制,因為你的獎品數(shù)量是有限的。但是,如果這個活動已經(jīng)開始了,你必須做好應(yīng)對指數(shù)級增長的準(zhǔn)備,因為這個活動會像病毒一樣傳播開來。對于構(gòu)建一個擁有這樣生命周期的應(yīng)用程序來說,Windows Azure是一個理想的平臺。你可以從幾個實例開始,限制存儲空間,然后按需進行擴展。當(dāng)這個活動“降溫”的時候,你可以卸載掉那些多余的實例。

但是,只是簡單地運行在Azure并不能保證可以獲得很好的可擴展性。一個Azure應(yīng)用程序還需要使用一些方法(例如:分割成多個角色),和簡單的,可擴展的存儲結(jié)構(gòu),針對擴展來進行設(shè)計才能獲得很好的可擴展性。

在本文中,我們將會在Azure上構(gòu)建一個可擴展的基于Facebook的營銷式應(yīng)用程序。這個樣例應(yīng)用程序的靈感來自于獲得巨大成功的Bloomin' Onion Facebook Campaign,這個應(yīng)用程序是2009年下半年,Thuzi團隊為Outback Steakhouse構(gòu)建的。它構(gòu)建在兩個工具包(Windows Azure Toolkit和Facebook C# SDK)基礎(chǔ)之上的,這兩個工具包也是Thuzi團隊的那些開發(fā)者構(gòu)建的。Windows Azure Toolkit開始的時候只是為在Azure上構(gòu)建基于Facebook的應(yīng)用程序提供一站式服務(wù)而已,但是后來演變成了一個通用的Azure開發(fā)工具包。當(dāng)我們在這個應(yīng)用程序中使用Windows Azure Toolkit進行存儲和隊列管理的時候,這些技巧可以應(yīng)用到Azure平臺上的任何一個應(yīng)用程序中。(關(guān)于)(關(guān)于Thuzi團隊

這個應(yīng)用程序都做些什么

我們會把這個應(yīng)用程序構(gòu)建成一個基于Fackbook的canvas應(yīng)用程序,把canvas URL指向運行在Azure上的那個應(yīng)用程序??蛻舻谝淮芜\行這個應(yīng)用程序("AzureSample")的時候,他們會看到一個權(quán)限請求窗體,詢問這個應(yīng)用程序是否可以從Facebook中讀取信息(例如:客戶的出生日期)。

(圖1 因為這個應(yīng)用程序需要訪問客戶的出生日期,所以Facebook會在這個應(yīng)用程序啟動前,顯示一個權(quán)限窗體。這個應(yīng)用程序通過一個由Facebook C# SDK提供的特性(attribute)來聲明它需要哪些權(quán)限。)

假設(shè)這個客戶給我們授予了必要的權(quán)限,我們啟動了AzureSample,然后開始收集客戶的信息。

(圖2 第一個頁面來自于這個應(yīng)用程序的canvas URL,用來收集客戶的信息。當(dāng)這個頁面打開的時候,“First Name”, “Last Name”, 和“Date of Birth”都已經(jīng)用從Facebook讀取到的信息提前填充好了。)

這個客戶的“First Name”, “Last Name”, 和“Date of Birth”都是從Facebook中讀取到的,然后提前填充到窗體的相應(yīng)字段中。這個客戶只需填充“Email Address”和“Zip Code”字段就可以繼續(xù)瀏覽下一個頁面了。

(圖3 商店選擇頁面。我們給這個客戶提供了一個包含三個商店的列表,這三個商店是根據(jù)他們在前一個頁面中輸入的郵政編碼而列出的,這些商店都在郵政編碼所在地方圓50英里之內(nèi)??蛻艨梢赃x擇一個自己喜歡的商店。)

下一個頁面展示了一個包含三個附近的商店的列表,客戶在上一步輸入的郵政編碼在這里發(fā)揮了關(guān)鍵性的作用。這三個商店是這個客戶的郵政編碼所在地方圓50英里內(nèi)最近的商店。(對于這個實例來說,我使用隨機的郵政編碼生成了一個包含1000個商店的列表,作為樣例數(shù)據(jù)來使用。)在這一步,我們已經(jīng)收集到了我們需要的所有的用戶信息。“AzureSample”會啟動一個后臺任務(wù),把一封帶有客戶獎品的email發(fā)送給那個客戶,然后把這些聯(lián)系信息從快速的Azure Table Storage遷移到更加容易查詢的SQL Azure中。接下來,剩下的所有事情就是展示一個完成頁面了。

(圖4 “thank-you”頁面。如果客戶在注冊以后再次運行這個應(yīng)用程序,他們會被自動地重定向到這個頁面。)

#p#

項目結(jié)構(gòu)

在Facebook上,這個應(yīng)用程序叫作“AzureSample”,因為在Facebook上的應(yīng)用程序不能包含“facebook”這個字符串。如果你要安裝這個應(yīng)用程序,你可以在Facebook上給它起一個更有意義的名字,例如“SignUpFreeX”。在Visual Studio中,這個解決方案叫作“AzureFacebookSample”,它包含4個項目。

(圖5 在Visual Studio的解決方案資源瀏覽器中的“AzureFacebookSample”,如圖所示,這個解決方案包含4個項目)

“AzureFacebookSample.Cloud”是Azure應(yīng)用程序的主項目。它包含兩個角色,一個Web角色和一個Worker角色。web角色是通過“AzureFacebookSample.Web”項目來實現(xiàn)的,而Worker角色是通過“AzureFacebookSample.Worker”項目來實現(xiàn)的。

Web角色是一個ASP.NET MVC項目,包含了這個應(yīng)用程序的所有界面的視圖和相關(guān)的控制器邏輯。Worker角色負責(zé)發(fā)送獎品email和把聯(lián)系信息從Azure Table Storage遷移到SQL Azure中。

“AzureFacebookSample.Domain”是一個類庫項目,其中包括數(shù)據(jù)模型,隊列,和被Web角色和Worker角色共享的數(shù)據(jù)容器。通過域項目,Web角色和Worker角色會保存在Azure Storage, Azure隊列, 和SQL Azure的域?qū)ο笾小?/p>

“AzureFacebookSample”展示了在Azure上,你應(yīng)該如何組織Facebook應(yīng)用程序,但是還有幾件你需要做的事情它是無法代勞的,那就是實現(xiàn)一個你自己的“病毒式”的營銷應(yīng)用程序。首先,Worker角色實際上并不會發(fā)送一封email。在真正的應(yīng)用程序中,Worker角色需要連接一個外部的服務(wù),通過這個外部服務(wù)來生成大量的這次營銷活動所必需的email。在“AzureFacebookSample”中,并不包含連接到這個Web服務(wù)的代碼。第二,你需要一個額外的Worker角色來處理被郵件服務(wù)退回來的email,在Facebook上聯(lián)系客戶,嘗試獲取一個正確的email地址(以便于獎品email可以被發(fā)送)。最后,“AzureFacebookSample”并不會促使Facebook“likes”到公司頁面上,或者提醒客戶把這個應(yīng)用程序告訴他們的Facebook好友。

請看《在Azure上構(gòu)建一個基于Facebook的營銷式應(yīng)用程序(中)

和《在Azure上構(gòu)建一個基于Facebook的營銷式應(yīng)用程序(下)

原文名:Building a Facebook Marketing App on Azure 作者:Steve Apiki

【本文乃51CTO精選譯文,轉(zhuǎn)載請標(biāo)明出處!】 

【編輯推薦】 

  1. 在Azure上構(gòu)建一個基于Facebook的營銷式應(yīng)用程序(中)
  2. 在Azure上構(gòu)建一個基于Facebook的營銷式應(yīng)用程序(下)
  3. 無需頂禮膜拜 三步打造經(jīng)濟高效的云基礎(chǔ)架構(gòu)

 

責(zé)任編輯:王勇 來源: 來源:51CTO
相關(guān)推薦

2011-03-14 15:10:10

AzureFacebook

2011-03-14 15:14:10

AzureFacebook營銷式應(yīng)用程序

2011-11-23 10:06:32

Azure微軟移動應(yīng)用

2011-03-10 10:45:47

Azure“Hello Worl

2011-03-22 09:45:56

Windows AzuSilverlight

2011-03-15 19:45:27

Windows Azu

2018-12-13 11:10:21

OpenSnitchLinux防火墻

2015-10-14 10:43:17

PaaSSaaS應(yīng)用構(gòu)建

2011-10-12 11:24:44

AndroidPC

2015-03-10 09:51:56

云開發(fā)云應(yīng)用程構(gòu)建PaaS

2011-03-21 14:31:36

Azure應(yīng)用程序

2010-11-09 10:37:21

2023-09-21 08:00:00

ChatGPT編程工具

2021-07-14 17:39:46

ReactRails API前端組件

2014-12-24 11:34:23

CoreOSWordPress集群部署

2010-07-12 10:11:27

ibmdwWeb

2023-09-23 15:52:21

Linux白板應(yīng)用程序

2023-08-22 20:55:04

AzureLLMTypeChat

2022-02-20 20:09:38

BottlesLinuxWindows

2023-10-12 09:05:11

點贊
收藏

51CTO技術(shù)棧公眾號