Ciklum net sat12112011-roman bugaev-windows azure technology cocktail

  • 2,323 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,323
On Slideshare
0
From Embeds
0
Number of Embeds
10

Actions

Shares
Downloads
0
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
  • There are two core roles that server instances play in Windows Azure.The first role is the Web Role. A web role is used for web application programming in ASP.NET or PHPThe second role is the Worker Role. A worker role is used for performing work on behalf of the web role.In addition to the .NET languages, Worker Roles may be written in Ruby or Java.Worker Roles are used to improve scalability by increasing parallelism and asynchronicity.They are often used for background work.
  • As was hopefully evident, the Azure developer experience leverages what you’re already familiar with.If you’re a .NET developer and your favorite technologies are ASP.NET, Silverlight, Windows Communication Foundation, or SQL Server you’re going to be able to use those same technologies in the cloud.You also continue to use familiar tools including Visual Studio and SQL Server Management Studio.Azure isn’t just for .NET developers, however. Most of the services in the cloud are accessible as RESTful HTTP calls. That means Java developers, PHP developers, Python developers can also use Azure.For .NET developers, the Windows Azure SDK and tools for Visual Studio gives you a cloud simulator. The Development Fabric simulates the hosting environment and Developer Storage along with SQL Express simulate cloud data storage. This means you can develop cloud applications locally, even when offline.
  • Windows Azure provides hosting and storage and management.The Windows Azure data center infrastructure is called the Fabric and manages instances of your applications. The Fabric detects if something goes wrong and allocates replacement resources if necessary.You can host HTTP-accessed software such as web applications and web services in Windows Azure. You can also host background worker software.Windows Azure also provides non-database storage. This comes in 3 forms: blobs, queues, and data tables. Blobs are similar to files, queues are similar to enterprise queues, and data tables are record-based storage.The Windows Azure management portal allows you to create projects, deploy software, change number of instances, upgrade software, and promote between Staging and Production environments.

Transcript

  • 1. Bugaev {@rbugaev} Roman, VRP Inc.Windows Azure: technology cocktail
  • 2. “Поехали!”
  • 3. Azure• Windows Azure Platform is thus classified as platform as a service and forms part of Microsofts cloud computing strategy, along with their software as a service offering, Microsoft Online Services Windows Azure: technology cocktail 3
  • 4. Microsoft CLOUDInfrastructure From 7 to 17 football fields Windows Azure: technology cocktail 4
  • 5. Microsoft CLOUDContainers Windows Azure: technology cocktail 5
  • 6. • 1 Windows Azure: technology cocktail 6
  • 7. What is Windows Azure• Cloud computing service from Microsoft• Combination of PaaS and IaaS• New development platform
  • 8. • 1 Windows Azure: technology cocktail 8
  • 9. Architecture differencesWhat is the same:- ASP.NET application runs on IIS and Windows Server- Application uses SQL server Development is still done with VSMain differences:- Application consists of parts called roles- There is no persistent/durable virtual machine- There is no persistent/durable NTFS file system- Application runs in multi instance (server) environment- New API, new configuration files, new type of project
  • 10. • 1 Windows Azure: technology cocktail 10
  • 11. Windows Azure Roles• Web Role – for web application programming in ASP.NET or PHP – MVC 3• Worker Role – for performing work on behalf of the web role – may be written in .NET, Ruby, Java – to improve scalability by increasing parall. and async. – used for background work Windows Azure: technology cocktail 11
  • 12. • 1 Windows Azure: technology cocktail 12
  • 13. Developer Experience• Leverage Existing Skills in .NET, SQL Server, WCF• Use Familiar tools – Visual Studio• RESTful HTTP cloud services, supports PHP, Python• Cloud apps can be developed locally / offline• SDK Cloud Simulator – Dev Fabric, Dev Storage Windows Azure: technology cocktail 13
  • 14. • 1 Windows Azure: technology cocktail 14
  • 15. Windows Azure: technology cocktail 15
  • 16. Storage• Blobs – Large Data Store• Queues – Background work processing• Tables – Very Fast / Scalable Storage• Drives – NTFS Formatted Page Blobs• SQL Azure – Relational SQL in the Cloud Windows Azure: technology cocktail 16
  • 17. If you don’t know SQL – write inyour CV «NoSQL» (Joke) Windows Azure: technology cocktail 17
  • 18. Azure Storage Problems Windows Azure: technology cocktail 18
  • 19. Mongo DBRunning MongoDb on Microsoft Windows Azure with CloudDrive• http://www.captaincodeman.com/2010/05/24/mongodb-azure- clouddrive/Server :_mongoProcess = new Process(@"mongod.exe");_mongoProcess.Start();Client:var mongo = new Mongo(connectionString);mongo.Connect();var db = mongo.GetDatabase("notes"); Windows Azure: technology cocktail 19
  • 20. Alternative for Azure Queue• RabbitMQ (erlang)• Service Bus Queues (app fabric) Windows Azure: technology cocktail 20
  • 21. Building a Task Scheduler inWindows Azure Windows Azure: technology cocktail 21
  • 22. Schedulingpublic class ScheduledItem : TableServiceEntity{ public string Message { get; set; } public DateTime Time { get; set; } public ScheduledItem(string message, DateTime time) : base(string.Empty, time.Ticks.ToString("d19") + "_" + Guid.NewGuid().ToString()) { Message = message; Time = time; } public ScheduledItem() { }} Windows Azure: technology cocktail 22
  • 23. Managing Concurrencyusing (var arl = new AutoRenewLease(leaseBlob)){ if (arl.HasLease) { // inside here, this instance has exclusive access var ctx = tables.GetDataServiceContext(); foreach (var item in ctx.CreateQuery<ScheduledItem>("ScheduledItems").Where(s => s.PartitionKey == string.Empty && s.RowKey.CompareTo(DateTime.UtcNow.Ticks.ToString("d19")) <= 0) .AsTableServiceQuery()) { q.AddMessage(new CloudQueueMessage(item.Message)); ctx.DeleteObject(item); ctx.SaveChangesWithRetries(); } }} Windows Azure: technology cocktail 23
  • 24. Alternative Schedule• Quartz• BrokeredMessage.ScheduledEnqueueTime Windows Azure: technology cocktail 24
  • 25. Node.js Applications1. native Windows Node.js binaries2. iisnode modulehttps://github.com/smarx/noderole Windows Azure: technology cocktail 25
  • 26. Caching• Windows Azure Caching• memcached Windows Azure: technology cocktail 26
  • 27. InviteGet a Windows Azure Trial Account Try out a free WindowsAzure account for 30 days.• Go http://bit.ly/azure_invite, select "United States" and• Enter promo-code: FBPASS Windows Azure: technology cocktail 27
  • 28. ThX! Q?Phone: +375 (29) 264-6830 Skype: Bugaev_RomanLinkedin: http://www.linkedin.com/in/rbugaevFacebook: http://www.facebook.com/rbugaevTwitter: @rbugaev