2. Topics● Basic concepts.● Windows Azure.● Azure Storage Service.● SQL Azure.● Azure AppFabric● Migrating an Asp.Net application on Azure.● Q & A.
3. Basic Concepts
4. What is Operating System ? ● Is a collection of software that manages computer hardware resources and provides common services for computer programs.
5. What is distributed Operating System ?● A distributed operating system is the logical aggregation of operating system software over a collection of independent, networked, communicating, and physically separate computational nodes.
6. What is distributed System ? [contd.]● A distributed operating system is the logical aggregation of operating system software over a collection of independent, networked, communicating, and physically separate computational nodes.
7. ConclusionAbstractionIn all the system discussed now, every one of it involvesabstraction of underlying system to hide the detail from theuser using it.
8. What is cloud computing ?● Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over a network (typically the Internet) .● There are many types of public cloud computing : ● Infrastructure as a service (IaaS) ● Platform as a service (PaaS) ● Software as a service (SaaS) ● Storage as a service (STaaS) ● Test environment as a service (TEaaS) ● Desktop as a service (DaaS) ● API as a service (AaaS)
9. Windows Azure
10. Introduction to Windows Azure...• An operating system for the cloud• Reduce the complexity of internet scale applications.• Designed to be scalable & available.• A service running Microsoft datacenters.
11. Where Windows Azure stands ?● Windows Azure is a Microsoft cloud computing platform used to build, deploy and manage applications through a global network of Microsoft-managed datacenters.● It offers ● Infrastructure as a service (IaaS) ● Platform as a service (PaaS) ● Software as a service (SaaS) ● Storage as a service (STaaS)
12. TerminologiesWeb RolesA web role is an ASP.NET Web application accessible via an HTTP or HTTPSendpoint and is commonly the front-end for an application.Worker RolesWorker roles are background-processing applications and are typically found inthe back-end.Role InstanceRole instances can be added or removed based on demand and allowapplications to quickly and economically scale-up or down when the needarises.Note : Windows Azure services may be comprised of one or both types of rolesand can run multiple instances of each type.
13. Windows Azure Architecture
14. Compute Service
15. Compute Service [contd.]• A Web role instance can accept incoming HTTP or HTTPS requests• By running multiple instances of an application, Windows Azure helps to scale application.• Web role instances are stateless.• Worker role instances can’t accept requests from the outside world. Their VMs don’t run IIS, and a Worker application can’t accept any incoming network connections.• Instead, a Worker role instance initiates its own requests for input.• It can read messages from a queue and it can open connections with the outside world.
16. Interaction of Web-role and worker role.
18. Azure Storage Service
19. Azure Storage Service• Tables – Provide structured storage. A Table is a set of entities, which contain a set of properties.• Queues – Provide reliable storage and delivery of messages for an application.• Blobs – Provide a simple interface for storing named files along with metadata for the file.• Drives – Provides durable NTFS volumes for Windows Azure applications to use.
20. Azure Storage Service• Blobs, Drives, Tables, Queues• Designed for the cloud • 3 replicas • Guaranteed consistency• Accessible directly from the internet via REST API • .NET Client library supported• Does not require compute• Storage account drives unique URL, e.g.: • https://<youraccount>.blob.core.windows.net
21. Table Service
22. Blob Service
23. Queue Service• An account can create many queues • Queue Name is scoped by the account• A Queue contains messages • No limit on number of messages stored in a queue • Set a limit for message expiration• Messages • Message size <= 8 KB • To store larger data, store data in blob/entity storage, and the blob/entity name in the message • Message now has dequeue count
24. Azure Drive (X-Drive)• Access to a Local Drive in Azure• Enables existing applications using NTFS to easily migrate to the cloud• Essentially a Page Blob formatted as NTFS • Remote Access via Page Blob Interface• Durable NTFS volume [upto 1TB] for Windows Azure Applications• Drives in the Cloud are only mountable by VMs within Cloud • Mounted by one VM at a time for read/write • A VM can dynamically mount up to 16 drives
25. THE FABRIC
26. The FABRIC● The Windows Azure Fabric consists of a (large) group of machines, all of which are managed by software called the fabric controller.● It can communicate with a fabric agent on every computer, it’s also aware of every Windows Azure application in this fabric.● It monitors all running applications and also manages operating systems, taking care of things like patching the version of Windows Server 2008 that runs in Windows Azure VMs.● The fabric controller depends on a XML-based configuration file that is uploaded with each Windows Azure application to manage the number of VMs required by the application.
27. SQL Database (SQL Azure)
28. SQL Azure● SQL Azure Database provides a cloud-based database management system (DBMS). This technology lets on-premises and cloud applications store relational data on Microsoft servers in Microsoft datacenters.● SQL Azure Reporting is a version of SQL Server Reporting Services (SSRS) that runs in the cloud. Intended primarily for use with SQL Azure Database, it allows creating and publishing standard SSRS reports on cloud data.● SQL Azure Data Sync allows synchronizing data between SQL Azure Database and on-premises SQL Server databases. It can also be used to synchronize data across different SQL Azure databases in different Microsoft data centers.● Note : SQL Azure has many limitations as compared to SQL-Server 2008 R2.
29. Restrictions with SQL Azure
30. Some points while migration of Asp.net Application to Cloud.● Please be careful if you are using session and application variable.● Minimize the usage of session variables.● Use CDN (content-delivery-network) for jquery and other such library.● Configure HTTP compression in your application.● Optimize the code processing.● Take care database restrictions.
31. Why Caching is required● One of the reasons why we require caching is because the session data and application variable is non-persistent across web-role VMs.● Due to this there is no way to predict on which VM the client request is made.● Types of Caching ● Shared Cache. ● Window Azure Cache preview.
32. Windows Azure AppFabric
33. Service Bus● Exposing an application’s services on the Internet is harder than it might seem.● The goal of Service Bus is to make this simpler by letting an application expose endpoints in the cloud that can be accessed by other applications, whether on-premises or in the cloud.● Each exposed endpoint is assigned a URI, which clients can use to locate and access the service.● Service Bus also handles the challenges of dealing with network address translation and getting through firewalls without opening new ports for exposed applications.
34. Access Control● The options is used if we want to include Active Directory, Windows Live ID, Google Accounts, Facebook, and more for our authentication purpose like many modern application .● Access Control simplifies this by providing built-in support for all of them (and more).● It also provides a single place for defining rules to control what each user is allowed to access.
36. Thank you for attending... Have a nice day ahead !