Cách AhaChat xử lý hơn 40.000 yêu cầu mỗi giây với Google Cloud
Xử lý webhook là một trong những kỹ thuật chính của nền tảng. Để giải quyết vấn đề này, AhaChat thay đổi kiến trúc xử lý sang hệ thống phân tán của Google Cloud Platform.
AhaChat là gì
AhaChat là một nền tảng chatbot giúp các doanh nghiệp giao tiếp với khách hàng của họ thông qua các cuộc trò chuyện trên Facebook, Zalo và Google. Webhook là một trong những phần quan trọng của AhaChat vì thông qua đó, các doanh nghiệp giao tiếp với khách hàng. Và họ giao tiếp rất nhiều, bằng chứng là các doanh nghiệp gửi hàng trăm triệu tin nhắn cho khách hàng của họ mỗi tháng.
Hầu hết các tin nhắn được gửi qua Facebook Messenger đều thông qua 1 API. Khi một khách hàng viết tin nhắn để đặt bánh pizza, Facebook sẽ gửi một webhook đến AhaChat. Nền tảng xử lý nó, gửi lại yêu cầu và người dùng nhận được tin nhắn. Do API chậm, một số yêu cầu mất vài giây. Nhưng khi nền tảng này không phản hồi trong một thời gian dài, doanh nghiệp sẽ mất khách hàng và Facebook có thể vô hiệu hóa ứng dụng khỏi webhooks.
Do đó, xử lý webhook là một trong những nhiệm vụ kỹ thuật chính của nền tảng. Để giải quyết vấn đề, trong 5 năm làm việc, AhaChat đã thay đổi kiến trúc xử lý nhiều lần từ những server đơn giản sang một hệ thống phân tán của Google Cloud Platform.
Từ phía khách hàng, chatbot sẽ trông như thế này.
Đây là giao diện Facebook Messenger. Ngoài tin nhắn văn bản, bạn có thể gửi các yếu tố tương tác trong đó để tương tác với khách hàng, tham gia đối thoại, tăng sự quan tâm đến sản phẩm của bạn và bán hàng.
Từ phía doanh nghiệp, mọi thứ trông rất khác. Đây là giao diện của ứng dụng web của AhaChat, nơi các đại diện doanh nghiệp tạo và lập trình các kịch bản đối thoại bằng giao diện trực quan.
Doanh nghiệp sử dụng một ứng dụng web để thiết lập logic bot. Khi một khách hàng tương tác với bot qua điện thoại, Facebook sẽ nhận được thông tin về nó và gửi cho AhaChat một webhook. AhaChat xử lý nó, tùy thuộc vào logic được lập trình bởi doanh nghiệp và gửi lại yêu cầu. Tiếp theo, Facebook chuyển thông điệp đến điện thoại của người dùng.
Tất cả điều này diễn ra trên một ngăn xếp công nghệ khiêm tốn. Cốt lõi là PHP, máy chủ web là Nginx, cơ sở dữ liệu chính là PostgreSQL, ngoài ra còn có Redis và Elasticsearch.
Webhook là phần quan trọng nhất của hệ thống. Thông qua chúng, doanh nghiệp giao tiếp với người dùng. Nếu tin nhắn chậm hoặc không được gửi đi, thì người dùng từ chối tương tác với bot và doanh nghiệp sẽ mất khách hàng.
Những gì AhaChat đã làm
Rút kinh nghiệm trong quá khứ, AhaChat biết rằng Google Cloud Platform sẽ là giải pháp cơ sở hạ tầng tốt nhất cho những gì mà nó đang hỗ trợ. Để triển khai, công ty đã hợp tác với các chuyên gia từ Cloud Ace , để tư vấn về quy trình kỹ thuật và giúp quyết định chính xác sản phẩm nào sẽ sử dụng của Google. Cốt lõi của nền tảng được xây dựng bằng Google App Engine để đảm bảo tăng và giảm quy mô nhanh chóng, mạnh mẽ. Trong khi cân bằng tải trên đám mây của Google đảm bảo dịch vụ thông suốt. AhaChat cũng đã sử dụng Google BigQuery, Cloud SQL để xử lý các tính toán của mình và Google Cloud CDN để cung cấp các tệp ảnh và video lớn mà không gặp rắc rối.
"Với tư cách là Google Premier Partner và Managed Service Provider đầu tiên tại Việt Nam, chúng tôi cam kết sẽ đáp ứng được mọi nhu cầu của khách hàng. Bao gồm thiết kế hệ thống hay các giải pháp về Cloud sử dụng những công nghệ tiên tiến nhất", anh Tuyên Phạm - CEO Cloud Ace nói.
Chị Tỵ Nguyễn, CEO và Co-Founder của AhaChat, cho biết: "AhaChat là một ví dụ điển hình về việc công ty đặt trọng tâm lớn vào sản phẩm, dịch vụ và để hạ tầng cho đội ngũ Cloud Ace. Sự xuất sắc về kỹ thuật của họ sẽ không làm ảnh hưởng tới trải nghiệm sử dụng của khách hàng chúng tôi."
Kết quả
Với Google Cloud Platform làm cốt lõi và dưới sự hướng dẫn của Cloud Ace, AhaChat đã xây dựng một nền tảng phát triển và mở rộng trong một môi trường kinh doanh đầy thách thức hiện nay. Tốc độ và khả năng mở rộng của Google App Engine cho phép công ty phát triển nhanh chóng và giành được lợi thế so với các đối thủ cạnh tranh. Quan trọng hơn, tính dễ sử dụng và độ tin cậy của Cloud Ace giúp nhóm IT của AhaChat có thể tập trung vào việc gia tăng giá trị cho khách hàng thay vì dành thời gian và tiền bạc cho việc bảo trì cơ sở hạ tầng. Vì AhaChat muốn mở rộng hoạt động kinh doanh của mình hơn nữa cũng như phát triển đội ngũ, nên AhaChat luôn tìm cách cải thiện nền tảng. Cho dù đó là thử nghiệm nâng cấp phiên bản PHP cho Google App Engine hay khám phá Machine Learning và AI Tools của Google Cloud Platform.