[AWS Summit Tokyo 2017 Day3] EPSONにおけるサーバーレスアーキテクチャ導入事例

Day3です。コンピューターのバッテリーがやばいです。
ブロックチェーンやKinesisに関してのセッションを今日は拝聴していました。
本稿では、EPSON社のサーバーレスの導入事例のセッションの様子を記そうと思います。

サービス

プリンターからのレシートを解析、DB上にストアするアプリケーション
その情報をネイティブアプリから見れるサービス

課題

AWS上でサービスを展開する上で、オンプレの思考のまま設計
Web API => EC2インスタンスにwebアプリを置いてビジネスロジックを持ち込む => RDSにレシートデータ蓄積

  • 密結合
  • 毎回インフラ側にスケール依頼をしていて立ち行かなくなってきた
  • 同期処理でのブロック処理

プリンシプル

  • スケーラブルにする
  • サービス間を疎結合にする
  • マネージドサービスの活用

アーキテクチャ

AWSのマネージドサービスをフル活用することで活用する
(ほぼ)世界の各ロケーションでフルスケーラブル/高可用の環境が構築できた。

  • 情報の格納

    • プリンター => EC2 => Kinesis => lambdaでレシートをS3に格納
    • s3のレシートのputからSQSを発火、AWS Beanstalk上のworkerで解析。
    • 解析結果をさらにKinesis Streamに入れ込み、Auroraへ格納
  • ユーザーアプリからサービスにアクセスする

    • 実際にユーザーのクライアントアプリからレシートの検索結果を見る。APIGateWay/LambdaでAPIを書いている。
    • このLambdaはS3やAuroraにアクセスしてユーザーに情報を返す。
  • システムのOverViewを作っておくと、自分が今何をしているのかとか、

  • 本格実装して半年で軌道に乗った

「新しい作り方」に会社として向き合うには

  • 啓発/習得/権限
    • 背中を押す経験 -> ワークショップの開催
    • ベンダーロックインの議論にははじめの実績で答えを出す
    • 権限と責任範囲を明確にした
    • 細かく作って細かく壊す
    • ビジネスロジックを最適に分割/コスト資産

まとめ

  • ビジネスは容赦なく変化し、アーキテクチャは破綻する
  • 踏み出す勇気と受けいれる心
  • 現実的なフルスタックエンジニアリング
  • サーバーレスによって「担当範囲のスコープ」だけでなく「価値提供に集中できるチーム/メンバーが自己成長できるチーム」が出来上がった
Pocket

Naoto

Wanoで色々やらしてもらってまう

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です