ポートシティーズxGojekは、毎日の取引の高いボリュームを処理するシステムを構築しました

Gojekの物流オペレーションを処理する3-in-1システムが、毎日数千件のトランザクションを処理する方法。
ポートシティズxゴジェック
組織名: Gojek
場所: インドネシア
業界: テクノロジー輸送サービス
会社の規模: 大規模
実施時間: ~1年
実装されたシステム: 注文管理システム、フリート管理システム、輸送管理システム

日々国が依存する製品を作る際には、秒単位が貴重です。製品はリアルタイムデータ転送に依存して優れたサービスとスムーズなユーザーエクスペリエンスを提供します。もしインドネシア初のデカコーンであるなら、毎分何百万ものプロセスに対処することになります。

これがまさに Gojekの場所です 今日です。2010年にライドヘイリングビジネスとして始まり、家庭名となり、東南アジアのほとんどの地域で交通・物流、支払い、食品・ショッピング、エンターテイメントなどの製品を提供するスーパーアプリに成長しました。

Gojekが運営する市場(ライドヘイリングとマルチサービスアプリ)の時間的な性質により、できるだけ遅延を避ける必要があります。これは、トップに留まる意図がある場合にも当てはまります。Gojekでは、3つの柱を掲げていることがわかります。

Gojekが築かれた最初の柱は速さです。2つ目は革新性であり、3つ目は社会的な影響です。そして、これはすべてのGojekの製品に明らかに現れています。

このケーススタディでは、Gojekのパッケージ配送サービスである GoSend GoSendを利用すると、顧客は自分の場所から別の場所にパッケージを送ることができます。GoSendには3つの配送サービスがあります:GoSendインスタント、GoSendサメデイ、GoSendインターシティ。

ポートシティーズxGojek

写真クレジット:すべての写真クレジットはGojekに帰属します。

問題の説明

ポートシティのチームは2019年にGoSendのチームと会い、複雑なミッションを任されました。プロジェクトの複雑さについて話し合う中で、 ポートシティのCTO、デニス・ギヨ said:


彼らは私たちに彼らの高度なテクノロジーのマルチサービスビジネスの複雑さを、非常にカスタムな社内業務フローと統合するように挑戦しました。

"彼らはまた、Odoo内に存在しない特定の輸送管理システム(TMS)をゼロから構築するよう要求しました。また、標準のOdooフリート機能を超えたかなり高度なレベルでフリート管理を実装するようにも求められました。また、グループレベルで既存のシステムとのインターフェースと統合が必要でした。"

以前、Gojekはクーリエサービスのための任意の種類の倉庫や物流業務を処理するためのバックエンドシステムを持っていませんでした。このクーリエサービスは、毎日数千件に達する高いボリュームで実行されていました。

GoSendが最初に始まったとき、チームは都市間での商品輸送のみを提供していました。徐々に、倉庫の数とサービスエリアの都市の範囲を拡大しました。これにより、GoSendは顧客の場所から全国の選択した場所まで、どんな商品でもピックアップすることができるようになりました。

ビジネスが成長するにつれて、常にデータの検証が必要となりました。例えば、顧客#405はGoSendに対してA地点からB地点への1立方メートルのパッケージの配送を依頼します。GoSendが倉庫に配送を収容できるスペースを持っているかどうかをチェックするシステムが必要です。また、フリートのスペースも割り当てることが重要です。そうでなければ、注文を運ぶトラックには容量がないまま顧客のもとに行ってしまいます。

しかし、最大の問題は、地理的な詳細と倉庫、ルーティング、および使用されるルートの能力との間に存在しなければならない深い統合です。

最終的に、Port Citiesのチームは、GoSendが注文を完了できるようにするために、いつでも実行する必要がある120以上の検証フローを特定しました。つまり、システムは寸法、出発地、目的地、容量、ルート、出発時刻、遅延などの要素について、フロントエンドとチェックおよび対話する必要があります。これらの条件がすべて満たされた後、注文を処理することができます。

