Exclusive interview with Udesk CTO Xiao Lipeng: Enterprise-level customer service system architecture under the cloud platform

Exclusive interview with Udesk CTO Xiao Lipeng: Enterprise-level customer service system architecture under the cloud platform

[[152876]]

With the development of mobile Internet, the cloud service model of enterprise-level customer service has gradually been accepted by users, and many entrepreneurs have focused on the customer service field. Startups established in recent years are the backbone of this industry.

51CTO interviewed Xiao Lipeng, CTO of Udesk, a leading intelligent customer service platform in China, to share the enterprise-level customer service system architecture under the cloud platform.

Reporter: Could you please tell us about your previous work experience?

Xiao Lipeng : Before joining Udesk, I worked in Tencent Infrastructure Department, engaged in distributed system architecture development. The department provides a variety of products for Tencent Cloud, involving the network layer, logic layer and storage layer. The CKV platform alone operates more than 8,000 machines, so I have a comprehensive understanding of cloud platform architecture operations.

Reporter : Why did you leave Tencent and start Udesk?

Xiao Lipeng : When I was working at Tencent Cloud, I participated in projects such as Didi Taxi and WeChat Pay. Our team provided a lot of underlying architecture services for them. I found that many companies are good at business but lack strength in many vertical fields. If they can focus on business, their success rate will be higher and costs will be greatly reduced. At this time, our CEO Yu Haoran saw that mobile and social networking had created new demands in the customer service field, and COO Cheng Junlai had rich experience in product operations for enterprise services. We came together like this, and we hope that Udesk can help enterprises create first-class customer service.

Reporter : Could you please share the technical architecture of Udesk?

Xiao Lipeng : The first version of Udesk took into account horizontal expansion and disaster recovery switching, and supported hot and cold backup. Users can safely host customer service to Udesk.

At the access layer, LVS is used, and multiple stateless logical servers are connected to the back end, which can be increased or decreased at any time according to concurrency requirements.

In the logic layer, the front end uses Ember.js to make single pages, and the back end uses Ruby On Rails to provide APIs.

For the data layer, Redis is used for cache, the database is Sharding of RDS (MySQL), and Qiniu is used for object storage.

Basic components include instant messaging, search, email, etc., which provide independent and reliable services to the business layer.

Operation system, cloud monitoring management resources and service health, build open source ELK as a log service, and use New Relic for application performance management.

Reporter: Which aspect do you value most when designing system architecture? How do you do it?

Xiao Lipeng: We attach great importance to data persistence, service availability and information security. We will make the most of cloud services and do our own reinforcement. RDS is a name service plus a master-slave instance. It also has a 7-day mirror and streaming cold standby. Single machine failures can be automatically switched, and dual machine failures can be quickly recovered using cold standby. Availability is guaranteed by redundant design and a complete monitoring system. Information security requires timely follow-up of newly announced vulnerabilities and system upgrades, cooperation with security companies, and standardization of internal processes.

In addition, we also improve development and operation efficiency through Microservices design and automation.

Reporter: How does Udesk implement data isolation?

Xiao Lipeng: Data isolation is divided into two parts. One is that data is not accessed without authorization, and the other is that there is no cross-influence between users.

Udesk uses a multi-tenant architecture to isolate data between users. Each row of data has a unique owner, and strict permission control is performed at the code level. To avoid cross-influence, it is necessary to combine design and operation. For example, if a user uploads a large file, we will put this data in the object storage. This file is directly transferred to the object storage service through the browser, and will not penetrate our logical server, thus avoiding the impact on other users.

Reporter: How does Udesk do disaster recovery and backup?

Xiao Lipeng: We use a stateless design at the logic layer. Faulty machines can be directly removed, and servers will be across availability zones, so that even if a single IDC fails, Udesk is still available. We store files on Qiniu, which supports three copies of data distributed to multiple IDCs, thus ensuring high reliability and high availability of data. The database uses RDS, name service plus master-slave mechanism, automatic switching in the event of a single machine failure, and no user perception. At the same time, data will be synchronized to other availability zones in real time to achieve cross-IDC disaster recovery. Cold standby uses a mirroring and pipelining mechanism to support rollback at the minute level. In addition, cold standby data will be synchronized to an independent IaaS platform at regular intervals to achieve business recovery under extreme disasters.

Reporter: From the beginning of this year to now, many large Internet companies have encountered many problems with data security. How does Udesk do in terms of data management?

Xiao Lipeng: Data security can be divided into two dimensions: one is that data is not lost, and the other is that data is not leaked.

From the perspective of data loss prevention, Udesk data is redundantly protected and has mirrored streaming backup to improve data durability.

From the perspective of data leakage: First of all, it is technical guarantee. We need to clarify a misunderstanding about cloud services: technically, cloud services are safer than machine self-operation and maintenance. As long as the server is connected to the Internet, it is open to the outside world. Most business companies do not have the energy to prevent DDoS attacks and vulnerability attacks. Cloud service companies are more professional and motivated in terms of security. We will follow up on newly announced vulnerabilities and upgrade the system in a timely manner. The firewall only opens secure ports and restricts password login. At the same time, we cooperate with well-known domestic white hat companies to conduct third-party intrusion exercises from time to time. Through actual combat exercises, we train the team and improve the security of the system. Secondly, it is internal management guarantee. All managers of Udesk are from well-known IT companies, with good professional operation and confidentiality habits. At the same time, we have also formulated a strict confidentiality check and balance system.

Reporter : The era of mobile Internet requires rapid iteration and rapid launch, which is also the advantage of cloud platforms. How does Udesk take advantage of this?

Xiao Lipeng: Rapid iteration brings us closer to users. We can solve users' pain points and get their feedback as soon as possible, so as to continuously provide value to users. Rapid access is the biggest feature of SaaS. We eliminate deployment, maintenance, and training through cloud deployment and Internet-based interactive design, improve access efficiency, and truly allow enterprises to focus on building products.

summary

With the access to mobile Internet, the drawbacks of the single customer service channel of traditional enterprises have been gradually magnified. On the contrary, it is possible to feedback problems anytime and anywhere, track the progress of problem solving, comprehensively monitor the customer service operation status, optimize enterprise operation efficiency, and tap user needs. Low-cost, pay-as-you-go intelligent customer service is becoming a rigid demand. The SaaS model's flexible customization, deployment at any time, low cost and high efficiency make it the only choice for enterprises.

<<:  Should you try full stack as a programmer?

>>:  The situation has changed from "What if BAT copies you?" to "What if BAT doesn't invest in you?"

Recommend

9 models to teach you how to quickly master content marketing

This article summarizes the 9 major architecture ...

How old is the Earth?

Most Europeans before modern times believed that ...

The Chinese people’s “cosmic-level” romance must be seen one by one!

The sky is wider than the earth Wider than the sk...

Mobile and PC management: a difficult but unstoppable path to merger

[[124757]] Obviously, we only jump into a trend w...

Key skills to create high-quality notes on Xiaohongshu!

As an e-commerce recommendation platform that has...

Analysis of the planning of a single product live broadcast room

A classmate asked me about the gameplay of "...

Apple sells ads on the App Store, what does this mean?

How are Apple App Store’s default search ads made...

Xiaohongshu Operation Guide

Let’s take a look at how to achieve conversion ra...

60 lessons, zero-based course to improve competitiveness with PPT

I would like to recommend to you the PPT tutorial...