In this paper, byNetease cloudRelease.



Kaola.com has successfully passed the “Double 11”, “Double 12” and other promotional activities in 2017, and its sales volume reached four times that of 2016. So, on the technical architecture level, how does Koala support such a fast growing business? Xie Chengchao, chief architect of Kaola.com, declassifies the Technical Architecture of the First Cross-border E-commerce on netease Cloud.

Xie Chengchao, chief architect of Kaola.com

Like many Internet businesses, Kaola’s initial architecture was very simple, with only online, offline, management, background and cache services. It focused more on the realization of business functions and did not give much consideration to service separation, decoupling and servitization. Because the first priority was to get the service online, many problems could be fixed later. These features are sufficient for a zero-based e-commerce platform.

In the early days, development was about meeting the needs of the business, adding features and services. Later, with the increasing number of products and users, the architecture became more and more bloated, and the business demands could not be met gradually, as well as the high concurrency demands of some large-scale promotion and seckilling activities. The main issues are:

  • Too much business logic is coupled to each service. Taking online services as an example, commodities, orders, materials and activities of the front desk are all in one project, and multiple functions are coupled in one class or even one method
  • Parallel development is difficult, and functions of different branches with different requirements often modify the same piece of code, affecting multiple modules
  • Core and non-core businesses are coupled and interact at critical times. For example, customs clearance data in the background once affected the core payment business; Online coupon exchange hot data problems, affecting the core order business

Then began to transform the existing architecture as a service. Each function is assigned a special person in charge, so that the specific function development is responsible for the specific module design, and the internal realization of external transparency, only need to ensure the correct interface.

Of course, the servitization of the architecture is also based on the actual business situation. For example, compared with traditional e-commerce, cross-border e-commerce has much more complicated procedures in warehousing, logistics and customs clearance, so the purchase, sale and inventory services are separated. In addition, as releases become more frequent and more frequent, manual releases are slow and error-prone, so the rollout of automated deployment systems can greatly improve release efficiency.

After the service transformation, although the number of online services increases, the demand for a single online service is reduced, the time is shortened, the impact area is smaller, and the risks are more controllable.

However, for development, the most important task is to develop the business system, although the basic services supporting the business system are also very important, but need to invest a lot of manpower and energy to do. Therefore, Kaola began to use netease cloud services to reduce the situation of repeated wheel manufacturing.

Koala produces hundreds of GIGABytes of pictures and videos every day, and needs a stable and easily extensible file system. Therefore, it uses the object storage service of netease Cloud to easily solve the problem of massive file storage. For the database, Kaola adopts the distributed database of netease Cloud, which is much better than the original Oracle expansibility.

With the continuous expansion of the business scale, more and more services are provided, such as payment, third-party interface, mobile terminal services, etc., are separated from each other, and the service separation is becoming more and more detailed. At present, there are hundreds of services. At this time, more netease cloud services began to be connected, such as search, anti-spam, message queue.

For e-commerce, traditional e-commerce promotion such as “6.18” and “11.11” will bring great challenges to the system. Koala also has a lot of experience in dealing with high concurrency practices, such as developing refined 4 principles of system stability:

  • Don’t trust any development

This means always keep the old version, and if the new version finds a problem, make sure you can always roll back to the old version that works.

  • Don’t trust any tests

No matter how you test it offline, it can still go wrong online. So we need to do grayscale release, the new version is first open to a small number of users for real testing, and then open to all users.

  • Don’t trust any apps

Any application can crash, and service downgrades and traffic limiting are necessary to keep the core business available.

  • Don’t trust any hardware

Services are deployed across equipment rooms for Dr.

Koalas also have a lot of experience with high-concurrency scenarios. A few of the more important ones are:

  • Asynchronize some processes

For example, payment declaration, coupon distribution, order notification can be made asynchronous, which can reduce the pressure on some modules when high concurrency. Kaola uses the message queue service of netease Cloud to ensure that the message sent will be delivered.

  • Cache statics

When promoting activities, the home page, product details page and activity landing page need to be static and put into the cache to cope with massive access requests within a short period of time.

E-commerce platforms also attach great importance to security, such as brushing, DDoS attacks, H5 hijacking and so on. To cope with these challenges, Kaola chooses netease Cloud Security (ESHIELD) products for second kill anti-brush, H5 anti-hijacking, DSLR garbage, active anti-garbage, high-frequency request interception, anti-ddos attack, etc., providing comprehensive security guarantee for Kaola applications.

In addition, with the rise of live streaming, Kaola also began to have some live streaming shopping activities. Kaola chose netease Cloud communication and video services, and it only took a few days to make a simple connection and immediately provide live streaming video services to attract users.

Also, another problem with the increasing number of users is the increased pressure on customer service. Although Kaola has a customer service team of hundreds of people, it is still under overload, especially before and after some big promotion activities, almost need to work all night to deal with user inquiries. Kaola adopts qiyu intelligent customer service of netease Cloud. A large number of common questions are answered by customer service robots, which greatly saves the time and energy of human customer service.

From its establishment to its growth as a cross-border e-commerce platform with the largest import sales volume in China, Kaola has encountered various technical challenges. The ability of the technical team to quickly adjust the system architecture according to the business situation is a very important guarantee for Kaola to easily cope with the system pressure brought by the growth of various businesses. On the other hand, the technical team makes good use of the existing cloud services instead of developing all the services themselves, which not only saves the cost of development, but also avoids the cost of operation and maintenance, so as to have more energy to polish the business system, meet the needs of the business better and faster, and promote the development of the business.



Understand netease Cloud:

The official website of netease Cloud is www.163yun.com/

New user package: www.163yun.com/gift

Netease Cloud community: sq.163yun.com/