NashTech

マイクロサービスと高速データによって、新しい顧客サービスが促進される

マイクロサービスと高速データによって、新しい顧客サービスが促進される

はじめに

減量業界のリーダー企業が、マイクロサービスと高速データによって推進する新しいクラスの顧客サービス

お客様について

減量業界のリーダー的存在である創業者は、何百万人もの人々に健康的な生活習慣を実生活に取り入れるよう促す、世界的なウェルネス・テクノロジー企業です。 魅力的なデジタル体験、対面式ワークショップ、健康的な食事や運動、前向きな考え方を取り入れた持続可能なプログラムを通じて、このような取り組みを行っている。 行動科学における50年以上の経験と専門知識を生かし、すべての人にウェルネスを提供するためのコミュニティを構築している。

競争力学

同社は、「ソフトウェアが世界を蝕む」中で、伝統的なビジネスがテクノロジーによって近代化を余儀なくされていることを示す典型的な例である。 この10年間、ウェアラブル端末やスマートフォンの台頭により、減量からフィットネスデータ、食品追跡まで、あらゆることに取り組む数え切れないほどの消費者向けアプリが登場した。 消費者は、携帯電話を使って食事や運動を記録し、その進捗状況を分析することに非常に精通するようになった。

減量業界のリーダーであり続けるためには、実績のある減量プログラムを提供し、アプリやデジタル体験を提供するリーダーであり続ける必要があると認識していた。 20年以上にわたって、同社はユーザーをサポートするデジタル・サービスを徐々に構築してきたが、競争上の要求がそのペースを加速させていた。

その競争力は、新規ユーザーを惹きつけ、熱心なファンを維持するために、新しいアプリや機能を継続的に出荷する能力に賭けられていた。

課題

しかし、古い.NETのモノリスは重荷だった。

競争圧力が高まるにつれて、同社はレガシーな.NETモノリスという、対処すべき余分な重荷を抱えるようになった。.NETモノリスは、長年にわたるソフトウェアの蓄積によって、ますますスケールが難しくなっていました。さらに問題なのは、このモノリスが、開発者のリリースサイクルのペースに合わせて新機能を迅速に展開する同社の能力を妨げていたことだ。

“私たちは、旧態依然としたビジネスのやり方では、現代社会では通用しないことに気づきました。新機能をより早く導入し、顧客からのフィードバックに迅速に対応し、ベータ・プログラムやメンバーとのテストを提供するために、スタックを近代化することを約束しました”

マイケル・ライサヒトCTO

解決策

マイクロサービスとNashTechが開発者に俊敏性をもたらす

2015年、同社は継続的開発という新たな現実をサポートするため、ソフトウェア・スタックを近代化するミッションに着手した。 その取り組みの中心となったのは、新しいウェブサイトと新しいモバイルアプリで、顧客は食べたものを記録し、体重やライフスタイルの情報を入力し、リアルタイムでデータを取得して、会員ごとにカスタマイズされた減量プログラムを計算し直すことができる。 スーパーマーケットで食品をバーコードスキャンし、食事を追跡する機能のようなユーザーの利便性から、他のユーザー・デバイスからどのようにデータを取り込むかという、より総合的な検討まで。 リプラットフォームのビジョンは、モノリスの依存関係や規模の懸念に足を引っ張られることなく、開発者が新しいサービスを作成するのを簡素化するマイクロサービスのコアセットだった。

彼らは12の異なるマイクロサービスを作成した。すべてScalaで書かれ、Play Frameworkを使用し、Akkaも使用し、Cassandraデータベースの上に構築されている。 各マイクロサービスは、独自のREST APIを提供し、顧客が食事を追跡し、データを入力し、計算され、カスタマイズされた減量プログラムに従うことを可能にするクライアントアプリケーションの側面を強化する。

使い方を理解するのに多くの詳細な知識を必要とせず、成熟したフレームワークとして、立ち上げと実行が非常に簡単です。 そのため、可用性の高いマイクロサービス群としてREST APIを構築するのに理想的だった。

