Your SlideShare is downloading. ×
0
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
GopherMap Azure
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

GopherMap Azure

1,527

Published on

Experiences with using the early Microsoft Azure CTP on a private Asp.Net MVC project

Experiences with using the early Microsoft Azure CTP on a private Asp.Net MVC project

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,527
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Det er så mye som skjer på ms stakken. Må ha et prosjekt for å bli motvert til å lære.Joel and jeff handler ike om verktøyene med hva man lager med deHosting via kompiser: billig men mye vedlikehold og administrering og driftsting.
  • tidlig ute når jeg så jeg var nummer 250 som hadde lastet ned migreringspakka.
  • Brukte Cerebrata gratis online database editor verktøy som proxy
  • så jeg må drive å kopiere kode fra arbdidsmaskina mi som er XP hjemme over til en annen maskin med Vista for så å generere deploymentpakken som lastes opp til den 17. deploymenten jeg gjorde fungerte ikke så jeg måtte slette tjenesten på Azure og opprette den på nytt. Tok ca 5 minutter å opprette tjenesten på nytt. mange som har hatt dette problemet. manuell deployment hvor man må klikke seg gjennom deployment stegene.
  • Devfabric er emuleringen av Azure lokalt på maskinenHvis bare css som enderes. Filer pakkes sammen og fyres opp emuleringen i azureMitt lille prosjekt tok ca 7 sek å fyre opp i devfabric på maskin som begynner å bli noen år gammel.
  • brukte cerebrata.com/SQLAzureClienttil å kopiere inn create script for hver enkelt tabell. http://sqlazuremw.codeplex.com/
  • Velocity: inmemory distribuert applikasjons cache
  • Setter opp firewall settingsDomenenavnet gophermap.com er koblet til siten via C-name oppføring hos dns hosting provideren jeg bruker domeneshop.no.
  • gophermap mål: hva om du kunne mingle med de som er mest relevant for deg,Kjører nå fra servere i USA
  • Transcript

    • 1. GopherMap.com -Azure cloud computing social media mashup demo<br />Roy Lachica, Bouvet ASA<br />NNUG user group meeting, February 23. 2010<br />
    • 2. Agenda<br />Background GopherMap<br />The process towards the sky<br />Azure <br />Challenges<br />Experiences<br />Tips and tricks<br />Azure SQL <br />Asp.Net MVC, Twitter, Yammer, oAuth<br />Demo Azure (14-16)<br />Demo GopherMap (16-20)<br />Feedback<br />Questions (20-25)<br />
    • 3. Included in the prototype<br />Windows Azure<br />AzureSQL<br />.Net 3.5 <br />Extensionmethods<br />Linq to SQL<br />Asp.Net MVC<br />jQuery<br />oAuth<br />TwitterAPI<br />Yammer API<br />Googlemaps API<br />Considered:<br />TopicMaps/RDF/Microformats<br />Bing maps<br />Facebookconnect<br />FireEagleAPI<br />LinkedIn<br />SkyhookLoki<br />Yahoo Upcomming, EventAPI<br />
    • 4. BackgroundGopherMap<br />Why GopherMap.com<br />Learn new stuff<br />Want to create<br />Experiences from previous private projects<br />Operational problems: DNS, firewalls, disc full, logins, service packs, db index needs tuning, file level permissions, loose access when my IP changes, down time.<br />Do not have time for operation and administration.<br />Do not want to spend a lot of money on a private project . <br />
    • 5. The process towards the sky<br />Project idea/vision (2 years ago)<br />Started with sample code (Not Azure related) (9 months ago)<br />Signed up for Windows Azure account (6 months ago)<br />Started development and prepared for forthcoming Azure SQL (5 months ago)<br />GopherMap running in the cloud (3 months ago)<br />
    • 6. Challenges<br />Yammer open source code used system.diagnostics namespace which failed on Azure.<br />Forgot to use Copy local on system.web.mvc DLL<br />Twitter oAuthcallback could not be set to localhost<br />Azure Sql Management studio port 1433 not open at home ISP. Had to use CerebrataBrowser based SQL Azure Database Explorer <br />Time<br />
    • 7. Negative exeriencs with Windows Azure<br />Lot of hassle with versions and service packs.<br />Had to reinstall: Windows Azure Tools for Microsoft Visual Studio July 2009 CTP after installing a couple of windows updates.<br />Product names and namespaces changed.<br />New CTP’s, new paths and changes to the Windows Azure admin UI. <br />Had to run on Vista or newer OS. <br />VS run as administrator.<br />Hard to read logs.<br />Difficult to create table storage locally.<br />Deployment hangs.<br />Missing versioning/retract/restore in the cloud.<br />Missing monitoring/profiling (Now part of Azure diagnostics).<br />Azure costs even if app has not traffic (about 150$/month with minimal use?)<br />Missing possibility for automatic load balancing.<br />No SMTP support.<br />
    • 8. Positive experiences with Windows Azure<br />Stabile deployment<br />Fast end simple deployment <br />Easy to scaling <br />Good administration UI<br />Do not have to administrate/manage/patch server (in contrary to for example Amazon and Vmwares cloud offerings)<br />Can choose between Azure SQL, blog/queue/table storage<br />Staging server with switch over to prodcution<br />Easy to log errors with <br />RoleManager.WriteToLog(string eventLogName, string message)<br />
    • 9. Tips and tricks<br />Programming for Azure without Dev fabric<br />Why would you do that:<br />Dev fabric takes time to boot and you and change the files on the fly. Dev fabric will even sometimes hang. This makes markup and CSS development slow.<br />twitter oAuth and possibly other services is problematic because call-backs can’t be set to localhost. Dev fabric usually runs on localhost:81<br />Requires Vista OS<br />How to develop outside dev fabric<br />Use stand alone web app and 1) copy to dev fabric or have two VS solutions then 2) deploy to Azure staging server and then 3) switch over to production.<br />Write code that automatically detects environment and use the correct DB Connection String.<br />Read configuration settings from web.config when running outside dev fabric. When running in Dev fabric read settings from Azure ServiceConfiguration.cscfg<br />Write adapters that replace blobstorage when running outside dev fabric.<br />http://screencasts.ehuna.org/2010/01/how_to_speed_up_windows_azure.html<br />
    • 10. How to checkwhatenvironmentyouareruning in<br />publicenumEnvironmentType<br />{<br />Azure = 1, DevFabric = 2, LocalNoDevFabric = 3<br />}<br />publicstaticEnvironmentTypeCurrentEnvironment<br />{<br />Get<br /> {<br />if(Microsoft.ServiceHosting.ServiceRuntime.RoleManager.IsRoleManagerRunning) <br />{<br />if(Microsoft.ServiceHosting.ServiceRuntime.RoleManager.GetConfigurationSetting(&quot;BlobStorageEndpoint&quot;).Contains(&quot;127.0.0.1&quot;))<br />returnEnvironmentType.DevFabric; <br />else<br />returnEnvironmentType.Azure; <br />}<br />else<br /> {<br />returnEnvironmentType.LocalNoDevFabric;<br /> }<br />}<br />}<br />………………………..<br />publicstaticstringImagesBlobStoragePath<br />{<br />get<br /> {<br />if (GopherMap.Helpers.GophyEnvironments.CurrentEnvironment == GophyEnvironments.EnvironmentType.LocalNoDevFabric)<br />return &quot;/blobstorage/”; <br />else<br />returnMicrosoft.ServiceHosting.ServiceRuntime.RoleManager.GetConfigurationSetting(&quot;BlobStorageEndpoint&quot;).Trim() + &quot;/imgs/&quot;; <br />}<br />}<br />
    • 11. AzureSQL<br />Pros<br />Do not have to deal with artificial data tables (such as Azure Table storage, Google Bigtable, Amazon simpleDB)<br />Just as working with any other database through MSSMS<br />Cons<br />Restrictions on port 1433<br />Restrictins on Sql server statements that can be used. <br />Have to convert and strip before you migrate data. <br />
    • 12. ExperienceswithusingsocialAPI’s<br />Twitter<br />Mye data caching for å slippe å gjøre kall mot server hele tiden for alle klienter<br />gratis autentisering og brukerprofil informasjon<br />ulemper: ved caching så får man problemer med at app blir declined på server men cookies henger igjen<br />oAuth<br />med oAuth så går jeg som bruker til oAuthprovideren for å fjerne tilgang.<br />
    • 13. GopherMap on Azure, pros and cons in comparison to traditional hosting<br />Pros:<br />Less can go wrong during operational management<br />Better security<br />Staging environment<br />Don’t have to worry about server been taken down<br />Less downtime<br />Saves time<br />Simple scaling (Distributed caching with AppFabric former velocity)<br />Green<br />Cons:<br />Can not install things on server<br />Not free<br />
    • 14. Oppsummering<br />Azuremakes lifeeasier for developers.<br />Deploymentfaster and more simple. No need for Terminal services RDP: trenger ikke remote inn med remotedesktop og styre med å laste opp riktige filer og legge de ut på riktige steder og oppdatere ulike konfig filer osv osv.<br />Somechildhooddiseases.<br />Less hassle for thosewho start now.<br />Works well for Social apps and usingAsp.Net MVC<br />Here to stay.<br />
    • 15. Hvordan komme i gang<br />En del eksempler tilgjengelig<br />Du kan kode i C#, VB.Net, PHP<br />Ta utgangspunkt i NerdDinner eller myTODO<br />
    • 16. Azure demo<br />https://windows.azure.com<br />
    • 17. GopherMap demo<br />http://www.gophermap.com<br />Lar deg finne relevante personer (relevant kompetanse)<br />Beregnet spesielt for <br />Konferanser og seminar<br />Store organisasjoner<br />
    • 18. Lenker (howtos)<br />Deploying an app:<br />http://ecn.channel9.msdn.com/o9/ch9/4/4/6/6/8/4/DeployingOnWindowsAzure_2MB_ch9.wmv<br />NerdDinnerAsp.Net MVC eksempel kode:<br />http://www.marcmywords.org/post/NerdDinner-hosted-on-Windows-Azure-and-SQL-Azure.aspx<br />Asp.Net MVC, jQuerypå Windows Azure med table storage eksempel:<br />http://code.msdn.microsoft.com/mytodo<br />
    • 19. Lenker (verktøy)<br />Getstarted:<br />http://www.microsoft.com/windowsazure/<br />My azure apps:<br />https://windows.azure.com<br />Browse blob storage: <br />http://cloudberrylab.com/download.aspx?prod=cbazure<br />Migratingdatabase to Azure SQL:<br />http://sqlazuremw.codeplex.com/<br />FreeAzure SQL online clienttool:<br />https://onlinedemo.cerebrata.com/SQLAzureClient/default.aspx<br />Azure Log viewer:<br />http://blogs.itmentors.com/bill/2009/02/10/windows-azure-log-viewer/<br />
    • 20. Questions<br />Bouvet is hiring <br />Open positions: <br />.Net, Architects, SharePoint, Frontend.<br />Contact<br />Roy Lachica<br />E-mail: roy.lachica@bouvet.noroy@hyposoft.no<br />Web: http://roy.lachica.no<br />LinkedIn: http://www.linkedin.com/in/roylachica<br />Twitter: http://twitter.com/roylac<br />Blog: http://fuzzzyblog.blogspot.com<br />Also check out fuzzzy.com<br />Web Science community<br />

    ×