|
Thursday, January 14, 2010
Going to QCon London? I am and a bunch of my friends are too! Just a heads up that the early bird is about to expire this Friday. If you haven’t been to QCon before, I can really recommend it. What I find especially attractive by this conference is its various tracks that should satisfy the most demanding devs and architects, and of course not to mention the speaker list (which is still growing). Here’s a few selected speakers from my point of view: - Dan North
- Floyd Marinescu
- Jim O. Coplien
- Joe Armstrong
- Jon Skeet
- Kevlin Henney
- Michael T. Nygard
- Ola Bini
- Ayende (Oren Eini)
- Rod Johnsen
- Ryan Slobojan
- Stefan Tilkov
- Steve Freeman
- Udi Dahan
- Ulf Wiger
And here’s the tracks: - Architectures You've Always Wondered About
- Dev and Ops: A single team
- Functional programming
- Non-Relational DBs & Web Oriented Data
- Software Craftsmanship
- Solution Track: Wednesday
- 2015 Software Development
- Agile Evolution
- AlphaGeeks on .NET
- Cloud Solutions
- Irresponsible Architectures and Unusual Architects
- Solutions Track: Performance and ScalabilityBrowser as a Platform
- Cool Stuff with Java
- How do you test that?
- SOA 2010
- The Concurrency Challenge
Hope to see you in London March 10-12 (March 8-9 for tutorials).
Monday, March 30, 2009
This article is a translation of a Norwegian article I wrote earlier that got published on IT Pro a few days ago. It’s targeted towards IT decision makers and leaders, does not contain my usual technical focus, but should still be a valuable read for developers not familiar with Azure or want to know more about cloud computing. Software and services developed by software providers today are primarily deployed on internal servers or made available through hosting providers. The “Cloud” opens a whole set of new possibilities, both functionally and financially. Several providers are shaping this new service and one of them is Microsoft with the Azure Services Platform (Azure). This article will focus on what the “Cloud” has to offer software providers compared to today’s traditional services with focus on Azure specifically. Scaling Today it’s quite common, and almost acceptable, for websites to be temporary unavailable under extraordinary load. Examples can be ticket sales for popular concerts or some other event with limited time for registration. The load on the website is usually limited to a few hours, or even minutes, and the time is known in advance. What if you as a service provider could scale your services dynamically, to handle the increased traffic for that period? This is an example of what Azure has to offer. Pay per use Even though Microsoft have not officially revealed the details around the payment model for Azure, it’s natural to expect them to base their model on usage. Examples could be traffic in/out, storage, processing etc. Other providers, like Amazon and Google have similar models and it’s natural to believe that Microsoft will not deviate too much from these to be competitive. Such a model will also be very attractive for startups. The cost of buying the necessary hardware, disk space, backup and broadband to run the website or service, not knowing how many will use it in advance, is often a good enough reason for not pursuing the opportunity. Taking advantage of a payment model like in Azure, the provider will have several advantages: - Small or no startup cost
- Cost spread across time
- Scaling on demand
- Pay per use
Microsoft’s biggest investment ever? There is a lot more behind Azure than software. To support such a scalable unit in the cloud a lot of investment in hardware, new technology and land areas is needed. One method Microsoft have used to build their datacenters, is to have preconfigured containers with server racks from HP and Dell, with built-in cooling and network. A lot of these containers are placed as close to a power plant as possible, where power is easily accessible, and when connected they are up and running in the cloud. All administration are then done remotely. If one, two or five servers in a container stop working, it will have no effect on data or traffic for the user of the cloud. Azure is designed so that servers can be pulled in and out of the cloud without affecting the service. This says a lot about the size and investment put in place for this to be a reality. Many datacenters are under construction several places in the world. One reason for Microsoft to build at several locations, and not just in the US, is to avoid the physical laws related to data transfers over the internet. Another important factor is the different regulations on different continents. As an example, some don’t want to have their data stored on servers in the US, in case the government demands to get access to their data. There is also difference in regulations in e.g. the US and Europe, that Microsoft needs to take into consideration. Built on known Microsoft products  Azure contains quite a few services as illustrated on the image on the left. Even though many of these services have new names, they are based on Microsoft’s existing products. Liver Services is a cloud service based on Windows Live, .NET Services on Microsoft .NET, SQL Services on SQL Server etc. These services are built on top of Windows Azure, which is a operating system specifically designed for running in the cloud. Windows Azure cannot be accessed as a regular operating system (through e.g. Remote Desktop), but developers can communicate with Windows Azure through a Application Programming Interface (API). Compared to Amazon’s cloud solution, where the user have direct access to the operating system (Linux or Windows), the user don’t have to worry about security or software updates, backups etc, since this is automatically managed by Microsoft. Security Security has been a central part of the development of Azure. The consequences of somebody getting unintentional access to services or data in the cloud would be catastrophically. Microsoft has built in many security mechanisms to avoid this. Some examples are data encryption, Code Access Security and backups to mention a few. It is expected that this is an area where users, developers, owners and Microsoft themselves will focus their efforts on in the time to come. Roy Ozzie, Chief Architect at Microsoft, says it’s extremely important for Microsoft to build trust in companies looking to invest in Azure as a possible solution, and that this is critical for the success of the cloud1. Microsoft have also made available a service they call .NET Access Control Service, that aims to support many of today's identity providers. By integrating the common identities that customers use or are common in a region (like a country or EU), this service can solve some of the identity issues we have today. Many are tired of having to create a new id every time they access a new website that has some type of identification, to display user specific information. What if the user could use only one, ore a handful identities, and choose which one to use towards a given website? By implementing .NET Access Control Service the user can do this and the web application can decide to trust it or not. Development tools with support for Azure Microsoft have made available a range of tools aimed for developers creating applications running on Azure. Already today developers can create and deploy application on Azure by using Visual Studio 2008 SP1, and develop in ASP.NET. The only requirement is for the developer to register in order to get access to the Azure services. In addition to the normal development tools, Microsoft has made it possible to develop and test on a local variant of the cloud on the developer’s computer. This will enable debugging of code during development and not have to deploy to the cloud every time a new functionality needs testing. When will Azure go live? Azure is available for developers today in Beta, so that they can already now try out the service and look at the potential possibilities. The service is however limited in this first Beta release, which makes it unattractive for production use. Steve Ballmer have stated that Azure will go live under Professional Developers Conference 2009 (PDC09) that is scheduled for 17th of November 20093. Conclusion With this new service, together with Microsoft and others investments in the technology, possibilities will arise that before was either very difficult or economically irresponsible to target. Examples where startups and smaller companies can bet big without enormous investments, where scaling opens up completely new possibilities and data processing taken to new heights, makes the cloud an attractive service for the future. It’s still too early to predict if this is going to be a success or not, but it’s clear in which direction the biggest providers are going. Sources: 1Ozzie: Success of Azure comes down to trust - http://news.zdnet.co.uk/software/0,1000000121,39532953,00.htm 2Introducting the Azure Services Platform by David Chappell - http://download.microsoft.com/download/e/4/3/e43bb484-3b52-4fa8-a9f9-ec60a32954bc/Azure_Services_Platform.pdf 3Ballmer: Azure ready for release by end of year - http://www.infoworld.com/article/09/02/24/Ballmer_Azure_ready_for_release_by_end_of_year_1.html
Tuesday, March 24, 2009
A couple of months ago I wrote an article about Azure Services Platform that just got published on ITPro. It's in Norwegian, but I plan to post it here in English as soon as I find some time to translate it. The article is targeted towards IT decision makers, meaning a lot of the technical details are missing. However, I still think it will be an interesting read for most techies as well.
Friday, January 09, 2009
If you read my previous article on Amazon Web Services compared to Azure Services Platform you might want to know that Amazon just release a web interface for managing/creating virtual images, manage security, IP’s, ESB etc. For a short demo check out this video: http://media.amazonwebservices.com/console/AwsConsole.html I also have a half finished blog post about how to get started with AWS which I hope to get published soon, so hopefully I’ll get time this weekend. I will then cover the AWS Management Console as well. I also finally got access to Windows Azure, so I plan to do something around that as well. A lot of promises here now, so hopefully that will help me get it done!  Until then, happy clouding!
Monday, December 22, 2008
In my previous post about Azure Services Platform I summarized many of David Chappell’s points in his talk last week as well as Clemens Vasters intro to .Net Services. One of the things David mentioned was other cloud providers that exist today.
One that I find particularly interesting is Amazon. In this article I will cover the Amazon Web Services and how they map to Azure Services Platform. Amazon is my starting point, so I will not talk about the services that Microsoft have that Amazon don’t, unless they are tightly connected to one of Amazon’s services. One thing to note though is that Amazon has been offering cloud services for a while and some of their services are already out of Beta. MS however is just getting started so it’s not easy to know where MS is going to end up compared to Amazon. In other words; this article might be out of date pretty soon! Saying that, some design decisions needs to be taken early and some decisions can’t easily be reverted, so many of the differences and similarities between the two providers will probably be around for a while. And when people from Microsoft are going to Amazon, maybe the similarities between the two will increase even further…
Actually, talking about mappings, lets get the first mapping out of the way: Amazon Web Services maps to Azure Services Platform. |
|
Amazon EC2 Amazon Elastic Compute Cloud (EC2) is a virtual computing environment that let you create virtual servers in the cloud. Either Linux or Windows based. Windows based OS’s (Windows Server 2003) are in Beta and only available at the datacenters in the US, but I’m expecting Europe to provide this service soon. By creating or using a predefined Amazon Machine Image (AMI) and adding your application to the same image, you get your application into the cloud. By using the EC2 web services or any of the configuration applications out there (like Elasticfox) you can configure your virtual images, security, network access and more. To do actual work on the image (like installing applications) you just RDP into that server and do your install or configuration.
Amazon EC2 vs. Azure Services Platform EC2 can be compared with Windows Azure. What Amazon let’s you do which Microsoft don’t, is have direct access to the virtual image. You can RDP (Remote Desktop) into the server and do whatever you want and install whatever. Windows Azure gives you an API where you can configure stuff like logging and alerts. According to MS they will provide more services to interact with Windows Azure later, but I don’t think you will get access to the actual virtual image(s). To add applications to Windows Azure you need to use either the Web Role or the Worker Role. However, windows Azure maintains the OS for you (updates and such) while on EC2 you have to do this yourself. Amazon today gives you a Windows 2003 Server while on Windows Azure it’s Windows 2008 Server. On Windows Azure you can configure how many instances of your Web/Worker role you want for scaling, while on EC2 you need to use the provided web services to spool up new instances.
One thing Microsoft provide that Amazon don’t is the ability to have a local environment of “your cloud”. This allow you to do development on your local computer in a simulated cloud environment, which again will let you do things like debugging. You can of course to this on EC2 as well by installing Visual Studio 
A common requirement for both is that the EC2 image and your Web/Worker roles need to be stateless. If not, scaling would just not work the way it’s indented.
For more information: Amazon Elastic Compute Cloud (EC2) and Windows Azure
Amazon S3 Amazon Simple Storage Service (S3) is where you persist your data/files. Here you can store anything from files you need for your server to databases, downloadable files, or any files you want to store in the cloud. S3 exposes a web service you use to write, read or delete files (objects) up to 5 gig each. The number of files you can store is unlimited, but you of course have to pay for storage. The underlying structure is flat using a key/value pair to write and read (or delete). They use names like Buckets, Keys and Objects. A Bucket is similar to a file folder, a Key is the unique identifier for your object within a Bucket and the Object has metadata about the object you have stored (like created date, modified date, content type etc).
Amazon S3 vs. Azure Services Platform Comparing this with Microsoft’s services is not a one-to-one mapping. To explain this I need to give you some details about the data services provided by Microsoft. First there are two main services:
- The data storage facility in Windows Azure
- Microsoft SQL Data Services (SDS)
In Windows Azure you have three storing options:
- Blob
- Table
- Queue
And to make the story short: Windows Azure with its Blob service is similar to S3 in my opinion.
The ability to query data on S3 is limited compared to Windows Azure, but Amazon provide this service in their SimpleDB instead which integrates with S3 (more on this later). In Windows Azure you can use a LINQ like query language, but on S3 you’re limited to using a pre-known bucket and key. Both do however have similar url access:
S3 example: http://torresdal.s3.amazonaws.com/photos/me.jpg
Windows Azure example : http://torresdal.blob.core.windows.net/photos/me.jpg
In the S3 example; photos = Bucket, me.jpg = Key
For more information: Amazon Simple Storage Service (S3) and Microsoft SQL Data Services (SDS)
Amazon EBS Amazon Elastic Block Store allow you to do two things:
- Create volumes
- Create snapshots
Volumes are storage volumes from 1GB to 1TB that can be mounted as a disk on EC2. They’re also placed in a Availability Zone, meaning you can only attach volumes to EC2 instances that run in the same zone.
A snapshot is a copy of the complete volume at the time you took the snapshot. If a snapshot already exist, only the diff will be saved to save storage. All snapshots is stored in S3 for later retrieval. You can then use your snapshots to create new volumes based on one of your snapshots.
Public Data Sets is free snapshots everybody can use. They contain big databases for things like public DNA data, transportation data etc. Typical data used for research. Though I’m not in that type of business or research, I see the perfect match for the service they’re providing.
If you want to use your own database server (like SQL Server) you would use an EBS volume to store the database files to persist data. This will make sure that all your data are persisted in case the server goes down for some reason or another.
As a side note I have to admit every time I read Elastic Block Store, my mind reads Elastic Book Store, which kind of makes sense considering who provides the service 
Amazon EBS vs. Azure Services Platform As far as I know there is nothing equivalent on the Microsoft platform. Since they don’t have an open interface giving you direct access to the OS there is no need.
For more information: Amazon Elastic Block Store (EBS)
Amazon SimpleDB (Beta) Amazon SimpleDB lets you store, process and query data in the cloud. It is designed to scale and developers use provided web services to integrate with the service. There is also a connection between SimpleDB and S3 allowing you to query data in S3. SimpleDB is structured into domains which contains items which again contains attribute-value pairs, resulting in a flat and highly optimized data structure. Querying data is done through either the Select API or the Query API.
Amazon SimpleDB vs. Azure Services Platform Comparing SimpleDB to MS is not strait forward. As mentioned previously when I talked about S3, Microsoft provide several services in this area. You have the data storage in Windows Azure with its Blob and Table data structure, and you have Microsoft SQL Data Services. All of these can be compared to SimpleDB, though they’re not an exact match. As the word Simple is suggesting, Amazon is providing a simple interface for storing data. Microsoft is giving you more options to how your data is going to be stored and structured, but all in they all have a flat structure similar to Amazon’s SimpleDB. Microsoft is however building on top of their existing database investments of SQL Server and provides similar services that we know from that platform in the cloud.
For more information: Amazon SimpleDB, Windows Azure Tables and Blobs, and Microsoft SQL Data Services
Amazon SQS Amazon Simple Queue Service (SQS) is, you got it, a queue. As with the other services they provide this is highly scalable and they provide unlimited numbers of queues to use as well as unlimited number of messages to add to a queue. The body of the message is limited to 8KB and a massage can be stored up to 4 days before it gets deleted. Though the message body is limited, you can use the body to reference data stored in e.g. S3 or SimpleDB. They provide you with four API’s: CreateQueue, SendMessage, ReceiveMessage, and DeleteMessage, and are exposed as web services.
Amazon SQS vs. Azure Services Platform Compared to Microsoft this is the queue storage type in Windows Azure as I mentioned above (in the S3 section). But queues are often used in conjunction with workflows, and here Microsoft provide its own service. Amazon however does not have a separate service for workflows, but encourage the use of SQS for this. The Windows Azure Queue as described now has a main purpose of providing a communication facility between the WebRole and the WorkerRole. As with SQS also the Azure Queue have the same flexibility and limitation (unlimited queues, unlimited messages and a message size of 8KB). I could not find any information about how long MS stores messages in a queue, though I expect there to be one 
For more information: Amazon Simple Queue (SQS), Windows Azure Queue and Microsoft .NET Workflow Service
Amazon CloudFront (Beta) CloudFront is a service for distributing files. All files are stored in S3 but CloudFront is using a network of edge locations, so that users downloading/accessing files will get it from a location close to him or her. When a user request a file/object CloudFront will automatically route to the nearest edge location for best performance.
Amazon CloudFront vs. Azure Services Platform Currently I cannot see a similar service from MS. There has been some speculation that Microsoft’s cache solution codenamed “Velocity” is their service in relation to CloudFrount, but I don’t see the match.
Conclusion The similarities between the services provided by Amazon and Microsoft are striking. There are a lot of similarities on how they store, manage and query data. Especially that they both have chosen a flat data structure with no relational tables, which is the only sane thing to do when you want to scale I guess.
The major differences are around how they expose their operation systems to the developer. Amazon gives you access via RDP to the virtual server, while MS adds services on top of their virtual servers that you can integrate with. Also since Amazon is not an OS or application manufacturer they are freer to chose which technologies to provide. Here Microsoft is more restricted to their own platforms and technologies, though they promise to support other programming platforms than .Net.
So the final question to all of this have to be:
Which one would you choose?
Based on what I know about the two service providers now, I would go for the consultant answer… It depends and answer with a new question:
What are you going to use it for?
If you have an existing application built around SQL Server that does not need to scale very much (like an enterprise app), Amazon seams like a good solution right now. If you’re starting from scratch and writing a new application that suits the cloud model, then I’m not that sure. Technology or programming platform will probably impact your decision. Looking into the future and if your a .Net developer choosing MS is probably a safe bet, because you would get great service support on their platform as well as a local version of Windows Azure on your desktop. On the other hand, Amazon’s solution is quite open and does not limit you to any programming language. The race is open and I’m excited to see where they are in a year or so…
Thursday, December 18, 2008
Monday, December 15, 2008
Last week I attended 2 sessions about the new Microsoft platform in the cloud: Microsoft Azure Services Platform. The first was held by David Chappell and the second by Clemens Vasters. Two great speakers. Unfortunately I didn’t get to see Clemens complete talk, because I had to catch a flight back home, but hopefully I got the main content of his talk. In this blog post I’m going to ask and answer some questions by the help of these two sessions + the additional study I’ve done around this topic. Disclaimer: The answers I provide below is based on my current knowledge of this platform and might not be correct now or in the future, though I’ve spent a fair amount of time making sure it is. What is it? It’s a platform where you can deploy and manage new services or even complete web applications into the “cloud”, in addition to make use of existing services already provided by the platform. This is often referred to as cloud computing. Today the Azure platform contains the following services: Windows Azure (the platform), Microsoft .Net Services, Microsoft SQL Services and Live Services. Microsoft SharePoint Services and Microsoft Dynamics CRM Services are also mentioned in relation to the platform. All of these services make up the Microsoft Azure Services Platform. By reading these names you may see the potential naming confusion? When you say Azure, do you mean Windows Azure or Azure Services Platform? Now you may ask, what is it really? From a simplified developers perspective it’s a platform on the internet (the cloud). Instead of hosting your web application/service on your local server, you publish it into the cloud. In addition it gives you access to the services you need to build a multi-tier architecture. From another perspective it’s big monster of a datacenter providing you with a lot of data power (virtual Win 2008 servers) to do your stuff, giving you the option to scale up and down at will or dynamically. How committed are Microsoft to this platform? As committed as they’ve never ever been before with anything as far as I can remember! They invest heavily in the technology and infrastructure needed to support this platform. By heavily I mean they’ve told the marked that this is such a huge investment that it will highly impact Microsoft’s money bin. As an example of this, here’s a short description of what they’re doing with their datacenters needed to host this beast: Every datacenter is set up of a grid of physical and virtual computers. These computers are delivered by HP and Dell and some in preconfigured shipping containers ready to be plugged in. I don’t mean the computers are ready to be plugged in, but the containers! What Microsoft then does is put a bunch of these containers close to a power plant (for obvious reasons), plug all the containers in and they’re up and running. At least that’s how it was described to me The applications, services, data etc you have put into this cloud is distributed across many VM’s, meaning if a VM or server (hosting VM’s) goes down, it’s not a problem. There is always some VM on some server holding your data. Actually the shipping containers I mentioned are remotely managed and MS never enters any of these containers for maintenance. If a computer goes down and does not come up again, it just stays down. If this happens to a certain number of servers within one container, the whole container is disconnected from the grid and sent back to HP or Dell to be fixed, without affecting any of the applications or services! This little story told by Clemens Vasters really says a lot of the scale on this monster! Can I take my existing application and deploy it to the cloud using Azure Services Platform? The short answer is: no. The longer answer is: you might in the future. First of all the platform is still in Beta, but beside from that David Chappell says: “Azure Services Platform today targets the next Facebook”, meaning it’s highly scalable and can support a lot of users. To support this level of scalability there are some compromises to be made. On Azure this is (among other things) how you store and access data. Using a plain SQL server with relational tables and ADO.net would just not scale/perform. Thereby they decided to implement a different solution where the data are stored hierarchically and data is exposed via a RESTful interface using a LINQ like query language. Unless your application have this type of data implementation today, you would have to rewrite your data access and data layer. But don’t take my (or David’s) word for it, check out this video about table storage (which you would think is normal relational tables, but it’s not) from MS and you can make up your own mind: http://wm.microsoft.com/ms/msdn/azure/scalablestoragetables.wmv. Note though that in this video they’re using Windows Azure Storage and not SQL Services, but the same is true for SQL Services. If I can't deploy my existing app to Azure Services today, what CAN I do? The obvious thing is to wait and hope Microsoft will add support for relational tables allowing you to use existing SQL Server data implementations, but the Azure Services Platform is much more than a place to have your application and data. Your (local) application might want to interact with services in the cloud to enhance your existing application. I find the Service Bus to be especially interesting, or even the Access Control Service. This is only from my perspective and within the enterprise domain where I work. If you work with a more consumer oriented domain, you might find the Live Services interesting. Note that you don’t have to use the complete platform to make use of Azure Services. You can of course select the ones giving you value for you particular domain. What’s the difference between Microsoft SQL Services and Windows Azure Storage? First of all these two services looks very similar today and one might think why have both? My impression though is that Windows Azure Storage is going to remain much the same, but SQL Services are going to expand quite a bit (reporting, analytics, synchronization etc). Clemens offered this simplified analogy: “Think of Azure Storage as the registry on Windows, and think of SQL Services as your SQL Server.”. Another important difference is that Azure Storage is not built on existing SQL Server technology, but SQL Services is. Another interesting thing pointed out by David is that none of these services use SQL!? They use a RESTful interface with a LINQ like query language. He offered one explanation to this: SQL within MS means SQL Server  What’s the Access Control Service and is it limited to only Azure apps? The Access Control Service is “Microsoft’s humble attempt” to support as many access control providers as possible, so that this service will become a common place to perform identification. They state that “No one is willing to take this responsibility, so we have to” Just think of it. How many providers of access control do we have today? Google, Microsoft, Amazon all have their own personal identity services on the internet. In addition there are a lot of others like Active Directory, Novell eDirectory, Apple Open Directory etc. What if this service would support the majority of these? Then you could use this service to do the access control for your system being in the cloud or not, and the end user could use his provider of choice. For more information about the Access Control Service check out the MSDN site: http://msdn.microsoft.com/en-gb/library/dd129876.aspx (note that this url might be quickly outdated). By choosing the Azure Services Platform, will I be locked in by that platform? By “locked in” I’m here going to assume you mean if you can move your cloud application away from this platform and on to another if you want to. Taking into account the current providers of cloud platforms we have today and the current services they provide, my impression is that you will be locked in. Just because of the simple fact that no one else is supporting .Net like Microsoft do. Hey, wait a minute… What if I use Amazon’s EC2 which gives me a Windows Server 2008 and a SQL Server, can’t I then move to that platform? That environment support .Net just fine. Well, it depends… If you’re using the Azure Storage or SQL Services, you can’t cause it’s just not a plain SQL Server. It seams like the common thing to do among cloud services providers is to create their own data access solutions (or even programming languages like SaleForce.com have done), meaning you will be locked in on that. If you’re not using the data storage solutions you might not be. Why should I be afraid of being locked in anyway? I’ve already chosen Microsoft as my technology provider. Yea, but now you’re also locking onto your host. If your host (in this case MS) decides that the solution you’re running in their environment should be increased by a cost of 500% and you can’t afford that, what do you do? Find another cloud provider? However, one interesting thing to note about Azure Services Platform is what MS says about programming languages. They want (though they don’t do today) to support many other languages like Eclipse, Ruby, PHP and Python. Google only support Python, SalesForce only support their own language Apex, Amazon basically provide you with VM’s (Linux and Windows) leaving you to choose. Another interesting aspect is that MS seams to be very open about what and how they’re doing things. People are talking about the Web Role and the Worker Role. What’s that all about? The Web Role and the Worker Role is part of the Windows Azure fabric (see separate section for more fabric info). Microsoft says: A web role is an ASP.NET web application that may be accessed via an HTTP or HTTPS endpoint. Web roles run in integrated pipeline mode on a hosted IIS7 web core. ..and/or: A web role is a web application accessible via an HTTP and/or an HTTPS endpoint. A web role is hosted in an environment designed to support a subset of ASP.NET and Windows Communication Foundation technologies. A worker role is a background processing component. It does not accept inbound network connections. ..and/or: A worker role is a background processing application. A worker role may communicate with storage services and with other Internet-based services. It does not expose any external endpoints. A worker role can read requests from a queue defined in the Queue storage service. A service may consist of a single web role, a single worker role, or one of each. When you create Azure projects in Visual Studio, you select which Role you want your project to be (or both). As described above the main difference between the two is that the web role allow incoming traffic, while the the worker role does not. What’s “The Fabric”? The Fabric, or more accurately Windows Azure fabric, is the operating system that the services run on. Again from MS: The Windows Azure fabric offers an Internet-scale hosting environment built on geographically distributed data centers. This hosting environment provides a runtime execution environment for managed code. The fabric handles load balancing and resource management and automatically manages the life cycle of a service based on requirements established by the owner of the service. The developer includes with the service code specifications for the service topology, the number of instances to deploy, and any configuration settings. The fabric deploys the service and manages upgrades and failures to maintain availability. To try to simplify (in my words): Below the fabric you’ll find a lot of VM’s. On top of the fabric you’ll find Compute and Storage. The fabric host .Net and take care of networking stuff. What if I’m not going to build “The next FaceBook”, is this still something for me? Absolutely. Even though the architecture behind it all is built so that it can handle the next Facebook, it does not mean you can’t use it for an enterprise solution which have less than 1000 users or an application you want to share with your friends. It will be interesting though to see if MS will provide us with different data models, so that we don’t have to use a really scalable one, when we will never need it, also allowing us to port existing solutions onto their platform. What’s it going to cost? No one knows. At least not outside of Microsoft. We do however know some thoughts they have around the pricing model(s). It does not look like they’re going for a “simple” price model as e.g. Amazon which charge per hour. They will probably use a combination of CPU, network, storage and transactions(data) to calculate the price. More details can be found here: http://www.microsoft.com/azure/pricing.mspx (note that this url might quickly become outdated). Who else out there offer cloud services? According to David Chappell; Amazon, Google and SalesForce.com are the leading providers today. All of these provide different solutions and pricing models. Will everybody now deploy their apps to the cloud? Not now, but I defiantly see this as a very attractive hosting model in the future, and for some it is already today with services provided by e.g. Amazon. I would think it’s especially interesting for startups that does not have the resources (money and knowledge) to set up a datacenter for hosting their solution. Hi, this is your mom. Do I need to know what this is? No. You together with the rest of the world not running an IT company or doing programming can happily not care and just use whatever services that will be provided through this platform without you knowing. Btw mom, you don’t have to read my blog if you don’t want to  Where’s Hello Cloud? It’s here: http://wm.microsoft.com/ms/msdn/azure/hellocloud.wmv ..and implemented here: http://hellocloud.cloudapp.net/ Are any of the material from the sessions you attended made available for the public? You can find David Chappell’s presentation here: https://cid-88b5769d9bbdf846.skydrive.live.com/self.aspx/Offentlig/Azure%20Services%20Platform--Chappell.pdf
|
| |
|
|
|
|
| |
| August, 2010 (2) |
| June, 2010 (3) |
| April, 2010 (2) |
| March, 2010 (2) |
| February, 2010 (3) |
| January, 2010 (4) |
| December, 2009 (1) |
| August, 2009 (4) |
| July, 2009 (4) |
| June, 2009 (2) |
| May, 2009 (4) |
| April, 2009 (7) |
| March, 2009 (7) |
| February, 2009 (4) |
| January, 2009 (4) |
| December, 2008 (7) |
| November, 2008 (1) |
| October, 2008 (6) |
| September, 2008 (7) |
| August, 2008 (4) |
| July, 2008 (3) |
| June, 2008 (7) |
| May, 2008 (7) |
| April, 2008 (5) |
| March, 2008 (3) |
| February, 2008 (9) |
| January, 2008 (3) |
| December, 2007 (4) |
| November, 2007 (10) |
| October, 2007 (10) |
| September, 2007 (2) |
| August, 2007 (6) |
| July, 2007 (6) |
| June, 2007 (3) |
| May, 2007 (2) |
| April, 2007 (8) |
| March, 2007 (6) |
| February, 2007 (5) |
| January, 2007 (10) |
| December, 2006 (9) |
| November, 2006 (5) |
| October, 2006 (8) |
| September, 2006 (5) |
|
|
 |
 |
|
|