コンテナプラットフォームからマイクロサービスアーキテクチャまで、Dangdang.comのクラウドネイティブへの旅

コンテナプラットフォームからマイクロサービスアーキテクチャまで、Dangdang.comのクラウドネイティブへの旅

Dangdang.com は、書籍、電子書籍、オーディオブック、衣料品、デパートなどのカテゴリーを網羅する世界的に有名な総合オンライン ショッピング モールです。デジタル化が社会経済発展のトレンドとなっている中、電子商取引業界もデジタル化を原動力とした刷新を加速させ、販売コンテンツ、ソーシャルモデル、消費者体験を総合的にアップグレードしています。同時に、突発的な渋滞への対応や新規事業の急速な立ち上げといったニーズにも対応する必要があります。信頼性、拡張性、パフォーマンスに優れた IT アーキテクチャが必須となっています。

最近、記者はDangdang.comのクラウドネイティブ実験室の責任者であるLi Zhiwei氏にインタビューし、近年のDangdang.comのデジタル変革を振り返りました。

[[426177]]
Dangdang.com のクラウドネイティブ研究所の責任者、Li Zhiwei 氏

Kubernetesに足を踏み入れてクラウドネイティブの旅を始めましょう

過去数年間、Dangdang のビジネスのほとんどは物理マシン上で実行されており、運用と保守の自動化レベルは低く、システム アーキテクチャは多様で複雑であり、コンピューティング リソースの使用率は 20% 未満でした。トラフィックが急増すると、水平方向の拡張や移行が非常に難しくなります。同時に、歴史的な理由により、Dangdang.com には多くの古いサービスがあり、それらを新しいプラットフォームにスムーズに移行する必要があります。

当時の状況を踏まえ、Dangdang.com はまず独自のプライベート クラウド プラットフォームを構築し、段階的に変革を進めていく必要があると考えました。しかし、Kubernetes プラットフォームに触れてから、Dangdang.com はコンテナ クラウド プラットフォームに直接参入できると考えました。

Kubernetes は、マイクロサービス アーキテクチャに最適なオペレーティング プラットフォームの 1 つです。 Dangdang.com の既存ビジネスがマイクロサービス アーキテクチャの概念に従って完全に変革されるには、数年程度かかります。 Dangdang.comは最終的に、既存のアプリケーション基盤をベースにスムーズな移行を行い、約半年ですべての業務を移行することを決定しました。最初のステップは、Kubernetes を使用して、可用性が高く、高度に自動化された運用および保守プラットフォーム、つまり効率的なサービス オーケストレーション プラットフォームを実装することでした。

事実が証明しているのは、Kubernetes が Dangdang.com の研究開発プロセスを真に変え、単一のビルドを複数のオペレーティング環境で実行できることを真に実現したということです。 Kubernetes は Borg のアーキテクチャコンセプトを踏襲し、既存のシステムアーキテクチャ設計を標準化し、自動化された運用と保守を実現します。さらに、Kubernetes を使用すると、クラウド ベンダーにロックインされることがなくなり、異なるサービス プロバイダー間で迅速に移行できるようになります。

Kubernetes には多くの利点がありますが、開発者がそれを使用するためのハードルは非常に高いです。当初、Dangdang.com は Jenkins、Helm、Chart を使用して CI/CD プロセスを簡素化していましたが、構成と運用保守管理は依然として複雑でした。開発者は、コンテナの構築とスケーリングだけでなく、トラフィック制御の実装の詳細にも注意を払う必要があります。開発、運用、保守管理の複雑さを解決するために、シンプルで効果的なサービス オーケストレーション標準が緊急に必要とされています。さらに、Kubernetes 自体では、あまり使用されないサービスによるリソースの占有の問題を解決できません。ほとんど使用されないにもかかわらず、CPU やメモリ リソースを占有するサービスやジョブが依然として多数存在し、その結果、コンピューティング リソースの使用率が低くなっています。

Knative でサーバーレスが簡単に使える

クラウドネイティブ時代では、Kubernetes と Istio の導入により、マイクロサービスの開発と展開のための完全なソリューションが提供されますが、メンテナンスの複雑さも高まります。新世代のサーバーレス アーキテクチャ プラットフォームである Knative は、マイクロサービスの管理問題を解決するシンプルなソリューションを提供します。

