Khởi tạo "MangaWith" với GCP. Kiến thức về cơ sở hạ tầng tiên tiến là bước đầu tư lớn cho tương lai

GameWith, Inc. Logo
Anh Murata Tomoyoshi, thuộc Ban điều hành của GameWith Co., Ltd. (trái), anh Noguchi Yaguchi, nhân viên Phòng Phát triển Dịch vụ (giữa) và anh Taguchi Wataru, nhân viên Phòng Phát triển Dịch vụ (phải)
Anh Murata Tomoyoshi, thuộc Ban điều hành của GameWith Co., Ltd. (trái), anh Noguchi Yaguchi, nhân viên Phòng Phát triển Dịch vụ (giữa) và anh Taguchi Wataru, nhân viên Phòng Phát triển Dịch vụ (phải)

GameWith Co., Ltd. là nhà điều hành của “GameWith” - trang thông tin về ứng dụng trò chơi lớn nhất tại Nhật Bản. Công ty đã lên sàn chứng khoán Tokyo vào năm 2017.

GameWith hiện đang thu hút nhiều sự chú ý vì là một trong những công ty có tốc độ tăng trưởng cao nhất. Trong tương lai, bí quyết truyền thông mà công ty tích lũy không chỉ giới hạn phát triển trong thị trường nội địa, mà còn được thúc đẩy mở rộng ra nước ngoài, chủ yếu ở các quốc gia nói tiếng Anh và Đài Loan. Hơn nữa, để đối phó với những thay đổi của thị trường như sự phát triển trò chơi blockchain sử dụng công nghệ blockchain, hay sự xuất hiện của các đội thể thao điện tử (electronic sport) v.v., GameWith đang thử thách chính mình trong nhiều thể loại khác nhau để trở thành công ty dẫn đầu trong ngành công nghiệp trò chơi.

Vào tháng 12 năm 2018, công ty đã phát hành "MangaWith", một trang web manga dành cho điện thoại thông minh. Cùng với các nhà xuất bản lớn, nó cung cấp hơn 150.000 truyện tranh điện tử. GCP (Google Cloud Platform) là nền tảng hỗ trợ xây dựng "MangaWith" này.

Anh Murata Tomoyoshi, thành viên Ban điều hành kiêm nhà sáng lập "MangaWith", cùng anh Noguchi Yaguchi và anh Taguchi Wataru, nhân viên Phòng Phát triển Dịch vụ, đã chia sẻ về quá trình sử dụng và lợi ích mà GCP đem lại, cũng như mối quan hệ hợp tác với Cloud Ace.

Lí do sử dụng GCP

Nhân viên phòng Phát triển Dịch vụ, anh Noguchi Yaguchi
Nhân viên phòng Phát triển Dịch vụ, anh Noguchi Yaguchi

Anh Noguchi: Chúng tôi có 2 mảng truyền thông trong hoạt động kinh doanh, tương ứng với việc phát triển hai trang web truyền thông là “GameWith” và “MangaWith”. Tuy nhiên, “GameWith” sử dụng AWS (Amazon Web Services), còn “MangaWith” sử dụng GCP.

Chúng tôi tìm đến GCP là vì kiến thức AWS được sử dụng trong "GameWith" đã được tích lũy đủ để chúng tôi lấy đó làm nền tảng nội bộ cho việc bắt đầu sử dụng GCP, do đó dịch vụ mới đã được ra mắt với GCP vào năm 2018. Chúng tôi nghĩ những kiến thức về GCP mà không hề liên quan đến AWS có thể được tích lũy bằng cách sử dụng GCP. Do đó, chúng tôi đã bắt đầu “GCP đang có sẵn” mà không hề đắn đo.

Anh Taguchi: Trong tương lai, khi phát triển các sản phẩm dịch vụ đa dạng hơn, chúng tôi cần phải chọn dịch vụ điện toán phù hợp với sản phẩm đó. Một công ty chỉ có kiến thức về AWS và chỉ dùng được AWS thì sẽ gặp bất lợi trong tương lai. Mục đích chúng tôi quyết định thử thách với GCP lần này là để tự tạo cho chúng tôi thêm một chọn lựa, bên cạnh AWS.

Anh Murata: Chúng tôi hiện đang chuẩn bị để thêm tính năng mới cho các dịch vụ chúng tôi cung cấp. "MangaWith" là sản phẩm thử nghiệm. Thêm vào đó, việc mở rộng các lựa chọn nền tảng sẽ giúp chúng tôi hạn chế rủi ro có thể xảy ra.

Cấu hình hệ thống GCP của ”MangaWith”

Anh Noguchi: "MangaWith" ra mắt vào tháng 12 năm 2018. Việc phát triển “MangaWith" đã bắt đầu vào tháng 6 cùng năm. Vì chỉ có nửa năm để tiến hành, nên tôi hơi bất an về schedule, nhưng dựa trên kinh nghiệm tích lũy đến nay thông qua việc sử dụng AWS, không quá khó để chúng tôi phán đoán “Đến đây là sắp xong rồi". Tuy nhiên, vì chúng tôi chưa có kinh nghiệm thực hành với GCP, nên khó dự đoán và ban đầu tôi đã khá lúng túng.

