Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Step Functionsで始めるローコード開発
Search
ちばたかふみ
November 20, 2023
0
120
Step Functionsで始めるローコード開発
11/10 JAWS-UG 会津、11/15 Media-JAWSにて登壇したときの資料です
EC2 → Lamdba → Step Functionsへと開発を重ねてきた感想をまとめています
ちばたかふみ
November 20, 2023
Tweet
Share
More Decks by ちばたかふみ
See All by ちばたかふみ
202601216_SaaSはサーバーレスなのか
takachiba
0
14
20251011_ソラカメで簡単導入!店舗在庫の見える化と省力化
takachiba
1
94
サメの話(仮
takachiba
0
120
2024年JAWS-UG東北まとめ_山形版
takachiba
0
64
20240510_山形_AWSCDKを使ってみた.pdf
takachiba
0
11
2024年JAWS-UG東北まとめ-弘前開催版-
takachiba
0
180
クラウドではじめる動画配信入門 AWS編
takachiba
1
210
AWSCDKを使ってみた
takachiba
0
51
AmazonQを使ってみた
takachiba
0
17
Featured
See All Featured
Getting science done with accelerated Python computing platforms
jacobtomlinson
1
94
Paper Plane
katiecoart
PRO
0
45k
GitHub's CSS Performance
jonrohan
1032
470k
The Spectacular Lies of Maps
axbom
PRO
1
430
From π to Pie charts
rasagy
0
110
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
190
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
120
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
41
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
140
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
330
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
100
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
58
41k
Transcript
Step Functionsで始めるローコード開発 スターブリッジいわて株式会社 v1.4p ちば たかふみ
自己紹介 1 名前 ちば たかふみ 出身 岩手県奥州市 住まい 岩手県花巻市 趣味
国内旅行 サッカー観戦 ベガルタ仙台 サウナ/温泉 キャンプ バイク/ツーリング HONDA CT125
自己紹介 2 S〇y (2008~2013) 携帯電話PF開発 複合機PF開発 Windowsアプリ開発 スターブリッジいわて (2023~) 業務系システム開発
Jス〇リーム(2013~2022) 動画配信プラットフォーム開発 動画プレイヤー開発 CDN開発 公営ギャンブル動画配信システム開発 放送局向け動画配信システム開発
所属 3 社名 スターブリッジいわて株式会社 所在地 事業所 : 岩手県花巻市松園町一丁目6-1 代表者 茂庭裕之
設立 2012年3月12日 ビジョン ✓ 岩手/地方の産業の課題を最新のITとリアル(現場力)の両面からビジネ スで解決し、質の高い雇用を生み出す。 ✓ 一次、二次、三次産業の全般の変革に貢献する存在になる。 事業内容 ✓ クライアントワーク ➢ 地元企業様のITの顧問・コンサルティング事業 ➢ 大手企業様プロジェクトのPM、コンサルティング、エンジニアリング ➢ 新規事業立上げ支援、立上げ代行サービス事業 ✓ 自社サービス運営 ✓ 岩手県産品EC・卸・小売り事業 ご契約いただいている岩手県内企業様業種 ➢ 製造業、建設業、旅館業、食品加工業、飲食業、青果市場、仲卸業、 花巻市役所 等々
今日のおはなし 4 Step Functionsで始めるローコード開発
AWSとの出会い 5 オンプレでのWebシステム開発や Elemental Live/Delta(オンプレエンコーダー) Elemental Cloud(クラウド版エンコーダー) を使った動画配信のシステム構築を担当
AWSとの出会い 6 ElementalがAWSに買収 ElementalCloudがAWS Media Servicesへ統合 AWS Media Servicesを使ったシステム開発へ 同時にオンプレでのWebシステム開発も
EC2でのWebシステム開発へ変わっていく
EC2を中心としたシステム開発 7 EC2パターン • メリット – オンプレの開発に近い形でのシステムになる • デメリット –
VPCやセキュリティグループなどの 概念を覚えるのが大変 – インスタンスは常に起動するので ユーザーが使用していない時間も 課金されてしまう
EC2からLambdaへ移行 8 • Lambdaとは – サーバーレスでプログラムを実行するための サービス
EC2からLambdaへ移行 9 • メリット –サーバーレスのサービスなので サーバーの構築/運用が不要 –費用はプログラムが実行した分だけ
主なLambdaの呼び出し方 10 WebAPIとして使いたいとき 例)フロントのシステムと連携したい 外部のシステムと連携したい Amazon API Gateway AWS Lambda
AWS Lambda Amazon EventBridge 定期処理やAWSのイベントと連携して使いたいとき 例)定期バッチとして実行したい S3にファイルが格納されてイベントをきっかけに実行したい
Lambdaで困ってたこと 11 • 困ってたこと – 1つのLambdaに処理を詰め込んでしまうと コードのボリュームがそれなりに大きくなる – Lambdaで動かすプログラムを書く知識がそれ なりに必要
– 数が増えてくるとLambdaの管理が面倒
Step Functionsの登場 12 Step Functinsとは • ASL(AmazonStatesLanguage)と呼ばれる JSONベースで記述
Step Functionsの登場 13 • GUIベースでワークフローを 表現することができる
Step Functionsの登場 14 • Lambdaと同様で サーバーの構築/運用が不要 • AWSのサービスを直接呼び出せる – プログラムを書く必要が無くなる
主なStep Functionsの呼び出し方 15 WebAPIとして使いたいとき 例)フロントのシステムと連携したい 外部のシステムと連携したい Amazon API Gateway Amazon
EventBridge 定期処理やAWSのイベントと連携して使いたいとき 例)定期バッチとして実行したい S3にファイルが格納されてイベントをきっかけに実行したい AWS Step Functions AWS Step Functions
Step Functionsのメリット 16 • メリット – フローチャートベースで 作れるため プログラムを書けなくても ちょっとした処理を組むことができる
– AWSのサービスを 直接呼ぶこともできるため コードを書かなくても 実装することも可能
Step Functionsのメリット 17 • メリット – 連携するサービスによっては Lambdaを書く場合もあるが Lambda単体に比べ 圧倒的にコード量が減る
Step Functionsのメリット 18 • メリット – 視覚的に処理を見れるため 設計書を残す 必要性が低くなる
感想 19 • 使い方次第でなんでも実現できそうなサービス • がっつりコードが書けなくても すぐに動くものが見れるのがうれしい • Lambdaを設計するときに モジュールごとに
Lambdaを分けて考えれるようになった
さいごに 20 これからAWSでシステム作りたい方は まずはStepFunctions からスタートで!
さいごに 21 ありがとうございました!