サーバーレスとは​​、ステートレス コンピューティング コンテナーで実行される開発者によって実装されたビジネス ロジックを指します。これはイベントによってトリガーされ、サードパーティによって完全に管理されます。ビジネス レベルのステータスは、データベースやその他のストレージ リソースに保存されます。サーバーレスとは​​、サーバーが必要ないということではなく、開発者がサーバーの問題についてあまり心配する必要がないことを意味します。コンピューティング リソースは、サーバーではなくサービスとして表示されます。サーバーレスは、開発者がサーバー レベルではなくサービス レベルでアプリケーションの展開を管理できるようにする、マイクロサービス ベースのアーキテクチャを構築および管理するための完全なプロセスです。これにより、ソフトウェア開発の複雑さが大幅に軽減され、開発者は迅速に反復してソフトウェアをより迅速に開発できるようになります。

サーバーレスには、インフラストラクチャを管理する必要がない、従量課金制、イベント駆動型、ビルドとデプロイメントが自動化されるなどの利点があります。しかし、各メーカーのサーバーレス規格は統一されておらず、メーカー間でソフトウェアを移行することができません。客観的に見ると、ベンダー ロックインの問題があり、これがサーバーレスの開発を制限する主な要因です。このため、Google は Knative プロジェクトを立ち上げました。 Knative は、Kubernetes プラットフォームに基づいて Google が開始したサーバーレス オープンソース プロジェクトであり、サーバーレスのサービス管理、イベント駆動型、ビルド展開を標準化します。マネージド サービスとしてパブリック クラウドで実行できるだけでなく、企業独自のデータ センターに展開することもできるため、マルチクラウド展開やベンダー ロックインの問題を効果的に解決できます。


インフラストラクチャとして、Kubernetes はアプリケーションのオーケストレーションと運用環境の問題を解決します。通信インフラストラクチャ層として、Isito はサービスの動作が検出可能、構成可能、追跡可能であることを保証できます。 Knative は、アプリケーション テンプレートと統合されたランタイム環境を使用して、サービスの構築、展開、管理を標準化します。

Knative は、Kubernetes と Istio の複雑さを抽象化して分離し、サービスの構築、展開、管理の面倒な手順を解決し、オープン スタンダードに基づいてサービスを移植可能にします。

Knative は、存在してからまだ 2 年以上しか経っていないオープン ソース プロジェクトであり、その機能は今も急速に進化し続けています。安全上の理由から、Dangdang.com は比較的成熟した Serving コンポーネントを選択し、比較的独立したビジネス モデルを持つ単一製品 API サービスに適用しました。

単一製品 API サービスは、Dangdang.com の基本プラットフォームにおける中核となる基本サービスの 1 つです。製品関連の一連の API サービスで構成されています。単一の製品 API は、関連するすべてのアップストリーム サービスに対して効率的で信頼性の高い基盤サービス サポートを提供します。

Dangdang.com は完全なオペレーティング環境を構築しました。まず、ユーザー コンテナに対応する Dockerfile を記述し、次に対応する Tekton タスク ファイルと taskrun ファイルを記述し、コードをビルドしてランタイム コンテナをパッケージ化してプライベート イメージ リポジトリにプッシュし、Knative service.yaml 構成ファイルを記述してデプロイメントを完了します。

運用および保守ツールに関しては、Knative は Kubernetes プラットフォーム上のソリューションを直接使用して、構築の重複を回避します。


テスト結果によると、ネイティブ Kubernetes デプロイメント ソリューションと比較して、Knative の導入により 27 ミリ秒のレイテンシと 10% の TPS 損失が発生しました。

Knative Serving はゼロへのスケールダウンをサポートしており、低頻度アプリケーションのリソース使用量が大幅に改善されます。コールド スタート問題を解決するために、Dangdang.com は、リソース使用量とサービス応答遅延のバランスをとるために、最小限の数のサービス レプリカを保持する方法を採用しています。予測される高同時実行シナリオでは、突然の高同時実行リクエストによってリクエストのバックログが大量に発生するのを避けるために、サービスに必要なレプリカの予想される最小数を事前に設定できます。リソースの過剰割り当てを避けるために、サービスに必要なレプリカの最大数を事前に設定してください。各サービスの可用性を確保するために、サービスの各 POD の同時リクエストの最大数を設定します。