Anh Murata: Quá trình phát triển “MangaWith" được tính toán với 2,5 kỹ sư làm việc trong vòng một tháng. Cùng với bên lập kế hoạch gồm có tôi và một người nữa, tổng cộng có 4,5 người đã cùng làm việc này.

Anh Noguchi: Kiến trúc được xác định là GCP, nhưng vấn đề là nên áp dụng GAE (Google App Engine) hay GKE (Google Kubernetes Engine)? Vì tính năng của dịch vụ manga là khả năng truy cập đạt mức cao nhất vào ban đêm và ban sáng, chúng tôi đã chọn GKE để xem xét tốc độ mở rộng ở mức độ tập trung.

Ngoài ra, vì cần phải mã hóa manga, nên có rất nhiều sự hợp tác từ bên ngoài, vì thế cần thiết có một môi trường được chuẩn bị để thu thập mã nguồn mật mã từ bên ngoài. Khả năng dễ dàng kết nối mềm dẻo giữa môi trường của "MangaWith" và môi trường tiếp nhận từ bên ngoài, cũng là thế mạnh của GKE.

Anh Murata: Chúng tôi cần phải lấy được dữ liệu mã hóa thông qua liên kết với không chỉ các nhà xuất bản mà còn cả các công ty trung gian, v.v. Ngoài ra, khi phân phối truyện tranh chúng tôi cũng cần hợp tác với một công ty cung cấp giải pháp mã hóa. Có thể thấy, chúng tôi có nhiều đơn vị hợp tác khác nhau. Lúc đầu tôi không nghĩ GKE có lợi thế, nhưng sau khi áp dụng thì nó mang lại nhiều lợi ích đáng kể.

Anh Noguchi: Vì từ giờ trở đi những trường hợp tương tự có khả năng cao sẽ diễn ra, có kinh nghiệm GKE là điều tốt, nhưng thực chất khá khó khăn để áp dụng nó. Do tài liệu hướng dẫn và tham khảo còn ít, tôi đã xây dựng “MangaWith" bằng cách tìm kiếm từ GitHub và tìm hiểu những thực tiễn đã diễn ra một cách độc lập.

Ngoài ra, do tính chất của dịch vụ, có nhiều phần yêu cầu IP cố định, nên việc vừa nhận thức quy mô vừa tiến hành xây dựng sẽ mất nhiều công sức. Trong GKE được chia làm hai phần, những phần cần IP cố định và những phần không. Những phần cần IP cố định có phạm vi tỷ lệ nhất định, nên chúng tôi xây dựng sao cho dù có bất thường xảy ra thì hệ thống cũng không bị ngừng lại. Những phần không cần IP cố định dù có giới hạn nhưng được thiết kế sao cho tương đối dễ dàng mở rộng quy mô.

Anh Taguchi: Đối với ảnh bìa và dữ liệu hình ảnh manga, chúng tôi sử dụng dịch vụ giải pháp đám mây có tên Google Cloud Storage (GCS). Ngoài ra, chúng tôi cũng dùng khoảng 10 sản phẩm GCP, bao gồm Cloud Memorystore, BigQuery, CloudBuild, v.v.

Sơ đồ cấu hình hệ thống “MangaWith” GCP
Sơ đồ cấu hình hệ thống “MangaWith” GCP

Kết quả sử dụng GCP

Anh Noguchi: Khi "MangaWith" được phát hành, lượng truy cập đã tăng vọt ngay lập tức nhờ quảng cáo qua phương tiện truyền thông và hiệu ứng khuếch tán của các Youtuber. Thật tuyệt khi mở rộng phạm vi và vận hành nó một cách ổn định.

Ngoài ra, như tôi đã nói trước đó, hệ thống có rất nhiều sự liên kết bên ngoài, vì vậy đó là một lợi thế lớn để có thể phát triển trong khi kết nối mềm dẻo. Các dịch vụ của GCP về cơ bản có thể truy cập bằng API, do đó, thật dễ dàng để mã hóa nhanh chóng.

Anh Taguchi: Tôi đã chuẩn bị một số môi trường thử nghiệm, nhưng cho đến giờ tôi không thể xây dựng mã nguồn tự do trên các môi trường đó.

Anh Noguchi: Bạn có thể nhanh chóng triển khai các nhánh tùy ý trong môi trường phát triển. Vì các chức năng như vậy được cung cấp bởi API và SDK, nên việc thao tác dễ dàng với nguồn tài nguyên là lợi thế lớn.

