- setembro 28, 2018
- Posted by: Equipe Ustore
- Category: Computação em Nuvem, Internacional
Artigo em inglês
Understanding the concept of cloud computing is an important value for business as it represents a profound change in the information technology model. The first key point is to understand that cloud computing is made up of a broad set of services that can be chosen where, when and how to use it. Cloud computing has the potential to change everything in the area of information technology, creating competitive advantages in an intelligent, dynamic and cost compatible way, permanently adhering to the needs of each business model.
The cloud computing environment is comprised of service models. These models are important because they define an architecture standard for cloud computing solutions.
- Software as a Service (SaaS)
The SaaS model provides specific purpose software systems that are available to users through the Internet and accessible from various user devices through a thin client interface such as a Web browser. In SaaS, the user does not manage or controls the underlying infrastructure, including network, servers, operating system, storage, or even the individual features of the application, except for speci fi c configurations.
The adoption of cloud computing in general, and particularly SaaS, is a great way to quickly deliver technology solutions to business needs. There are hundreds of applications available that can be considered excellent candidates like:
• Those that require significant presence, remote or mobile access. An excellent example is management software for sale and customer relationship;
• Those that will be used for a short period of time, or seasonally. An example would be the project collaboration software;
• Where your use requires significant demand spikes, for example sending email marketing campaigns.
- Platform as a Service (PaaS)
Platform as a service is the delivery of a layered computing environment of solutions as a service. PaaS offerings facilitate the deployment of lower cost and more complex applications in purchasing and managing hardware, software and infrastructure provisioning resources. PaaS is analogous to SaaS, except that, instead of software delivered over the web, it is a platform (an environment) for creating, hosting, and controlling software. The most common PaaS offerings include:
• Team collaboration services, integration and sorting of services;
• Database integration, persistence, and state management;
• Hosting services (web sites, blogs, virtual stores);
• Environment to develop, test, deploy and maintain applications in an integrated and scalable way, to fulfill the entire development process;
• The multi-tenant architecture, where multiple concurrent users use the same application;
• Scalability, including load balancing and failover (process in which one machine assumes the services of another, when the latter fails);
Services provided by a PaaS provider mean fewer services provided by the company. For the information technology team this means fewer things to deploy, manage and monitor over time, resulting in concentrated focus, more energy and effort in what matters the most, the result required by the company.
- Infrastructure as a Service (IaaS)
IaaS is a way to deliver cloud computing, where the infrastructure of servers, network systems, storage, and all the environment required for the operation are contracted as services. Instead of buying servers, software, data center space, customers use these features as a fully outsourced on-demand service.
IaaS makes it easier and more affordable to provide resources such as servers, network, storage, and other critical computing resources to build an on-demand application environment that can include operating systems and applications. In IaaS, there are some subcategories that are fundamental to make clear to understanding this layer. Generally IaaS can be contracted according to the following implantation models: public clouds, private clouds or a combination of the two clouds.
• Public Cloud: A public cloud is considered when the available infrastructure for contracting consists of shared, standardized and self-service Internet resources;
• Private Cloud: Infrastructure that uses the characteristics of cloud computing, such as virtualization, but in the form of a private network;
• Hybrid Clouds: It is the combination of public and private clouds, making it possible to use the best options of characteristics of both.
- Container as a Service (CaaS)
Container as a service is a form of container-based virtualization that has become very popular for development and delivery within digital business. The biggest advantage of containers is to give code portability to the enterprise, isolated environments in which the technology area can upload, organize, execute and scale a tool or an application.
With this type of solution, companies gain flexibility and agility in DevOps because their contracted structure is not associated with a specific machine. It is possible to make the same code run on several different systems and test modifications without affecting the top layer of virtualization.
- Function as a Service (FaaS)
A function is behind an architecture made to run a serverless or serverless application. Serverless architecture is at the edge of efficient cloud computing, where a small piece of code in an application can be run and managed in some instance of the cloud as a micro service, using a stateless protocol, which considers each request as a without the complexity of building and maintaining the infrastructure normally associated. Function as Service (FaaS) is a category of cloud computing services that provides this facility to developers.
FaaS is even simpler than PaaS. As the name suggests, it is based on the functions that can be triggered by a certain event, so it is an event-based architecture. The level of simplicity is so high that it’s called serverless architecture. The developer only writes a function and does not need to reflect on topics such as deployment, server resources, and scalability.
Other advantages such as the need to upgrade servers and the continuous integration in the development of products and services make FaaS and everything related to Serverless are the trend of the moment in the world of technology. Even though there are already several ways to automate infrastructure processes and tasks, not having to worry about it is already a major developmental advance, and this new idea allows server costs to be reduced as well.
FaaS is an evolution within the PaaS
The main difference between FaaS and PaaS lies in the abstraction and simplification of the infrastructure. The server-based, service-based, and service-based computing benefits that make it possible for companies to abstract the direct need to manage infrastructure resources can also be achieved in part by using the platform as a service.
This difference is mainly visible in costs, both direct and indirect. FaaS services charge for function runtime, while PaaS services charge for the runtime of the thread on which the server application is running. In PaaS, a server is more visible and needs care and attention. Already in FaaS, the server is abstracted from its operation, becoming invisible.
Cloud Computing is a rapid revolution in information technology and will become the standard method of system delivery in the future. It is therefore imperative that information technology managers quickly consider the best approach to start the journey to the cloud as soon as possible.
Author: Lenildo Morais, Project Manager at Ustore, a leader in the Brazilian cloud storage market, based at the Porto Digital technology campus in Recife. He is also a Researcher at the ASSERT Research Technologies Laboratory – Advanced System and Software Engineering. Lenildo has experience in Software Engineering, working in the following research topics: software quality, methodologies and processes of software development, requirements engineering, software testing and project management software. He earned a Master in Computer Science at the Center of Informatics of the Federal University of Pernambuco.