Dangdang.com の Knative アプリケーションの事例から、Knative がサーバーレス プラットフォームの標準化に大きな意義を持っていることがわかります。 Knative は幅広い開発の見通しがあり、将来的には主流のサーバーレス アーキテクチャ プラットフォームになると期待されています。同時に、Knative はまだ徐々に成熟しており、大規模なアプリケーションにはさらなる改善が必要です。

インタビュー対象者: Dangdang.com の Cloud Native Lab 責任者であり、『Knative in Action』の著者である Li Zhiwei 氏。彼は2016年にDangdang.comに入社し、デジタルビジネス製品ラインのテクニカルディレクター、アーキテクチャ部門およびクラウドネイティブラボの責任者を務めました。当社は、Dangdang プラットフォーム上でのクラウド ネイティブ テクノロジーの応用の促進と実装に取り​​組んでいます。 2018 年には、Dangdang Cloud Reading 製品ラインの完全なコンテナ化を実現し、Kubernetes プラットフォームの全体的なソリューション設計と実装を完了しました。

<<:  クラウドネイティブを採用したHuawei Cloud GaussDBは、金融業界のデジタル変革を支援します。

>>:  ファーウェイクラウド 洪方明:一緒にインテリジェントシティを構築し、都市をより温かくする

推薦する

2020年第1四半期の広告収益化市場の洞察と展望!

今年の第一四半期が終了しました。この特別な時期に、メディアの商業市場全体はどのような発展傾向を示して...

ブログマーケティングは衰退し、Weiboマーケティングは増加している

ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスブログが誕生した当初は、...

百度の最近の調整による百度のスパイダートラップを回避する方法についての簡単な説明

最近、多くのウェブサイトがスナップショットの更新を停止しています。私が所有する3つのウェブサイトのう...

タオバオの顧客運営がコンバージョン率の向上に注力すべき点について簡単に分析

タオバオは参入障壁が低いため、中小のウェブマスターに人気の運営モードとなっています。しかし、タオバオ...

WeChat StoresがTaobaoに挑戦:電子商取引へのアクセスには基準はないが、2万元のデポジットが必要

概要:WeChatパブリックプラットフォームは昨日、「WeChatストア」を正式に開始しました。We...

#超高防御VPS# トレドラー-年額10ドル/KVM/256mメモリ/5gSSD/無制限トラフィック/5コンピュータルーム

treudler.net は、最近設立されたばかりの小規模な新しい VPS ビジネスです。KVM ベ...

Java 仮想マシンのメモリに関する 4 つの質問?

JVM のメモリ領域はどのように分割されていますか? JVM のメモリ領域では、一部の領域はスレッド...

SEOトレーニングは疑問視され、反映される:SEO思考の技術を養うことが鍵となる

現在、インターネット上ではさまざまな SEO トレーニングが提供されています。しかし、全体的に見ると...

ライブストリーミングはソーシャルeコマースの安全な避難所に過ぎない

トラフィックと資本配当のピークにより、ソーシャル e コマースの進化は避けられなくなりました。ライブ...

supportby: ベラルーシのホスティングプロバイダー。安価なベラルーシのVPS +専用サーバーを提供

support.by は 2004 年に設立され、15 年以上の歴史を持つベラルーシのホスティング会...

百度珠光:1つのウェブサイト+1つの電話検索マーケティングの敷居は低い

記者は百度のマーケティング・広報担当シニアディレクターの朱光氏にインタビューした。今年3月、Goog...

AIの未来はエッジにある

モノのインターネット (IoT) は、絶えず複製されるエンティティのネットワークのようなもので、これ...

Hostslim xen vps 新年特別オファー 1Gメモリ25%オフ 月額4ドル未満

Hostslim は 2009 年に設立された IDC で、会社登録番号は 52966887 です。...

O2Oの新たな変化:共同購入から地域生活サービスへ

数十年にわたる発展を経て、中国の地方生活サービス産業(特に外食産業)は、モバイルインターネットを全面...

ウェブマスターは、ユーザーがどのようなウェブサイトデザインを必要としているかを考える必要がある

ユーザーはウェブサイト運営の中核システムです。大手検索エンジンのアルゴリズムに対する厳しい要求により...