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
Real World Serverless
Search
freee
January 17, 2017
Technology
0
7.5k
Real World Serverless
freeeでのAWS Lambdaを利用したServerlessの活用方法
アーキテクチャの紹介やリージョンをまたいだ際の注意点など
from nasa
freee
January 17, 2017
Tweet
Share
More Decks by freee
See All by freee
10分でわかるfreeeのPdM
freee
28
25k
AI時代の開発組織デザイン
freee
0
27
支出管理船団 エンジニア向け会社説明用資料/Company_Presentation_Materials_for_Fleet_Engineers_in_Expenditure_Management.pdf
freee
0
84
[2025/09/12更新] freeeのAIに関する取り組み
freee
1
590
開発組織発 AI駆動経営
freee
0
250
「SaaS × AI Agentの未来」freee が AWS で築く AI Agent 基盤
freee
0
160
freee が目指す生成 AI 時代に向けた次世代データ プラットフォームとガバナンスとは / freee's Next-Generation Data Platform and Governance for the Coming Age of Generative AI
freee
1
500
freee請求書のSLO違反改善活動について / SLO violation remediation activities for freee invoices
freee
1
500
freee + Product Design FY25Q4
freee
4
17k
Other Decks in Technology
See All in Technology
技術の総合格闘技!?AIインフラの現在と未来。
ebiken
PRO
0
140
Gov-JAWS4回_某団体でのAmazon Bedrock活用検証で見えた“使う側”の課題精度よりもリテラシー
takuma818t
0
110
AIエージェントは「使う」だけじゃなくて「作る」時代! 〜最新フレームワークで楽しく開発入門しよう〜
minorun365
PRO
6
990
AIを使ってテストを楽にする
kworkdev
PRO
0
420
どうなる Remix 3
tanakahisateru
0
240
CloudComposerによる大規模ETL 「制御と実行の分離」の実践
leveragestech
0
190
DMARCは導入したんだけど・・・現場のつぶやき 〜 BIMI?何それ美味しいの?
hirachan
1
160
Copilotの精度を上げる!カスタムプロンプト入門.pdf
ismk
4
930
ソフトウェアエンジニアとデータエンジニアの違い・キャリアチェンジ
mtpooh
0
220
AI-ready"のための"データ基盤 〜 LLMOpsで事業貢献するための基盤づくり
ismk
0
120
ラスベガスの歩き方 2025年版(re:Invent 事前勉強会)
junjikoide
0
950
Raycast AI APIを使ってちょっと便利なAI拡張機能を作ってみた
kawamataryo
1
250
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
How to Think Like a Performance Engineer
csswizardry
27
2.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
4 Signs Your Business is Dying
shpigford
186
22k
Docker and Python
trallard
46
3.6k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Transcript
Real World Serverless nasa @ freee 2017.1.17 Serverless Meetup Tokyo#2
1
はじめまして • nasa (Asaoka Natsuki) • 紅茶, ガジェット, fedora 好き
• 2014 年から で engineer • その前はとある public cloud (IaaS) の開発を していました 2
3 freee にレシート・請求書のメールを転送 freee への登録部分に AWS Lambda を使用 PDF OCRにかけて
会計情報をつくるよ! 2016/11 freee Meets Serverless!!
recipe • AWS SES - メール受信 • AWS Lambda -
node.js • AWS DynamoDB • AWS S3 • apex • lambda local 4
email Amazon SES Amazon S3 Amazon S3 Amazon Lambda Amazon
Lambda Amazon DynamoD B oregon Tokyo 5 architecture
key point #1 • independent • 不正なメールが大量にきたとき、サービスへの大量アクセスを防 ぎたい • DynamoDB
で処理対象かcheck • 対象外なら exit • 障害時の復旧のしやすさ • S3 にデータがあればそれを使って再開 6 6 
key point #2 • retriable • 意図しないタイミングで retry されうる •
「実行時間 timeout」「memory 不足」etc. • retry を前提としたコード • 完了してる処理は skip • 復帰できない error は 通知して exit 7 7 
Extra • AWS の仕様を踏まえて試行錯誤 • “いつリージョンを超えるか ?” • SES は
Oregon, サービスは Tokyo • SES のイベントソースを使うと Lambda <-> S3, Lambda <-> freee 間で太平洋を越えることに…timeout の可能性Up • SES -> S3 でリージョン超え • Lambda は S3 のイベントソースを使う 8 8 
9 End We are hiring!
• apex • http://apex.run/ • lambda local • https://github.com/ashiina/lambda-local •
Understanding Container Reuse in AWS Lambda • https://aws.amazon.com/jp/blogs/compute/container-reuse-i n-lambda/ • 2016年11月度 新機能のお知らせ (※今回の機能のリリース告知) • https://www.freee.co.jp/blog/release-2016-11-30-18058.html 10 appendix