Abstract: Object Storage Server (OSS) is a massive, secure, low-cost and highly reliable distributed storage service offered by Alibaba Cloud. It provides unlimited storage space, 99.99999999% data reliability, quick access to large files, and nested image processing capabilities to help you easily deal with storage of and access to massive files. OSS has the following advantages compared to self-built storage services:
Multiple servers to support horizontal expansion of business systems
A business system with a highly scalable architecture is virtually capable of withstanding any amount of access traffic. Unlike vertical scaling, horizontal scaling puts less pressure on the overall hardware of a server.
To implement load balancing, you can use traditional technologies for traffic distribution to support multiple servers. Commonly used load balancing technology such as F5 uses expensive hardware. Furthermore, software such as LVS, Nginx, and HAProxy is challenging to build and maintain on a system.
Alibaba Cloud Server Load Balancer accomplishes the same goal while keeping costs at a minimum. Server Load Balancer is easier to use than traditional methods and can reduce costs by up to 60%. Server Load Balancer can be flexibly scaled according to the application load, and avoid interruption of external services in the event of traffic fluctuations. With its redundant design, it can ensure the service availability to up to 99.99%.
Server Load Balancer products' load sharing capabilities, combined with ECS's rapid creation capabilities, can lay a solid foundation for us to build a system for large numbers of users.
Accelerated static file access for regional users through CDN
If the servers for an application are deployed in the Beijing data center, users in Beijing will enjoy quicker access than Guangzhou users. This is because the access requests and reply messages for Guangzhou users have to go through a longer routing process before arriving at the servers in Beijing.
You can use Alibaba Cloud CDN to solve this issue. CDN works by caching data content to a data center that is nearest to the user. This approach greatly shortens the network access path and increases website access responsiveness and website availability. CDN can also solve issues of low network bandwidth, high user access traffic, and uneven distribution of network nodes.
Accelerated database access through caching
Most of website visits follow the Pareto principle, in which only 20% of the data represents 80% of the access requests. Therefore, we can cache hotspot data to shorten the access path to the data and reduce the pressure on our databases, thereby improving system performance and user experience.
Alibaba Cloud's Open Cache Service (OCS) works out-of-the-box to help you with quick deployment and implementation. Unlike traditional local caching services, OCS deploys its hardware and data on the cloud and offers sound infrastructure, network security and system maintenance services. You are only required to pay for the resources you have used.
If you need data persistence, select the KVStore product (compatible with the Redis protocol). Otherwise, select the OCS (compatible with the Memcached protocol) or the KVStore (compatible with the Redis protocol) according to your actual business needs.
Database and table partitions and read/write splitting for better capacity and performance
As the number of users increases, the database can become a major bottleneck in the system. A common means to improve database performance is through read/write splitting and database and table partitions. As the name suggests, read/write splitting means to divide databases into the reading database and the writing database, while achieving data synchronization through the master-slave function.
Database and table partitions can be divided into horizontal and vertical partitions. Horizontal partition refers to splitting a super large table in a database, such as the user table, into multiple smaller tables. Vertical partitioning refers to the grouping of tables based on different services, such as putting tables related to user services and commodity services to different databases.
Of course, it is not easy to implement these solutions on your own. You can use Alibaba Cloud's Distributed Relational Database Service (DRDS), an online distributed database service capable of horizontal partitioning, smooth scaling, and read/write splitting to help you solve the above problems easily.
Build a massive file system
More and more files are generated as your number of users grows and business volume increases, which will lead to storage capacity bottlenecks as well as a series of problems in data backup and access performance. A single file server is unable to meet such high business demands.