Web+: Alibaba Cloud’s Web App Service (Part 1)
By Shantanu Kaushik
Web+ is a fully managed Web App Service offered by Alibaba Cloud. It is an extensive framework that supports the deployment of web, API, and mobile applications. Web+ is based on the PAAS architecture and provides an easy approach for developers to deploy, manage, scale, and monitor their application without having to worry about infrastructure issues and dependencies. This flexible, efficient, and secure architecture is based on the highly evolved Alibaba Cloud platform.
The Web App Service is highly scalable and integrates tools that have set the benchmarks in industry standards. One of the most prominent points here is the language support, as a developer seeks support for the programming language of their choice.
When it comes to language support, Web+ is highly customizable. It has support for a wide variety of languages including Ruby, Python, .Net Core, Java, Node.js, Go, PHP, and more. Apart from that, developers can use open plugins provided by the Web+ app service to enable support for many more programming languages.
Just like the other products and services from Alibaba Cloud, the Web App service retains all of the important characteristics of a robust and scalable service. With support from products like the Elastic Compute Service (ECS) or Server Load Balancer (SLB), Web+ comes out with unmatched performance.
Let’s analyze the following visual representation to better understand the architectural flow of Alibaba Cloud Web+ Service.
Web+ or the Web App Service supports service and essential monitoring solutions. These solutions were built-in to the service and provide real-time monitoring of the deployment environment, performance, and overall health of the system. Application logs are available for the user to download and analyze for more elaborate planning and deployment scenarios.
Fully Managed Service
Web+ is a platform as a service PAAS. That means Alibaba Cloud provides all of the necessary resources, like the ECS, SLB, Cloud Monitor, Database, Content Delivery Network, or Object Storage Service, and also takes care of all of the configuration and management. All you are required to do is to upload the application packages.
Multiple Programming Languages
The Web App Service currently supports many programming languages and the list is increasing every day. If you are developing in a language that is not yet supported, you can use any available plugin to deploy using the language of your choice. Since this service supports many open-source plugins, you should have no problem deploying using it.
Web+ is a very diverse service. You can easily connect it to any infrastructure and deployment environment to run applications. You can also develop plugins and use them with the Web App Service to connect it to any other service.
Automatic Configuration and Version Management
The Alibaba Cloud Web App service works with the desired-state-oriented resource scheduling for deployment and automatically orchestrates the resources depending on the presented environment. Once an application has been deployed, the Web+ service provides you with the functionality of version control. You can easily manage your deployed applications and roll back to different application versions there are any issues.
API and Environment Templates
With support for configuration specifications through the templates for the deployment environment, the Web+ service supports API integration using the API gateway service. The Web App Service also supports and enables you to develop your own set of development tools and integrate your personalized script.
Application Support and How-To | Alibaba Cloud
Let’s take a look at a visual representation of how Web+ works for common web applications.
Alibaba Cloud Web App Service maximizes productivity and minimizes configuration needs. With support for multiple deployments, Web+ ensures hassle-free deployment of applications. Whether it is multiple applications or a stand-alone deployment, the Alibaba Cloud Web App Service performs remarkably well and provides maximum productivity and ease.
Standalone deployment is a great choice for small scale enterprises, but Web+ also supports more advanced and capable distributed deployment scenarios for medium to large enterprises.
Functionality of This Module
When opting for a distributed deployment scenario as a developer, you get an option to leverage the best tools that Alibaba Cloud has to offer. With a distributed deployment scenario, the Server Load Balancer (SLB) is used to handle high-load situations and multiple instances of ECS and can be provisioned or deprovisioned elastically without providing additional configuration or steps.
The RDS Database Service by Alibaba Cloud is used for data storage and is known for its performance and reliability. With that, the Content Delivery Network (CDN) is used for uninterrupted content delivery. The overall system is designed in a way that ensures high-availability and situational awareness-based implementation.
The standalone deployment module provides the database support alongside reverse proxy and the application resources on the same node, making inter-module communication super fast and highly-available.
Quick Tip: A How-to on Reverse Proxy
Reverse Proxy on Alibaba Cloud works in a way that it listens to Port 80 every ECS instance. After that, it redirects any http port 80 requests to the application service port.
As I said earlier, hosting your application on the Alibaba Cloud network provides developers with an opportunity to leverage some of the best tools in the industry. This immersive integration of Alibaba Cloud services provides a seamless environment for the developer.
The Elastic Compute Service (ECS) makes the whole deployment as elastic and scalable as possible. Similarly, the Object Storage Service (OSS) is responsible for seamless storage needs. From backup to general queries, communication between the OSS and the RDS Database Service has been designed to work with minimal delays. After a successful deployment, you can use the Cloud Monitor to check the performance and usage statistics of your application and make any required changes. The Server Load Balancer comes into the picture to balance any traffic situation and to call ECS for provision or de-provision with any required resources.
Continuing in Part 2
We have discussed how the Web+ service by Alibaba Cloud proves to be a vital resource for anyone that wants to publish/deploy a service without having to worry about resource orchestration and configuration management. Alibaba Cloud has designed an environment that takes care of almost everything that a developer would need to form a Platform as a Service (PAAS) resource.
In the second and third part of this series:
- We will discuss how the Web App Service works with open-source applications and mobile applications.
- We will take a look at the environment and discuss the deployment scenarios and strategies applicable to Web+.
- We will show you how to configure a deployment environment using Web+ on Alibaba Cloud.
- We will discuss different aspects of development environments and resource usage based on your requirements.
- We will show you how to deploy a Jenkins with the Web App service.
- We will use the command line interface for deployment.
- We will show you how to deploy an application.
The views expressed herein are for reference only and don’t necessarily represent the official views of Alibaba Cloud.