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
Heroku Container Registry & Runtime + digdagで お...
Search
shunsugai
September 05, 2018
Technology
0
350
Heroku Container Registry & Runtime + digdagで お手軽バッチ処理環境 を作ってみた
Heroku Meetup #22でLTした内容です。
shunsugai
September 05, 2018
Tweet
Share
More Decks by shunsugai
See All by shunsugai
RailsでModular Monolithを選択された御社に質問したいN個の疑問
shunsugai
5
2.6k
Other Decks in Technology
See All in Technology
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
900
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
オープンソースAIとは何か? --「オープンソースAIの定義 v1.0」詳細解説
shujisado
10
1.2k
The Role of Developer Relations in AI Product Success.
giftojabu1
0
140
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
110
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
430
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Gamification - CAS2011
davidbonilla
80
5k
Designing for Performance
lara
604
68k
Code Review Best Practice
trishagee
64
17k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Ruby is Unlike a Banana
tanoku
97
11k
Visualization
eitanlees
145
15k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
4 Signs Your Business is Dying
shpigford
180
21k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
A designer walks into a library…
pauljervisheath
204
24k
Transcript
Heroku Container Registry & Runtime + digdagで お手軽バッチ処理環境 を作ってみた 2018-09-05
須貝俊
自己紹介 - 須貝俊 - IESHILというWebサービスでエンジニアやってます。 - 主にRailsアプリケーションの開発を担当。 - Heroku大好き。個人で2011年から利用してます。
僕が使い始めた頃のHeroku
一番右に(権利的に)ヤバいのがいる
今日一番伝えたかったこと 以上。
本題行きます
Heroku上で Docker動かすやつで バッチ処理走らす話
イエシルとは - IESHIL https://www.ieshil.com/ - マンションの査定価格を載せてるカ タログ的なサイト - Ruby on
Rails + Heroku
査定価格、災害リスクなどの住環境データ
新たに販売中の物件を掲載(8/1〜)
この機能の裏側で 頑張っているものが 今日の本題
作ったもの
作ったもの - データ提供元のFTPサーバにアクセスしてデータを取ってくる - それをTreasureDataに放り込む - TD上でIESHILの建物マスターデータと取得した物件データを 名寄せする - 名寄せしてフロント用に整形したデータをJSONL形式でS3に
吐き出す
なぜdigdag + embulkなのか? - TreasureDataを利用しているから - チーム内ですでに実績があるツールだから - ちなみにdigdagはローカルモードです
なぜHerokuなのか?(表向き) - 時間がなかったから。 - バッチ処理環境がないわけではないが、アドホックに立てた Digital Oceanのインスタンスで負債感あり。 - 別途、AWS上にdigdagサーバーを構築する動きがあったが、 今回のリリースには間に合わなそうだった。
- イエシル上の建物マスターデータと、販売物件データを名寄せ する処理に集中したかった。
なぜHerokuなのか?(裏) - Container Registry & Runtimeを本番で使ってみたかったか ら - だいたいのものはHerokuで動かせると思っているから -
Herokuが好きだから
どうやって作るのか - ドキュメントに詳しく書いてあります。 https://devcenter.heroku.com/articles/container-registry-and-runtime - Dockerfile書いてpushするだけ - リリース時はheroku container:releaseする必要あり
どうやって作るのか - Add-ons - Heroku Scheduler : 定期実行に必要 - Papertrail
: ログ収集 - Dead Man’s Snitch : 死活監視 - SendGrid : メール送信
Add-ons 全部無料ですみません
やってみた感想
感想:メリット - 本番相当の環境ですぐに動かせた - リリースが簡単 - 足りないものはAdd-onsでなんとかなる - とにかく楽
感想:デメリット - Heroku SchedulerはDailyだと時間が30分刻みでしか設定で きない - 実行時間が24時間以上になる場合は工夫する必要がある dynoは24時間 + αで再起動するため。
(今回は30分程度で終わる処理なので問題なし)
感想:余談 - 別途AWS上に構築したdigdagサーバーが本番運用されてい るので、今後そちらに移行していく予定。 - ただし傍から見ているとdigdagのサーバーモードはいろいろ 大変そうだなという印象。
おわり