Interpretation of the four major game architectures

The game industry is one of the industries that Alibaba Cloud first focused on. In recent years, changes in the game industry and cloud computing product technology are advancing with each passing day. With the changes in industry business, the evolution of technical architecture, and the iterative evolution of Alibaba Cloud products, the overall product technology selection varies in different game and business scenarios. This article will focus on the practical experience of Alibaba Cloud elastic computing products in the gaming industry.

01 Introduction to Game Industry Scenarios

Currently, various scenarios in the game industry are inextricably linked to industry development. Briefly review the development of electronic games, including black and white consoles in the 1980s, PC stand-alone games in the 1990s, and online games that became popular with the development of the Internet in the early 2000s. After 2010, with the gradual popularization of mobile devices, mobile games began to rise in China.

The main differences from game terminals are: console games (often 3A games), PC games, mobile games, and web games. Currently, there is a trend towards cross platform, multi terminal games, and cloud gaming.

There are many dimensions of game category differences: RPG (role playing), MOBA (competitive), FPS (shooting), leisure, card, chess, SLG (strategy), and so on. There is currently a trend towards multi category fusion and fission of play methods.

In recent years, due to factors such as domestic addiction prevention and version number, more and more high-quality games have emerged in the game industry. Globalization and even regionalization have led to a slowdown in the growth of overall stock users. The operation methods such as long-term operation, fine operation, and private community are also quietly changing.

02 Introduction to the Technical Architecture of the Game Industry

The technical architecture of different business scenarios varies, such as the computing requirements of competitive games and card games, and the architecture of cloud games and regular online games is also different. Here is a brief introduction to its architecture from four currently common scenarios: game servers and game platforms, big data, and cloud games.

1. Game Clothing Architecture and Product Practice

Business scenario

Game clothing, from the perspective of game types, includes RPG, FPS, MOBA, SLG, chess, leisure, and so on; From the perspective of game platforms, there are usually consoles, mobile phones, PCs, etc; From the perspective of business issuance, there are global, domestic, and overseas deployments, and from the perspective of deployment architecture, there are centralized deployment and zoning deployment; From the perspective of technical architecture, the game industry also has a trend of gradual hierarchical decoupling, but compared to Internet applications, it has certain uniqueness.

Technical characteristics

Due to the strong interactive characteristics of games, the game technology architecture has certain uniqueness compared to other Internet applications. Games need to maintain a session connection, that is, a long connection from a client to a server, facilitating timely feedback on the operations and behaviors of players in the client and pushing them to other players in a common game or game. Therefore, games are generally more sensitive to network quality, and poor network quality can cause long connections to be disconnected or reconnected, causing players to drop lines. Games also need to maintain a conversational state, as the server maintains a copy of the player's entity. When the player performs operations, the next communication data will rely on the previous communication data. This is also one of the reasons why some MMO (multi player online) large-scale games require high network throughput performance. Another example is multiplayer warfare games such as FPS and MOBA, which are more interactive, have lower tolerance for network latency, and require low latency.

Because games require a relatively high density of recording player operations and results, they are characterized by frequent data writes, and such scenarios require strong IO performance. Due to the strong interactivity and low latency characteristics of games, their technical architecture is also different from Internet applications. While gradually layering and decoupling, it is necessary to ensure the interaction effect of game players, and also rely on the computing power of the underlying server.

These are common features of game scenarios: long connection retention sessions, state retention, low latency networks, high IO throughput, and high computing performance.

Deployment Plan

The deployment architecture of a game will be based on the characteristics of the game business and the operational needs of the game to develop game services. There are divided service and regional full service business logic, and the biggest architectural difference is whether the data is a set. From the perspective of deployment methods, there are mainly centralized deployment and subregional deployment.

Centralized deployment means that no matter where the game player is, the game services are concentrated in a single area, which is suitable for game types that generally do not require high network latency, such as leisure games; Partition deployment refers to the deployment of game servers in different regions based on the geographical distribution of game players, which facilitates access to nearby games. It is suitable for game types that require high network latency, such as MOBA and FPS.

Typical architecture

I. Introduction to MMORPG game architecture

The MMO class has a high concurrency characteristic, and the high computational load concurrent by a large number of players requires extremely high computing power and stability of the server. At the same time, MMO games have strong PVE or PVP characteristics, and have a low tolerance for network latency.

The gateway server is responsible for forwarding all network data packets, usually at points where network load is concentrated, and has a high requirement for network throughput. A single game zone carries a high number of players, and the logical server is usually divided according to the scene map, and the scale can be achieved through zoning.

The data center server is responsible for caching player data and asynchronously storing it into the database, ensuring that player customers can quickly obtain and write data. It has high availability requirements and needs to cooperate with the application layer to implement a data fault tolerance mechanism.

The log server bears the pressure of log collection and processing for all business activities in the region, and has high requirements for disk write performance. It is usually implemented by grouping multiple servers.

Elastic computing product recommendations:

