Bart Digital Products Bart Digital Products

Introduction to AWS – Amazon Web Services

In this article, we’ll do an introduction to AWS – Amazon Web Services. AWS is a complex and expanded cloud platform that currently offers more than 175 different and full-fledged services. These services include, for example, databases, repositories, provision of computing power, developer tools, machine learning, robotics or the currently very popular Internet of Things.

AWS cloud products. (This list is available on the product page or in the documentation.)

Based on our own requirements and needs, we can choose a suitable service to work with. However, when choosing this, it can be difficult to determine what services we should use. Therefore, before the final decision about the service we have chosen, I recommend doing a survey, for example in the documentation itself.  

AWS infrastructure

AWS’s global infrastructure provides a secure and, above all, reliable cloud infrastructure. Customers from a variety of sectors and industries can use the services, whether they are large organizations or small start-ups. Currently, there are 25 geographic regions that represent data centers. The groups of logical data centers are called availability zones and there are currently 81 of them. More about regions and availability zones at this address.

Global infrastructure. (Also available at this address.)

Pricing of services

It is also worth mentioning that individual services are not always free. But thanks to the AWS Free Tier we have the opportunity to try more than 100 products 100 products,
for free, and to use the free tiers we must be registered.

There are 3 basic types of these free offers:

  1. Free forever – these services can be used by any customer and they are not limited in time.
  2. 12 months for free – services are available for one year from our first login to AWS.
  3. Short-term trial – we have the service available for free for a certain period of time starting from the beginning of using it.

Introduction of services

Since I focus on web technologies, I decided to introduce you to a few services related to the management and deployment of web applications, because these tasks are just as important in the development as the programming itself.

The AWS Elastic Beanstalk service from the Compute services helps us with the above-mentioned tasks without worrying about the infrastructure that manages and operates our application. Other benefits of Elastic Beanstalk include application monitoring, scaling and load balancing. It’s definitely worth mentioning that the application can be developed in various languages such as Go, Java, .NET, Node.js, PHP, Python or Ruby. These languages are very popular these days, which we can see in the trend curve of the Stack Overflow page.

Stack Overflow page trend curve. (Also available at this address.) 

Deploying an application through Elastic Beanstalk service consists of several steps:

  1. Log in to the AWS account.
  2. Creating an application. This application also comes with a pre-built environment, which is a set of resources needed for our code.
  3. Exploring the environment. In the environment overview, we can see important information about our environment, such as the name, URL address, health status, the name of the current version of the application and, last but not least, the platform on which our application runs.
  4. Deploying a new version of the application.
  5. Environment configuration. If necessary, we have the opportunity to adjust the application environment to make it more suitable for our application.
  6. For more information on Elastic Beanstalk don’t forget to see the documentation 🙂 and more about the pricing of this service is available here.

AWS Amplify Console service is a static web hosting, using which we can deploy SPA built on JavaScript technologies, such as the very popular React, Angular or VueThere are a few steps to take to deploy such an application:

  1. Logging in to the AWS account as in the previous case ?.
  2. Linking a Git repository, but in this case we also have the option of manual deployment, which does not require any connection to Git.
  3. Settings for frontend, backend and the ability to add system variables.
  4. Saving and deploying.

We can try the Amplify Console for 12 months for free.

Conclusion

In this article, we quickly introduced the AWS, its growing infrastructure and services to help us with the basic but important challenges we face during the development of our web application.