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
930
半年間で60万回叩かれたAPIを公開した話 / rng-api
odanado
PRO
July 15, 2017
Tweet
Share
More Decks by odanado
See All by odanado
@nestjs/bull の活用について
odanado
PRO
0
1.1k
クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022
odanado
PRO
0
910
Vue.observable で状態管理 / vue-observable-state-management
odanado
PRO
4
1.8k
nuxtjs-axios-error-handling
odanado
PRO
0
280
ブロックチェーンアプリのトランザクションに対するデータ分析 / PyCon-JP-2019
odanado
PRO
0
310
スマートコントラクトに対する既知の攻撃とその対策 / bc.tokyo-21
odanado
PRO
0
190
最近のweb3.js事情 / bc.tokyo-19
odanado
PRO
2
420
YAPC::Tokyo 2019に スタッフ参加してみて / kichijojipm-18
odanado
PRO
1
2.1k
JavaScript + Dockerの知見 / knowledge-of-docker-in-javascript
odanado
PRO
9
53k
Other Decks in Programming
See All in Programming
Introduction of Happy Eyeballs Version 2 (RFC8305) to the Socket library
coe401_
1
220
AWS CDKにおける「再利用性」を考える / aws-cdk-reusability
gotok365
6
1.3k
Product Management LT会_クアンド新家
shinshin
0
260
HMSコンペ 11th Solution (team : kansai-kaggler)
t88
1
680
生成AIをkintoneに連携してみた
hideg
0
230
Folding Cheat Sheet #7
philipschwarz
PRO
0
150
なぜ宣言的 UI は壊れにくいのか / Why declarative UI is less fragile
uenitty
29
13k
Findy - エンジニア向け会社紹介 / Findy Letter for Engineers
findyinc
2
81k
Namespace on read
tagomoris
2
370
さきがけから振り返るアーキテクチャ刷新 / Reflecting on the Architectural Renewal from the Vanguard
nrslib
2
780
Clean Architecture by TypeScript & NestJS
ryounasso
0
150
大規模マルチテナントを解決するYugabyteDBという選択肢
nnaka2992
1
250
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
33
6.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
652
58k
A better future with KSS
kneath
231
17k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Building an army of robots
kneath
301
42k
Practical Orchestrator
shlominoach
185
10k
Design by the Numbers
sachag
277
18k
Stop Working from a Prison Cell
hatefulcrawdad
266
20k
Agile that works and the tools we love
rasmusluckow
325
20k
Speed Design
sergeychernyshev
9
270
Fireside Chat
paigeccino
25
2.8k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.9k
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ޙ