(1) MMO game server performance and stability requirements. It is recommended to use the latest 7th generation ECS instance. According to actual needs, select the c computing type (CPU memory ratio 1:2)/g general-purpose type (1:4)/r memory type (1:8). Intel Ice Lake 2.9GHz baseband 3.5GHz RF provides ultra-high performance, which can better optimize the game experience.

(2) For scenarios where asynchronous storage and log servers require high disk read and write performance, it is recommended to use ESSD PL 0/1/2/3 on the cloud based on business performance needs to avoid disk read and write bottlenecks.

(3) In the daily version update of the game, it is necessary to quickly replicate images from various regions. Based on the ability of ESSD snapshots to replicate remotely, it can improve the efficiency of image replication.

(4) Scenarios such as partitioned and distributed services often require rapid service opening and rolling. Using cloud O&M tools such as CADT cloud hosting, ESS elastic scaling, OOS O&M orchestration, and ROS resource orchestration with products can improve cloud O&M efficiency.

Ii. Introduction to FPS and MOBA game architectures

MOBA games mainly include several main parts, such as PVP system, PVE system, and game platform. PVP combat is the core of MOBA/FPS games.

PVP, PVE, and game platform functions are deployed in the same VPC, forming the game area; Combat servers are (often) deployed separately across regions.

The game client first accesses the login server to complete game platform logic such as login authentication and billing. To avoid single point issues, game platform services often require highly available solutions. High availability solutions on the cloud, including convenient operation and maintenance tools, can be utilized to meet business high availability requirements.

FPS/MOBA competitive games are often particularly sensitive to delays. It can be imagined that in competitive games, gamers manipulate characters, walk leisurely on the map, and gunfire is dense. Each bullet is a vector calculation of time and space, and the calculation needs to be completed in the main process. As the number of players in the room increases, the computational power demand will explode exponentially, A 5V5 room and a large room with 100 people (eating chicken) have completely different demands on computational power.

For this part of the game's recalculation scenario, it is recommended to use AliCloud's 7-generation high frequency or 7-generation instances, with higher single core performance providing better combat effectiveness.

Battle room games, due to the peak and valley characteristics of the business itself and the flexibility of using resources on the cloud, often better optimize the overall resource usage cost. Alibaba Cloud elastic computing itself provides very flexible payment methods, including regular on-demand instances, monthly and yearly subscription instances, and offsetting on-demand instance resources by saving plans/reserving instance vouchers. This allows for flexible use of resources while achieving better costs.

In addition, in order to further release the efficiency of development, operation, and maintenance, some current games also adopt a container technology architecture. Alibaba Cloud's ACK+ECS/ECI elastic container instances are used in combination, further releasing the flexibility and flexibility of basic resources.

2. Game platform

Business scenario

The main services provided by game platforms (not limited to FPS and MOBA) include: official website, customer service, registration, login, recharge, exchange, shopping mall, push, announcement, community, SDK, email, SMS, and other public services; It includes basic services required by businesses such as content review, video recording, bullet screen, transcoding, editing, and RTC, as well as platform services such as operation and maintenance monitoring, publishing platforms, and testing platforms.

This part is closer to the general Internet technology architecture, with service granularity decoupling, access ->gateway ->application ->database.

Technical characteristics

This often requires building a highly available infrastructure to improve stability, and business emergencies often require a certain degree of resilience. Compared to game services, containerization is more popular, and it is easier to cope with peak traffic scenarios through cloud based, such as elastic container instances. In video recording scenarios, when real-time requirements are high, they are often built based on GPU capabilities. Alibaba Cloud also provides vGPU/cGPU capabilities to release GPU flexibility.

3. Big Data Architecture and Product Practice

Business scenario

The business performance of the entire game lifecycle, user retention, business transformation, including game play strategies, are all business support data that game manufacturers pay close attention to.

Big data is the main technical means for current game business operations and game operations, mainly targeting platform data operations, game data analysis, advertising transformation analysis, security operation analysis, and other core game operation scenarios. Different scenarios have different requirements for real-time performance. Real-time query and retrieval typically involve business analysis, customer acceptance, player monitoring, and online scenarios; Offline reports are typically scenarios such as player behavior analysis, user portraits, and feature mining.

In general, real-time business is more of a business query type and a simple calculation type task, such as analysis of purchase volume conversion; Offline tasks are basically analysis and prediction tasks, such as game play analysis.

Architectural features

From the perspective of technical architecture, thanks to the high richness of the open source community technology stack, there are many specific technology options for big data. As a whole, concepts such as data warehouse, data lake, and even lake warehouse integration have emerged from the integration of storage and computing to the separation of storage and computing.

From the perspective of data architecture process, from data source ->data collection, transmission ->data calculation, storage ->data application, the optional technical solutions also need to be tailored to local conditions.

From the perspective of deployment architecture, different game companies are at different stages of data construction and have different choices, including fully self built, cloud based self built big data, cloud based hosting, and using more mature product technologies on the cloud to enrich the overall big data capability set. The latter has also become the choice of more and more customers.

Take the cloud based big data solution for example, for example, in the real-time computing section, select SLS acquisition and Kafka data gateway channels, perform data calculation through Flink, perform data analysis through ES or CK, and perform data application demonstration through ADB and QuickBI. The offline solution uses OSS for cold data storage, Spark, Hive, HDFS, and other components for data calculation and storage, CK aggregation analysis, and Dataworks for data applications.

