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
半年間で60万回叩かれたAPIを公開した話 / rng-api
Search
odanado
PRO
July 15, 2017
Programming
1
990
半年間で60万回叩かれたAPIを公開した話 / rng-api
odanado
PRO
July 15, 2017
Tweet
Share
More Decks by odanado
See All by odanado
Vitest Browser Mode への期待 / Vitest Browser Mode
odanado
PRO
3
4k
@nestjs/bull の活用について
odanado
PRO
0
1.4k
クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022
odanado
PRO
0
1.1k
Vue.observable で状態管理 / vue-observable-state-management
odanado
PRO
4
2k
nuxtjs-axios-error-handling
odanado
PRO
0
340
ブロックチェーンアプリのトランザクションに対するデータ分析 / PyCon-JP-2019
odanado
PRO
0
400
スマートコントラクトに対する既知の攻撃とその対策 / bc.tokyo-21
odanado
PRO
0
230
最近のweb3.js事情 / bc.tokyo-19
odanado
PRO
2
490
YAPC::Tokyo 2019に スタッフ参加してみて / kichijojipm-18
odanado
PRO
1
2.3k
Other Decks in Programming
See All in Programming
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
0
190
Perplexity Slack Botを作ってAI活用を進めた話 / AI Engineering Summit プレイベント
n3xem
0
310
Cursor Meetup Tokyo ゲノミクスとCursor: 進化と制約のあいだ
koido
2
840
SODA - FACT BOOK
sodainc
1
320
人には人それぞれのサービス層がある
shimabox
3
630
💎 My RubyKaigi Effect in 2025: Top Ruby Companies 🌐
yasulab
PRO
1
130
カクヨムAndroidアプリのリブート
numeroanddev
0
160
Spring gRPC で始める gRPC 入門 / Introduction to gRPC with Spring gRPC
mackey0225
2
410
がんばりすぎないコーディングルール運用術
tsukakei
1
210
Interface vs Types ~型推論が過多推論~
hirokiomote
1
240
ワンバイナリWebサービスのススメ
mackee
10
7.6k
RubyKaigiで得られる10の価値 〜Ruby話を聞くことだけが RubyKaigiじゃない〜
tomohiko9090
0
120
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Docker and Python
trallard
44
3.4k
A better future with KSS
kneath
239
17k
Site-Speed That Sticks
csswizardry
9
610
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Transcript
ؒͰ60ສճୟ͔Εͨ APIΛެ։ͨ͠
ԿͷAPIΛ࡞ͬͨͷ • ϙέϞϯʁ • ిؾͷήʔϜ • ڈൃച͞ΕͨαϯϜʔϯ • ཚௐʁ •
ޙͰ͢ • APIʁ • Application Programming Interface • URLୟ͘ͱඞཁͳใ͕ฦͬͯ͘Δ ϙέϞϯͷཚௐͷͨΊͷΣϒAPIΛ࡞ͬͨ
ཚௐʁ • ٖࣅཚ • seedͷʹΑͬͯͰͨΒΊʹݟ͑Δ͚Ͳ ࣍ʹԿ͕དྷΔ͔Θ͔͍ͬͯΔཚ • ਅͷཚ • ࣍ʹԿ͕དྷΔ͔༧ଌෆՄೳͳຊͷཚ
ήʔϜͷٖࣅཚΛࢥ͍௨Γʹૢ࡞͢Δ͜ͱ seed = 42 ࣍ʹԿ͕དྷΔ͔ ༧ଌՄೳ ࣍ʹԿ͕དྷΔ͔ ༧ଌෆՄೳ
ϙέϞϯͷཚௐʁ • ڧ͍ݸମ৭ҧ͍ͳͲग़͠์ • ιγϟήͰ֬ఆͰSSRΛҾ͘Α͏ͳײ͡ • ྑ͍αΠίϩͷ=ڧ͍ݸମ,SSR • Ͳ͏Δͷ͔ʁ ٖࣅཚͷseedʹΑͬͯ
αΠίϩͷܾ·Δ ٖࣅཚͷseedͷ 0͔Β2"#ͷΛऔΔ αΠίϩͷ͔ΒseedͷΛٯࢉ͢Ε ͦͷޙͷαΠίϩͷ༧ଌՄೳ αΠίϩͷ ήʔϜ্Ͱ؍ଌՄೳ
ཚΞϧΰϦζϜ • ཚΞϧΰϦζϜ • seed ͔ΒαΠίϩͷΛܭࢉ͢Δํ๏ • ཚΞϧΰϦζϜͷछྨ • ฏํ࠾த๏
• ઢܗ߹ಉ๏ • ϝϧηϯψɾπΠελ • xor shift • ͳͲͳͲ ϙέϞϯͰͲͷཚΞϧΰϦζϜ͕ ΘΕ͍ͯΔ͔Θ͔Βͳ͍
ཚΞϧΰϦζϜ • όΠφϦղੳ͢Δ͔͠ແ͍ʁʁ
࡞ͬͨAPIͷ༷ • લॲཧ • αʔόଆͰ࣍ͷͷϖΞΛ2"#ݸܭࢉ • (seed, ࠷ॳnݸͷαΠίϩͷ) • ࠷ॳnݸͷαΠίϩͷͰιʔτ
• ຊॲཧ • Ϣʔβʔ͔Β࠷ॳnݸͷαΠίϩͷ͕དྷΔͱ ೋ୳ࡧͰseedΛܭࢉ • ܭࢉ݁ՌΛjsonܗࣜͰฦ٫
࡞ͬͨAPIͷ༷ ࠷ॳnݸͷαΠίϩͷ seed=42 ͩΑ ʘೋ୳ࡧʗ ʘڧ͍ݸମͷϙέϞϯήοτʗ
࡞ͬͨAPIͷ༷ • αʔόʔ • ͘͞ΒVPS • ϓϩάϥϛϯάݴޠ • લॲཧ&୳ࡧC++ •
API෦Python
࡞ͬͨ݁Ռ • Ͱ60ສճAPI͕ίʔϧ͞Εͨ • ຊࠃ͚ͩ͡Όͳͯ͘ੈքத͔Β • ΫϥΠΞϯτΞϓϦΛ࡞ͬͯ͘ΕΔਓ͕ݱΕͨ • Quandra/PokemonSunMoonRNGTool •
wwwwwwzx/3DSRNGTool • zaksabeast/SMBrowserRNG
ײ • ωοτ্ͷΓ߹͍ͱҰॹʹ͜͜·ͰདྷΕͨ • ੈքதͷਓʹͬͯ͑ͨͷॳͩͬͨ • ͬͺΓϓϩάϥϛϯάָ͍͠ • ࣗͷʹཱͭͱͬͱָ͍͠ •
୭͔ʹͬͯ͑Δͱߋʹָ͍͠ • 5000ஹճ·ͰΓ4999ஹ9999ԯ9940ສճ • 41ԯ6666ສ6667ޙ