Anh Murata: Như hai cộng sự của tôi lo ngại, vì là lần đầu tiên tiếp xúc với GCP, chúng tôi có thể sẽ lúng túng vì không thể nắm bắt được schedule cũng như ước lượng công sức bỏ ra cho việc phát triển những phần mà chúng tôi đã có nhiều kinh nghiệm thực hiện. Tuy nhiên, tôi cho rằng từ giờ trở đi, chỉ cần kiến thức và kinh nghiệm được tích lũy thì việc sử dụng GCP sẽ suôn sẻ và nhanh chóng hơn. Vì vậy, đây là một thách thức tốt, vì tôi tin dòng chảy kiến thức mới sẽ được tích lũy trong nội bộ đúng như mục tiêu ban đầu, và sử dụng kiến thức đó để thiết lập các sản phẩm mới một cách vững chắc.

Cloud Ace hỗ trợ xây dựng GCP nhanh chóng

Anh Noguchi: Tôi đã chọn Cloud Ace vì tôi được nghe từ một kỹ sư cơ sở hạ tầng mà tôi quen biết nói rằng Cloud Ace phản hồi khách hàng rất nhanh. Vào thời điểm quyết định dùng đám mây, tôi đã xem xét Cloud Ace và một công ty khác, nhưng khi tôi liên lạc, Cloud Ace phản hồi chúng tôi với tốc độ chóng mặt. Tốc độ phản hồi là một yếu tố rất quan trọng tại thời điểm đó vì chúng tôi đã không có nhiều thời gian cho schedule phát triển. Ngoài ra, Cloud Ace còn tạo một nhóm hội thoại để hỗ trợ phát triển, các câu hỏi được trả lời một cách lịch sự và vô cùng nhanh chóng, chỉ mất vài giờ, thậm chí vài phút. Vì vậy tôi cảm thấy rất tin tưởng Cloud Ace.

Lần này, chúng tôi đã nhận được hỗ trợ từ các kỹ sư máy chủ (Server side engineer), kỹ sư đầu cuối và kỹ sư cơ sở hạ tầng của Cloud Ace. Vì thời gian phát triển khá gấp rút, nên chúng tôi đã yêu cầu Cloud Ace hỗ trợ phát triển các bộ phận của AI, xây dựng môi trường dàn dựng và sản xuất, cũng như đảm bảo an ninh cho dịch vụ manga. Đặc biệt, việc tạo ra một môi trường dàn dựng là thế mạnh lớn của Cloud Ace làm tôi rất yên tâm. Ngoài ra, Cloud Ace còn hỗ trợ nền tảng Kubernetes mà chúng tôi đã phát triển.

Cloud Ace đã giúp chúng tôi rất nhiều, cũng như hỗ trợ phát triển môi trường thực tế và tư vấn chi tiết về việc sử dụng GCP. Hơn thế, phạm vi tư vấn được mở rộng và tốc độ trả lời nhanh chóng cho dù đó là những thảo luận tiểu tiết, chẳng hạn như “Khi triển khai, nếu trang lỗi phát sinh trong giây lát thì cần xử lý như thế nào?”. Chúng tôi rất cảm kích trước sự hỗ trợ của Cloud Ace.

Dự định sử dụng GCP

Ông Noguchi: Tôi muốn cải thiện phần CD từ bây giờ. Tôi có thể thực hiện tự động hóa, nhưng tôi muốn bao gồm Spinnaker để dịch vụ có thể được phản ánh ổn định hơn. Ngoài ra, GCP Cloud NAT đã được phát hành ngay trước khi phát hành "MangaWith", vì vậy tôi không thể sử dụng nó lần này, vì vậy tôi muốn sử dụng nó từ bây giờ.

Hiện tại, chỉ có thể sử dụng phần cơ bản, vì vậy nó chiếm khoảng 50% tất cả các chức năng. Tôi muốn thử nhiều hơn trong tương lai.

Anh Taguchi: Tôi đang tạo ra một Firebase giúp cho việc phát triển "MangaWith" thuận tiện hơn, vì giới hạn địa chỉ IP gây ra một chút khó khăn nên tôi muốn phát triển “MangaWith" bằng Firebase.

Anh Murata: "MangaWith" được khai sinh nhằm tạo ra IP mới, bằng cách tận dụng tài nguyên của "GameWith" nơi tập hợp rất nhiều người dùng tham gia game. Game và manga rất tương thích, và đã có không ít sự hợp tác biến manga trở thành game. Hiện tại, manga được liên kết với các nhà xuất bản lớn và khoảng 150.000 bản manga đang được phát hành trên thị trường. Chúng tôi cũng có kế hoạch tăng cường quảng bá cùng với các công ty game. Nhưng vì là một dịch vụ vừa được ra mắt và còn nhiều vướng mắc cần được giải quyết, nên trước hết chúng tôi muốn làm hết sức mình để phát triển ổn định “MangaWith" rồi mới tính đến những kế hoạch tiếp theo.

Đâ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: 「MangaWith」を GCP で初構築。新たなインフラナレッジは未来への大きな投資。