Product Selection

The specific selection of computing storage products is mainly based on different business characteristics and big data application characteristics, and is selected based on data capacity, IOPS, throughput, read/write characteristics, and cost performance.

For example, in the real-time computing/near real-time computing scenario just illustrated, Flink has the characteristics of high performance and low latency, so it is a computationally intensive and high network performance scenario. It is recommended to select a 7-generation ECS instance or a 6-generation enhanced instance; If HDFS requires large storage capacity and high throughput, D-series local disk instances, such as D2S storage local disk instances, are recommended. For scenarios with multiple processing results such as Remote Shuffle Service, where read and write processing is frequent, such as a large number of join calculations, it is necessary to comprehensively consider computing, network, storage performance, and comprehensive costs to select a generic instance (such as the 7th generation ECS instance) or an i-series local disk instance. Therefore, for the final selection of resources on the cloud, in the early stage of meeting the performance requirements, it is necessary to evaluate whether the cost of transmitting data through the network is high (cloud disk) or the cost of computing using local materials is high (local disk). Different models and levels of selection differ.

From memory processing (with the highest cost, the best performance, and the smallest storage capacity), SSD local disks, HDD local disks, ESSD cloud disks, and OSS object storage (with the best cost, the average performance, and the largest storage capacity), gradual hierarchical decoupling also brings a benefit: it fully releases the ability of elasticity on the cloud, allowing you to use more lightweight elastic computing products (such as SPOT preemptive instance mode, or ECI container instances) for big data computing, Achieving better flexibility to meet business needs can also save more costs.

4. Cloud Game Architecture and Product Practice

Business scenario

Since ONLIVE proposed the concept and products of cloud games in 2009, cloud games have survived a technological cycle. Especially in the past two years, we can also see more and more companies paying attention to cloud games and investing in them. The platform is based on streaming capabilities and drives game operation in the form of video streaming, enabling users to enjoy higher quality game products at low cost. It also covers terminal scenarios such as PC, mobile, and TV based on the actual needs of cloud games.

Architectural features

Cloud games are mainly divided into terminal and cloud games. Terminal devices based on operating systems such as Windows, iOS, and Linux include mobile phones, tablets, computers, televisions, and VR all-in-one machines. The cloud architecture mainly includes game application layer, cloud game platform layer, and IaaS basic resource layer. The application layer includes PC games, mobile games, VR games, H5 games, and other types of game applications; Platform: The necessary operation platform, support platform, streaming technology platform, etc. for layered cloud games; The IaaS basic resource layer includes the basic network, GPU servers based on the X86 architecture, and ARM architecture.

Product recommendations

The landing of cloud games has also experienced many technical challenges. To meet end-to-end high-performance and low latency, network scheduling, instruction streaming, codec, and multi terminal SDK adaptation are inevitable technical issues in cloud game scenarios.

For cloud computing, Alibaba Cloud solves cloud rendering, streaming, and codec issues, and meets the needs of cloud mobile games, end games, VR, and even enterprise level visual rendering scenarios through a full range of GPU products.

In summary, Alibaba Cloud elastic computing helps game customers provide better performance experiences to cloud game players through a comprehensive set of technologies such as streaming, encoding acceleration, and rendering acceleration on the cloud. Based on Alibaba Cloud's global data center, it can help cloud game customers cover more users. Through the multiple product forms and overall elastic capabilities of GPU, it also helps game customers build their cloud game business more quickly and flexibly.

03 Summary of practical experience

Through years of technology accumulation and continuous operation, Alibaba Cloud has provided large-scale infrastructure cloud services. Currently, Alibaba Cloud has deployed 26 regions and 82 availability zones worldwide. Through excellent and stable performance, Alibaba Cloud helps game customers run their game business efficiently and stably, provides players with an extremely smooth gaming experience, and continuously helps game customers optimize cloud cost through technical means.

"Domestic business and game shipping is also one of the major trends at this stage, and many game companies have turned shipping from a business option into a mandatory option.". In March 2022, Alibaba Cloud launched two major regions, South Korea and Thailand, which can provide a smoother and more stable gaming experience for localized gaming businesses. We hope to provide more help in the business areas where gaming customers go to sea.

Of course, as the intersection of the two hot areas of content and technology, the gaming industry is changing rapidly, and the architecture is constantly changing with the needs of front-end business. Alibaba Cloud elastic computing has also launched different cloud server types and payment methods, as well as cloud operation and maintenance kits, aiming at different architectures of game manufacturers, to help customers reduce costs and increase efficiency.

In the future, Alibaba Cloud will continue to pay high attention to the gaming industry, always providing a solid, stable, and convenient infrastructure for the industry, and jointly promoting the healthy development of the gaming industry.

Related Articles

Explore More Special Offers

  1. Short Message Service(SMS) & Mail Service

    50,000 email package starts as low as USD 1.99, 120 short messages start at only USD 1.00

phone Contact Us