Learn about an ideal use case for Block Storage: hosting an app which requires server-side processing (like Java or PHP). Learn how Block Storage can provide portability and high performance for server-side applications, and serve multiple needs throughout the app's life cycle.
- A Cloud Server
Use Case: App Hosting
In this scenario we will examine how using Block Storage can benefit a user who is planning to launch and run an application which features server-side processing (like Java or PHP). The user anticipates high demand, and will require high performance from the app.
Scenario 1: Setup and Average Daily Use
The app is installed on a Block Storage device which is attached to a Cloud Server.
The Cloud Server is used to handle the app's required support infrastructure, including running the Apache web server to manage requests to the app.
The app's data (for example, user-generated content and files) is stored on the Block Storage device. This provides the app with portability, and reduces the app's response time, thanks to the location advantage.
Scenario 2: Migration
In this scenario, the app's popularity increases significantly. The original server begins to struggle under the increased workload.
Because the app resides on the Block Storage device, you can easily migrate it to a new server. Block Storage can be detached from one server and attached to another through the Cloud Panel. This migration method will have minimal downtime and impact on your users.
This process can also be used to migrate the app to a new server. You can prepare the new server at your leisure. When the new server is ready, simply use the Cloud Panel to detach the Block Storage from its original server and attach it to the new server.
Scenario 3: Resilience
In this scenario, the server hosting the app experiences a problem and crashes. It may take many hours to investigate what caused the crash and resolve the problem. In the mean time, the app needs to be available.
A new Cloud Server can be provisioned within minutes through the Cloud Panel. After the new Cloud Server is provisioned, simply use the Cloud Panel to detach the Block Storage from its original server and attach it to the new server.
Because the Block Storage is a separate device, it will not be affected by the server's issues.
Scenario 4: Build-Out
Thanks to the portability of Block Storage, it is easy to build out multiple versions of the app and attach them to multiple servers.
This can be useful if you wish to use the app to run in several different but related forms. For example, an app to collect user reviews could be deployed on one server as a restaurant review database.
A copy of the app could then be installed on a new Block Storage volume, customized, then deployed on another server as a shoe review database.
This process can also be used to update the app. Install a copy of the app on a Block Storage device, and attach it to a new Cloud Server which will serve as the development environment.
After the update is complete and tested for performance, the change can be rolled out simply by detaching the Block Storage with the original app from the production server, and attaching the Block Storage with the updated app.