Akkaが提供するActor抽象化は、外部HTTPコールやデータベースへの書き込みのような低速処理を、ノンブロッキングで並行処理するシンプルな方法を提供した。 アクターは、競合状態や不要なスレッドブロッキング、その他の一般的な並行処理の問題を回避するために、並行処理を非常に簡単に実行できる。 アクターは、Kinesisイベント・ストリームからの読み取り/Kinesisイベント・ストリームへの書き込みに特に便利である。

この会社について
スカラ
  • 高い生産性 – シンプルで簡潔な構文、迅速な開発、強力な型システム
  • 同時実行性に優れている – 不変性、フューチャー、アクターがあるから。
  • Javaの相互運用性 – JavaライブラリやJVMツールなどの再利用を可能にする。
プレー
  • 使い方は簡単
  • REST APIの作成に最適
  • マイクロサービスやストリーミングデータアーキテクチャで高いパフォーマンスを発揮する
アッカ
  • 強力なマルチスレッド機能
  • 同時実行抽象化はイベントストリームに適している
  • 書き直さずにコードをバルクヘッド化し、スケーリングする機能
モニタリング
  • モニタリングの実施が容易/迅速
  • アプリケーションのパフォーマンスチューニングやボトルネックの特定などに非常に便利です。
  • 視覚化ツールとの統合が容易
ナッシュテックのサポート
  • 非常に反応が良い
  • NashTechスタックのあらゆる側面について深い知識を持ち、非常に役に立つ。
  • Scala全般のアドバイスに最適

その結果

近代化されたスタック

アップデートのリリース時期

通常3~4時間で、多くの場合アプリケーションのダウンタイムが必要となる。

< ダウンタイムなしで20分でサービス・アップデートをリリース

スケーリング能力

スケールアップは、ハードウェアのクローニングやカスタマイズ、コードのデプロイ、テストが必要で、非常に時間がかかり、労働集約的な手作業となる。 これには通常、数日を要する。

完全に自動化されたプロセスとして、数分でサービスを水平方向にスケールアップまたはスケールダウンできる。 近い将来、需要に応じて自動的に規模を拡大したり縮小したりできるようになるだろう。

今日

開発者のイノベーションの温床であり、Scala開発者にとって素晴らしい文化がある。

現在では、マイクロサービス・アーキテクチャにより、リアルタイムのデータに基づく顧客サービスの拡大や、その他のさまざまなデバイスの統合に焦点を当てた、軽快な開発組織となっている。 同社がエンジニアリングで最も重視しているのは、会員の体験と、新たなフレームワークを使ったクラス最高のアプリケーションの構築だ。 2016年第4四半期の時点で、5四半期連続で採用数を伸ばし、期末の契約者数は260万人に達した。

「私たちは、Fast Dataを使い続け、顧客に対して非常に迅速に対応したいと考えています。イベントストリーミング、データ分析、リアルタイムインジェストなど、Fast Dataのあらゆる側面に興味を持っています。NashTech Reactive Platformと私たちのマイクロサービス・アーキテクチャは、私たちのメンバーに価値をもたらすために、これらの新しい機会を追求することを可能にします。”

ニック・スミス、シニア・エンジニアリング・マネージャー

ケーススタディをもっと読む

THE OUTがプレミアムレンタカー業界をどのように破壊するか

ベトナムのナッシュテック開発チームと緊密に協力し合うことで、高品質でデジタルファーストの高級レンタカーサービスを構築することができた。 将来を見据えて、THE OUTは製品ロードマップに注力し、旅行代理店やコンシェルジュ・パートナーを含むB2B顧客へのサービスを拡大し、そのための新しいポータルを構築している。

特注のデスク予約システムでハイブリッド勤務を実現:内部の視点

ナッシュテックの社内デスク予約ソフトウェアがどのように職場の効率化を促進し、高い精度で稼働率を測定したかをご覧ください。

オーストラリアで設立された広告・メディア費ビジネスは、ナッシュテックの支援により、いかにして駆け出しのビジネスから世界的な大企業へと成長したのか?

オーストラリアで設立された広告・メディア支出企業は、現在世界的な事業展開をしており、ナッシュテックがその成長を支えていることを知っている。

私たちのパートナーシップ

上部へスクロール