問題の第二の部分は実行時間です。支払いをする顧客は、注文が承認されるかどうかを知るまで数分待つことはありません。

デニスは状況をさらに説明し、「Gojekは独自のOdoo実装でR&Dを行いましたが、標準のOdooでは1秒あたりの最大インタラクションと検証数は2〜3でした。GoSendの独自のGoLogisticsフローなどの追加基準を含めると、注文ごとに20秒の検証がかかりました。」と述べました。

ただし、要件は、1秒あたり1,500から2,000件の注文を同時に検証できる必要があるということでした。1秒あたり2,000件と20秒ごとの注文との間には非常に大きな違いがあります。

そして、それが課題でした。受信した注文は受け入れる前に検証する必要がありますが、支払いをする顧客は数分待つ忍耐力がありません。したがって、リアルタイムのバックエンド検証とOdooとの統合を備えたシステムが必要でしたが、顧客の体験に影響を与えることはありません。

では、Port Citiesはどのような解決策を提供し、どのような結果が得られましたか?


GoSendのためのPort Citiesのソリューション

GoSendのための当社のソリューションは、GoSendのオペレーションの社内フローに完全にカスタマイズされた複雑なシステムであり、毎日の取引の高いボリュームに対応するためにゼロから構築されました。

問題を理解した結果、GoSendが既に使用している非常に多くの第三者プラットフォームとも統合する必要があることも明らかになりました。同時に、リアルタイムで高いトランザクションのデータを検証する能力も必要です。

これを実現するために、システムは3つのサブシステムで構成されています:

  1. 注文管理システム(OMS)

  2. フリート管理システム(FMS)

  3. 輸送管理システム(TMS)

プロジェクトの実装中に直面した課題について尋ねられた際、デニスはGojekの取引ペースに注目しました。

彼は言いました、「数千件まで想像してください sales_order_lines が1回の呼び出しで送信されるか、時には一括で、ピーク時には数秒以内に。リアルタイムの高度なデータ検証制御の受け入れと、エラーコードまたはメッセージ、または指示を即座に返す要件、およびケースごとのロジックとプロトコルAPI応答を行うことを想像してください。

そして、このAPIの検証ルールの中で、注文の提出時に200以上の条件付き検証を統合するように求められるとします。パッケージのサイズがこのサイズか、あのサイズか、重量がそれを超えるか、この出発地からあの目的地へ行くか、このルートを使うか、あのルートを使うか?それに基づいて、APIは即座に価格、受け入れられたかどうか、実行される時期、およびETAを返答するべきです。

特に、顧客がリアルタイムで適切な応答時間内にそれらすべてを取得することを要求する場合、最悪の場合でも1つの通話あたり2〜3秒未満です。

課題にもかかわらず、Gojekは支払いを待たせることなく注文処理が即座に増加しました。

Gojekのプロジェクトの結果は次のように要約できます。

  • 倉庫とルーティングの地理的な詳細と特性と能力に深く関連する独自の注文およびフリート管理システムの開発。

  • 1つの注文あたり120以上の検証フローを検証できるシステムであり、同時に1,500〜2,000件の注文を処理できます。

  • Gojekの複雑な操作フローとサードパーティのシステムとの高性能API統合。そのような統合の1つは Kafka です。リアルタイムデータ分析と高性能データパイプラインに使用される高速な内部データストリーミングプラットフォームです。

Port Citiesは 最大のOdooパートナーの1つです 世界中で。ただし、このプロジェクトはさらに、私たちのサービスが広がっていることを示しています。 Odooの実装 組織のサイズや専門分野に関係なく、ITの実装にお手伝いするための専門知識と経験を持っています。Gojekとの取り組みに関する質問や、OdooやITの実装についてのお問い合わせがある場合は、お気軽にお問い合わせください。 連絡してください いつでもお手伝いします。

ポートシティーズxGojekは、毎日の取引の高いボリュームを処理するシステムを構築しました
Oluwatosin Odebunmi 2022年3月14日
この投稿をシェアする