GCP cung cấp một môi trường tối ưu để microservice hóa hệ thống và giải quyết tình trạng tăng lưu lượng truy cập trang web

VELTRA Corporation Logo

VELTRA Corporation (sau đây gọi là VELTRA) đang vận hành một trang web đặt tour với hơn 14.000 lựa chọn du lịch bản địa tại 150 quốc gia trên thế giới.

Trang web của VELTRA cung cấp vô số tour du lịch như tour tham quan, khám phá di sản thế giới, thể thao dưới nước, lặn biển, chơi golf, spa và làm đẹp, dùng bữa trên du thuyền, xem show trình diễn v.v. Du khách có thể trải nghiệm bản sắc địa phương đa dạng cùng những thắng cảnh thiên nhiên, đặc trưng văn hóa và con người ở nhiều nơi trên thế giới.

Lần này, chúng tôi đã phỏng vấn ông Matsuo Naoyuki (Phó Chủ tịch Công nghệ) của VELTRA về bối cảnh áp dụng Google Cloud Platform (GCP).

Ông Matsuo Naoyuki của VELTRA Corporation
Ông Matsuo Naoyuki của VELTRA Corporation

Thách thức

Hệ thống hiện tại của chúng tôi được vận hành từ năm 2012, và có một thách thức tồn tại là chúng tôi không thể cấu trúc hóa nó dưới dạng microservice (chia nhỏ ứng dụng lớn thành các dịch vụ nhỏ kết nối với nhau). Vì thế, chúng tôi kỳ vọng hệ thống mới có thể vận hành một cách nhanh chóng và linh hoạt khi chỉnh sửa hoặc thay đổi bất kỳ đơn vị nào trong hệ thống.

Hơn nữa, VELTRA hiện đang cung cấp nhiều lựa chọn du lịch và ngày càng mở rộng phạm vi, nên nguy cơ quá tải do gia tăng lưu lượng cần được xử lý triệt để. Chúng tôi phải xây dựng một hệ thống có khả năng giải quyết hai vấn đề trên, bằng cách sử dụng AWS hiện hành hay áp dụng mới GCP. Chúng tôi đã cân nhắc cả hai phương án và nhận thấy GCP tương thích hơn, có tích hợp Google Translate API và Google Maps API mà chúng tôi muốn sử dụng, vì thế chúng tôi đã quyết định áp dụng GCP.

Bối cảnh áp dụng GCP

Quá trình phát triển của hệ thống mới mất khoảng nửa năm. Mặc dù quyết định áp dụng GCP, nhưng nội bộ công ty chúng tôi không có kỹ sư nào có kiến thức về GCP, nên chúng tôi đã liên lạc với Cloud Ace, nhà cung cấp dịch vụ GCP có thể hỗ trợ chúng tôi phát triển, vận hành hệ thống mới.

Chúng tôi đã nhờ Cloud Ace phát triển bộ phận xử lý điểm thưởng của khách hàng hiện hữu cả trong hệ thống mới.

Phương pháp xử lý

Chúng tôi đã trích xuất component xử lý điểm thưởng của khách hàng trong hệ thống hiện tại dưới dạng API và tiến hành microservice hóa. Khi trích xuất từng dịch vụ riêng biệt, chúng tôi đã xem xét tốc độ thực hiện và quyết định chọn Go, ngôn ngữ được đánh giá tương đối nhanh.

Để giải quyết yêu cầu đáp ứng được sự gia tăng lưu lượng, chúng tôi đã sử dụng Google App Engine (GAE) và Firestore (Datastore Mode) như môi trường thực thi. Đây là các dịch vụ quản lý có khả năng auto-scale (tự động thay đổi quy mô) cho phù hợp với computing và database (máy ảo và cơ sở dữ liệu). Bên cạnh đó, chúng tôi cũng thúc đẩy vận hành nhanh hơn bằng cách tự động hóa triển khai (deploy) sang GAE bằng CloudBuild.

Hiệu quả sử dụng GCP

VELTRA không có nhiều kiến thức về GCP, nhưng nhờ sự hỗ trợ của Cloud Ace, chúng tôi đã có thể hoàn thành nhiệm vụ phát triển hệ thống mới theo đúng kế hoạch.

Một hiệu quả đáng kể nữa mà chúng tôi có được đó là nhân viên trong nội bộ công ty chúng tôi có thêm nhiều hiểu biết khác chứ không chỉ riêng về AWS.

Sản phẩm đã sử dụng

  • Google App Engine Go
  • Firestore (Datastore Mode)
  • Google Cloud Build
Đây là bản dịch của một bài báo được xuất bản bởi Cloud Ace, Inc.Có sẵn trực tuyến: GCP は、システムのマイクロサービス化や、 ウェブサイトのトラフィックの増加解決に、最適な環境を提供してくれました。