Getting to know Microsoft Azure
In the rapid development of cloud computing in Indonesia today, one name that stands out is Windows Azure. This technology formed by Microsoft is a form of Platform as a Service (PaaS) implementation of cloud computing. This technology allows us to build an application through the cloud, either in the form of web application technology, cloud services, or applications that run on virtual machines.
One of the advantages of Windows Azure is the ability to run applications from various types of technologies and platforms, including .NET (as a technology from Microsoft), JAVA, and also PHP.
Historically, this technology was first introduced in 2008 and continued to be developed until it became generally commercial on February 1, 2010.
There are three components of Windows Azure technology, including :
- Compute: Is a part of Windows Azure technology that is useful in computing processes, both foreground and background jobs (running behind the scenes). Compute tools from Windows Azure include web roles, worker roles, and virtual roles.
- Storage: Is part of Windows Azure technology that is useful in the data storage process. There are two types of storage in Windows Azure, the first is Azure Storage which is useful for storing data in the form of tables, clouds, and blobs. Meanwhile, another form of storage is SQL Azure which is a version of SQL Server that runs in the cloud.
- Fabric: Is a part that is useful as the "brain" of this technology. This process is managed by the Windows Azure Fabric Controller which is useful in the process of scheduling, resource allocation, and management.
Windows Azure relies on REST (Representational State Transfer) technology so that the communication process between applications can be done using the HTTP protocol. The abstraction of the Windows Azure concept can be seen in the figure below:
Source: blog.programmableweb.com
There are two key properties that make Windows Azure superior to its competitors, including:
- Resource Elasticity: We can adjust the resources needed in real-time by an application that is running. For example: if an application is only high traffic at certain times (for example election applications), then of course the resource requirements are only high at certain times. Therefore, we can make resource settings by using low resources when the number of accesses is low, and increasing resource capacity when it reaches peak time.
- Geo-aware: Windows Azure runs on top of Microsoft data centers that are widely spread around the world. When developing cloud applications, developers can choose the data center closest to them so that the level of connectivity becomes higher. For example, if we make an election application in the European region, then the resources we use (database, etc.) should be in the European region. This has been implemented in Windows Azure technology. An illustration of this concept can be seen in the image below.