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
Mackerel and Stripe / Qiita x Stripe Meetup
Search
astj
PRO
April 12, 2019
Technology
0
5.5k
Mackerel and Stripe / Qiita x Stripe Meetup
https://connpass.com/event/123900/
astj
PRO
April 12, 2019
Tweet
Share
More Decks by astj
See All by astj
ISUCON14公式反省会LT: 社内ISUCONの話
astj
PRO
0
330
Mackerel の時系列データベースにおける Redis Cluster の利用と Amazon ElastiCache への移行について / AWS Purpose-Built Databases Week
astj
PRO
3
5.8k
Mackerel のコンテナ監視の近況 / Mackerel Meetup #13
astj
PRO
1
2.3k
Observability: Mackerel による観測と Mackerel の観測 / NoOps Meetup Tokyo #8
astj
PRO
2
2.1k
サービス開発と健全なプロダクトメンテナンスを開発チームで持続的に取り組む / Developers Boost KANSAI
astj
PRO
1
1.4k
Mackerel をオンプレミスから AWS に移してからの1年半を振り返る / Hatena Engineer Seminar #11
astj
PRO
0
1.2k
AWS で実現した Mackerel 時系列データ1分粒度長期保存の裏側 / Mackerel Meetup #11 Tokyo
astj
PRO
6
30k
稼働中の Web サービスの perl のバージョンを上げていく
astj
PRO
0
7.4k
Perl 6 で Web Application Framework をつくる
astj
PRO
0
4.6k
Other Decks in Technology
See All in Technology
Delta airlines®️ USA Contact Numbers: Complete 2025 Support Guide
airtravelguide
0
350
衛星運用をソフトウェアエンジニアに依頼したときにできあがるもの
sankichi92
1
230
CDKTFについてざっくり理解する!!~CloudFormationからCDKTFへ変換するツールも作ってみた~
masakiokuda
1
200
アクセスピークを制するオートスケール再設計: 障害を乗り越えKEDAで実現したリソース管理の最適化
myamashii
1
330
「Chatwork」のEKS環境を支えるhelmfileを使用したマニフェスト管理術
hanayo04
1
240
United airlines®️ USA Contact Numbers: Complete 2025 Support Guide
unitedflyhelp
0
340
DatabricksにOLTPデータベース『Lakebase』がやってきた!
inoutk
0
150
QuickSight SPICE の効果的な運用戦略~S3 + Athena 構成での実践ノウハウ~/quicksight-spice-s3-athena-best-practices
emiki
0
260
20250708オープンエンドな探索と知識発見
sakana_ai
PRO
4
860
サイバーエージェントグループのSRE10年の歩みとAI時代の生存戦略
shotatsuge
4
830
AWS CDKの仕組み / how-aws-cdk-works
gotok365
10
890
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
730
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
The Language of Interfaces
destraynor
158
25k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
How STYLIGHT went responsive
nonsquared
100
5.6k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
BBQ
matthewcrist
89
9.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Why Our Code Smells
bkeepers
PRO
336
57k
The Invisible Side of Design
smashingmag
301
51k
Transcript
Mackerel and Stripe 2019/04/12 Qiita x Stripe Meetup Asato WAKISAKA
(Hatena)
Asato WAKISAKA (GitHub: @astj) ͯͳ ΞϓϦέʔγϣϯΤϯδχΞ Mackerel ։ൃνʔϜ (2016/08~) Mackerel
ςοΫϦʔυ (2018/05~)
Mackerel
None
None
None
None
• 2014ϦϦʔεͷʮαʔόʔࢹαʔϏεʯ • ʑΞΫςΟϒʹ։ൃத • ܧଓతͳ৽ػೳϦϦʔε • ແྉͰར༻Մೳ • ϑϧػೳʹ༗ྉϓϥϯͷܖ͕ඞཁ
None
Mackerel ͱܾࡁ
• ຖ݄ͷར༻࣮ʹԠͨ͡ैྔ՝ۚ • ར༻͍ͯ͠ΔϗετʢͳͲʣͷҠಈฏۉ • ελϯμʔυϗετ1/1݄͋ͨΓ1800ԁ • ܾࡁखஈ: جຊతʹΫϨδοτΧʔυ •
=> ΫϨδοτΧʔυܾࡁʹ Stripe
Stripe Mackerel Stripe.js v2 Mackerel JS Token Customer Token CardNumber,
etc Token
3/1 4/1 ݄͝ͱͷҠಈฏۉ
Stripe Payments Mackerel Charge.create( amount: 2*1800, customer: "XXX" ) ݄ॳόον
• ϘϦϡʔϜσΟεΧϯτͳͲಛผ݅͋Γ • ٻॻ͍͋Γ • ࠓΫϨδοτΧʔυͱผޱͰूܭ
Mackerel ͱܾࡁαʔϏε
• ݱࡏΫϨδοτΧʔυܾࡁ Stripe ܦ༝ • ࣮ Stripe ͕3ࣾ (2019/02~)
• αʔϏεϩʔϯν࣌ • ಛʹUSDܾࡁͰ Stripe બࢶʹ • JPYܾࡁͷΈͱͷஅ: WebPay Λબ
• (2014: Stripe ͷຊਐग़લ) 2014
• WebPay αʔϏεऴྃ • ಉ͡ࠒ Stripe ຊ্ • JCB ܾࡁ͕ඞཁ:
PayJp Λબ • 2018࣌Ͱ10%͕ JCB 2016~2017
• Stripe JCB ରԠʂʂʂʂʂ • ຬΛ࣋ͯ͠ Stripe Ҡߦ 2018~19
ܾࡁαʔϏεΛҠߦ͢Δ
• See Stripe docs ! • https://stripe.com/docs/ security/data-migrations
• ৽αʔϏεͰͷܾࡁϩδοΫ࣮ • ސ٬σʔλͷҠ • ܾࡁઌͷΓ͑ • ϨϙʔςΟϯάͷ࠶ߏங
• ࠔΔ͜ͱͦΜͳʹͳ͔ͬͨ • ϓϦϛςΟϒͳػೳͰ࣮ݱ͍ͯͨ͠ • ෳͷܾࡁαʔϏεΛಉ࣌ʹѻ͏͜ͱ͕ Մೳͳઃܭʹͳ͍ͬͯͨ ΤϯυϢʔβʔ͚ͷػೳҠߦ
• (چސ٬ id) => (৽ސ٬ id) ͷϚοϐϯά͕ඞཁ • αʔϏεؒͰσʔλҠߦ =>
ϚοϐϯάΛड͚औΔ • ࣄۀऀؒͷεέδϡʔϧௐ͕ඞཁɹ • ҠߦޙܾࡁͰ͖ͳ͘ͳͬͨͷ1%ఔ ސ٬σʔλͷσʔλҠߦ
৽نސ٬ 1BZ+Q طଘސ٬ 1BZ+Q ܾࡁ 1BZ+Q
৽نސ٬ 4USJQF طଘސ٬ 1BZ+Q ܾࡁ 4USJQF1BZ+Q
৽نސ٬ 4USJQF طଘސ٬ NJHSBUJPO ܾࡁ QFOEJOH
৽نސ٬ 4USJQF طଘސ٬ 4USJQF ܾࡁ 4USJQF
• ച্ɺೖۚͷαΠΫϧ͕มԽ͢Δ • ΧʔυϒϥϯυʹΑͬͯҟͳΔʂ • όοΫΦϑΟεͱௐɺ࣮ όοΫΦϑΟεͱͷ࿈ܞ
• Ҡߦཧͷػͱଊ͑Δ • Ϩϙʔτ༰ɾ࣌ظΛ࠶ઃܭ͢Δ
• ʮച্ΛకΊΔλΠϛϯάͰച্ͷ༁͕Γ͍ͨʂʯ • => Stripe ଆͷܾࡁҰཡ • ʮͦͷച্͕͍ͭೖۚ͞ΕΔ༧ఆͳͷ͔ʯΛؚΊΔ • ʮೖۚͷλΠϛϯάͰͦͷೖۚͷ༁͕Γ͍ͨʂʯ
• => Stripe ଆͷೖۚ༁ ʮ͍ͭɺͲͷࣈ͕ඞཁʁʯ
݄ച্"""ԁ ݄ೖۚ༧ఆQQQԁ ݄ೖۚ༧ఆRRRԁ ݄ച্###ԁ ݄ೖۚ༧ఆSSSԁ ݄ೖۚ༧ఆTTTԁ ݄ೖۚ:::ԁ ݄ച্RRRԁ ݄ച্SSSԁ ݄ೖۚ999ԁ
݄ച্PPPԁ ݄ച্QQQԁ
• Ϛελσʔλ Stripe ͷ API • ͳΜͰऔΕΔʂ • ඞཁͳՃใܾࡁ࣌ͰϝλσʔλʹؚΊΔ •
ʮϗετʯʮ৫໊ʯetc • API ܦ༝ͰϨϙʔτΛ࡞ • ޙॲཧΛՃ͔͑ͯΒόοΫΦϑΟεʹఏग़
Ҡߦ͠·ͨ͠
Stripe Mackerel Stripe.js v2 Mackerel JS CardNumber, etc Token Token
Token Customer ࠶ܝ
Stripe Payments Mackerel Customer.charge( amount: 2*1800, customer: "XXX" ) ݄ॳόον
࠶ܝ
• ࠓͷͱ͜ΖStripe ΛඇৗʹϓϦϛςΟϒʹ͍ͬͯΔ • Stripe ར༻ͱ͍͏ελʔτϥΠϯʹ • ͳΔͦ͘ͷ··Ҡߦ͢Δ͜ͱΛ༏ઌ • ΑΓϦονͳιϦϡʔγϣϯʹڵຯ͕͋Δʂʂ
• Elements / Billing • ࣮ࡍ Elements ͷҠߦΛ·͞ʹ࣮ࢪத
• ܧଓతʹαʔϏεશମΛվળ͍ͯ͘͠ • ܾࡁػೳ"Ҭ" ʹ͠ͳ͍ • ϢʔβʔɺϏδωεɺόοΫΦϑΟε SaaS ఏڙऀͱͯ͠
• ๛ͳػೳɾվળͷԸܙΛड͚͍ͯ͘ • ࠓޙͷ·͢·͢ͷύϫʔΞοϓʹظ • ࠷ۙٻॻʹ͍ͯ͠·͢ SaaS ར༻ऀͱͯ͠
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