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
カヤックのゲーム開発・運用の「今」 力技と効率化の先に我々が目にしたものとは / YAPC K...
Search
mackee
March 04, 2017
Programming
0
300k
カヤックのゲーム開発・運用の「今」 力技と効率化の先に我々が目にしたものとは / YAPC Kansai 2017 Development of the Bokura No Koshien Pocket
YAPC::Kansai OSAKA 2017
2017-03-04 #yapcjapan #yapcjapanB
mackee
March 04, 2017
Tweet
Share
More Decks by mackee
See All by mackee
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
230
perl for shell, awk and sed programmers
mackee
2
1.7k
今更GoのWebフレームワークを作ろうとしているワケ / Why am I trying to create a Go web framework now?
mackee
1
170
database/sqlでNullを扱う歴史とsql.Null[T]の登場 / sql.Null[T] history
mackee
0
96
マイクロサービス化を利用した Goへの移行事例
mackee
0
220
PerlでつくるフルスクラッチWebAuthn/パスキー認証 / Demonstration of full-scratch WebAuthn/Passkey Authentication written in Perl
mackee
3
3.6k
SRE定例やその辺の取り組みをアプリケーションエンジニア目線で語る / "Observe" about SRE Meeting by Application Engineer
mackee
0
1.8k
TinyGoで使えるORM sqllaの 紹介とTinyGoで使えるようにするための工夫
mackee
0
1.3k
Go向けORM sqllaの紹介と JOINやUNIONを含んだクエリの扱い方
mackee
0
4.6k
Other Decks in Programming
See All in Programming
AHC041解説
terryu16
0
300
AIレシート読み取り機能をRuby on Rails on AWSで実現するLLMにまつわるアレコレ / AI-based receipt reading function powered by LLM on Ruby on Rails on AWS
moznion
3
120
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
1
570
いりゃあせ、PHPカンファレンス名古屋2025 / Welcome to PHP Conference Nagoya 2025
ttskch
1
140
混沌とした例外処理とエラー監視に秩序をもたらす
morihirok
9
2k
Amazon Nova Reelの可能性
hideg
0
180
Flatt Security XSS Challenge 解答・解説
flatt_security
0
700
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
200
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.7k
歴史と現在から考えるスケーラブルなソフトウェア開発のプラクティス
i10416
0
300
traP の部内 ISUCON とそれを支えるポータル / PISCON Portal
ikura_hamu
0
180
Swiftコンパイラ超入門+async関数の仕組み
shiz
0
170
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
19
2.3k
Facilitating Awesome Meetings
lara
51
6.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Navigating Team Friction
lara
183
15k
It's Worth the Effort
3n
183
28k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Building Applications with DynamoDB
mza
93
6.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Statistics for Hackers
jakevdp
797
220k
Transcript
ΧϠοΫͷήʔϜ ։ൃɾӡ༻ͷʮࠓʯ ྗٕͱޮԽͷઌʹ զʑ͕ʹͨ͠ͷͱ @mackee_w a.k.a macopy YAPC::Kansai 2017 OSAKA
2017-03-04
͓લ୭ʁʁʁʁʁ
͓લ୭ʁʁʁʁʁ ͓ࣄιʔγϟϧήʔϜͷαʔ όαΠυͷ։ൃͱӡ༻ 1FSM HJUIVCNBDLFF UXJUUFS!NBDLFF@X 1"64&."$01: ࣄ1FSM͕ झຯ(P͕
΄΅ Α͘পʹؕΓ͕ͪ ࠷ۙ73
ࠓͷ: ʮ΅͘ΒͷߕࢠԂϙέοτʯͷ ӡ༻ͱ։ൃͷ
టष͍Λ͍ͬͯͧ̇͘
΅͘ΒͷߕࢠԂϙέοτͱʁ
΅͘ΒͷߕࢠԂϙέοτͷಛ • 14ճͷനͨ͠ࢼ߹ʂɹ܅ͷεΩϧͱΤʔϧ ͕উഊΛ͚Δʂʂʂ -> 14ճόοναʔό͕age㽉age㽉͢Δ • ͻ͖ͬΓͳ͠ʹ։࠵͞ΕΔ༷ʑͳϛχήʔϜΠϕ ϯτʂʂʂɹٿҎ֎ָ͠ΊΔͧʂ ɹ->
ຖσϓϩΠຖ։ൃʘ(^o^)ʗ
΅͘ΒͷߕࢠԂϙέοτͷಛ • 14ճͷനͨ͠ࢼ߹ʂɹ܅ͷεΩϧͱΤʔϧ ͕উഊΛ͚Δʂʂʂ -> 14ճόοναʔό͕age㽉age㽉͢Δ • ͻ͖ͬΓͳ͠ʹ։࠵͞ΕΔ༷ʑͳϛχήʔϜΠϕ ϯτʂʂʂɹٿҎ֎ָ͠ΊΔͧʂ ɹ->
ຖσϓϩΠຖ։ൃʘ(^o^)ʗ
ͱ͍͏ͷΛͲ͏Γ͍ͬͯΔ͔Λ ྺ࢙Λަ͑ͯհ͠·͢
ࠓ͔Β͢͜ͱ 1. ߏͷมભͱDBICͱDateTime.pm 2.ΨϯΨϯͬͯ͘ΔΠϕϯτΛӈ͔Βࠨͬ ͍͖ͯ͢Δख๏ʹ͍ͭͯ 3. 30ݸҎ্։ൃ༻ίϯςφཱ͕͍ͬͯͯ ͍ͭɹ͕ɹ͍ͬͯΔ +FOLJOTMPHPCZ+FOLJOT1SPKFDUIUUQTKFOLJOTJP
ߏͷมભͱDBICͱ DateTime.pm
Πϯϑϥʹ͍ͭͯͪ͜Β͕ৄ͍͠ IUUQTTQFBLFSEFDLDPNULVDIJLJOJBOKJBOZVOZPOHTJUFJSVTPTJZBSVHFNVGBMTFTBCBHPVDIFOHGBMTFCJBORJBO
ݱࡏͷΠϯϑϥߏ
ϦϦʔεॳͷΠϯϑϥߏ • உؾ͋;ΕΔγϯάϧϚελʔɾϊʔεϨʔϒ • ཧը໘εϨʔϒ • RDS for MySQL(5.6) •
ElastiCache RedisͰͳ͘Redis SentinelͰӡ༻ • WebAppͱBatchपΓߏʹมԽͳ͠ • deploy͕Archer͔Βstretcherʹͳͬͨ͘Β͍ • ϩάͷྲྀΕ͍ͩͿมΘ͍ͬͯΔ
ϦϦʔεॳͷ: ࢼ߹͕ॏ͍
ݱࡏͷ͋Δͷreq/sec
ݱࡏͷ͋Δͷreq/sec ϩʔΧϧϓογϡͰલͷഒͰۦ্͚͕Δ
͜Ε͕14ճ㽉㽉㽉㽉
ىͬͨ͜͜ͱ • όοναʔό͕ॏ͘ࢼ߹ਐߦ͕͔͔Γ͗͢Δ • DBͷෛՙͰଞͷAPIԆ࢝͠ΊΔ • ࢼ߹தεϨʔϒԆͰཧը໘͕10Ε ͱ͔ʹͳΔ • Redisͷసૹྔʘ(^o^)ʗ
ͬͨ͜ͱ • ͷࢼ߹Λຊͱ౦ຊͰ2ׂʹ͢Δ • ήʔϜͷνʔϜҬʹΑׂͬͯ͞Εͯ ͍Δ • 18࣌ͱ22࣌ͩͬͨͷΛ18/19࣌ͱ22/23࣌ʹ
14ճ㽉㽉㽉㽉 ↓ 16ճ㽉㽉㽉㽉㽉㽉
ϚελDBͷΫΤϦൃߦ
ͦͷଞ • DBICͰͷPrefetchͷ׆༻ • N + 1ΫΤϦΛpt-query-digestͱ͔Ͱݟ͚ͭͯҰͭͷ ΫΤϦʹ·ͱΊΔ • RedisʹΩϟογϡ͍ͯ͠Δࢼ߹σʔλΛlz4Ͱѹॖͯ͠
ऩΊΔ • WebAppαʔόԣʹฒΒΕΔ͔ΒগʑͷCPUίε τ͏
ͦͷଞ • εϨʔϒԆIOPS͕Γͳ͔ͬͨͷͰIOPS Λ૿͢ • ͓͔͔ۚΔ • ཧը໘ʹ͍ͬͯͨεϨʔϒʹ͚Δ ΈΛຊ൪ΞϓϦʹద༻ͯ͠Ϛελͷෛՙ Λݮ͢Δ
͍͍ͩͨDBͰࠔ͍ͬͯΔ • RedisͰͷΩϟογϡͰ͖Δ͚ͩΘͳ͍ํ • ύʔςΟγϣϯʹΑΔ࣮ߦܭըͷ༳Ε • TEXTͷΧϥϜʹΊͪΌͰ͔͍JSONಥͬࠐΜͰ సૹྔͶΔ • RDSͷϝϯςφϯε
Perlͷ
WebAppͰ͍ͬͯΔͭ • Perl 5.16.3 EOLͳͷͰ͍͋͛ͨ • Ark + DBIx::Class +
DateTime.pm… • ΫϥεϏϧμMouseΛଟ༻͍ͯ͠Δ
ʮAPI͍͓ͨ͘͠ʙʯ • DBICศརɺ͔͍͠͠ • ҎલDevel::NYTProfΛ͔͚ͨΒ΄΅DBICͱ͍͏݁Ռ͕ग़ͨ ͜ͱ
DateTime.pm • DateTime.pmඇৗʹଟػೳ͕ͩੜίετ ͕ߴ͍ • $row->created_atͰऔΔͱDateTimeʹͳͬ ͪΌ͏ͷͰ$row->get_column(“created_at”) ͰऔͬͯeqΒlt/gtͰൺֱ͢ΔςΫ͋Δ • (Θ͔Γʹ͍͘)
DateTime.pmͱ͏Δ͏ඵ • Perl ͷ DateTime ར༻্ͷҙ • https://shogo82148.github.io/blog/2015/12/09/perl-datetime/ • ςετதͷϩάʹ08:59:60ͱ͍͏จࣈΛݟ͚ͭͯɺͦͷ࣌ʹݪҼෆ
໌ͩͬͨ࣍ͷ0࣌ͪΐ͏Ͳʹࢼ߹ΛಥͬࠐΉσόοά͕ΤϥʔͰࢮΜ Ͱ͍ͨͷ͕͏Δ͏ඵͱΓमਖ਼ΛࢼΈΔ • ͔͠͠ίϯύΠϧ࣌ʹ͏Δ͏ඵΛຒΊࠐΜͰ͍ΔͷͰզʑϢʔβʹ Ͳ͏͢Δ͜ͱग़དྷͶ͑ • ͏Δ͏ඵΛΒͳ͍όʔδϣϯʹμϯάϨʔυͯ͠ରԠorz
͠Ύͬ͠Ύʔ
͠Ύͬ͠Ύʔ • ʮͳ͔ͬͨΒINSERT͍ͨ͠͠ɺ͋ΔͳΒϩοΫऔ Γ͍ͨΜ?ʯ • http://ichirin2501.hatenablog.com/entry/ 2015/08/23/191500 • INSERT͠Α͏ͱ͢Δͱdupͬͯɺ͡Ό͋͋Δ ΜͬͯSELECT͠Α͏ͱ͢ΔͱREPEATABLE
READͷ᠘Ͱݟ͑ͳ͍ɻҰମͲ͏͢Ε
͠Ύͬ͠Ύʔ͕ى͜Δͱ • Α͘Πϕϯτ։࢝࣌ʹى͜Γ͕ͪ • Πϕϯτ༻ͷνʔϜڞ௨ϢʔβσʔλΛΠ ϕϯτͷγʔϯʹೖͬͨ࣌ʹ࡞Δͱ͔Δ • σʔλΛࣄલೖ͢ΔͷޮՌత • ͔͠͠ޙ͔Β࡞ΒΕͨϢʔβνʔϜʹޮ
Ռ͕ͳ͍
ࠓͷͱ͜Ζͷରࡦํ๏ • τϥϯβΫγϣϯ֎(ίϯτϩʔϥͷԼ͔Β ಡΜͩผͷϞσϧͷϝιουͳͲ)ͰॳظԽ͞ ΕͨߦΛೖ͢Δ • ͦͷޙͷຊମͷϝιουͰͦͷߦͷϩοΫ Λऔͬͯߦ͕͔ͳΒͣ͋ΔલఏͰॲཧΛଓ͚Δ • ͢ΔͱϩοΫऔΕΔͤ͠
ΨϯΨϯͬͯ͘ΔΠϕϯτΛ ӈ͔Βࠨ͍͖͍ͬͯͯ͘͠ ख๏ʹ͍ͭͯ 1IPUPCZ$BUXBMLIUUQTqJDLSQ(87V
͋ΔҰिؒͷ։ൃ
͋ΔҰिؒͷ։ൃ ݟʹ͍͘ͷͰ ਅͬೋͭʹ͠ ·͚ͨ͠ΕͲ ຊ͜Μͳ ײ͡Ͱ͢ ݄Րਫۚ
͜ͷύΠϓϥΠϯΛ Γͳ͘εϜʔζʹ͍͖ͬͯ ग़དྷΔΑ͏ʹ͢Δͷ ΤϯδχΞͷࣄ
ࠓօ͞Μʹ ֮͑ͯ΄͍͜͠ͱ: ֮ޛͱؾ߹
֮ޛ: αʔόʹσϓϩΠ͞ΕΔͷ શͯαʔόΤϯδχΞ͕Λ௨͢
ͳͥͳΒ ͳΜ͔τϥϒͬͨͱ͖ αʔόΤϯδχΞ͕Δ͔Β
αʔόʹσϓϩΠ͞ΕΔͷ • Perlͷίʔυ • CSVͰಥͬࠐΉϚελσʔλ • Unity͕ಡΉAsset Bundle • chefͷrecipe
αʔόʹσϓϩΠ͞ΕΔͷ • Perlͷίʔυ • CSVͰಥͬࠐΉϚελσʔλ • Unity͕ಡΉAsset Bundle • chefͷrecipe
͜ΕΒશͯΛ αʔόΤϯδχΞ͕ Ѳ͢Δඞཁ͕͋Δ
͘͠୭͕͍ͬͯΔ͔Λ Ѳ͍ͯ͠Δඞཁ͕͋Δ -> ॿ͚ΛݺΔ
ؾ߹: పఈͨࣗ͠ಈԽ
։ൃ ͯ͢Pull RequestͰ ճ͍ͬͯΔ
ϒϥϯνΛΔBOT • ఆܗͷ໋໊نଇͱϒϥϯνπϦʔΛ࣋ͬͨ topicϒϥϯνΛࣗಈੜ͢ΔBOT • اըଆ͚ͩͰ࡞ۀΛ։࢝Ͱ͖Δ • hotfixϒϥϯνΕΔΑ͏ʹͳ͍ͬͯΔͷͰ मਖ਼ͯ͠։ൃڥσϓϩΠ·ͰΤϯδχΞ Ҏ֎͕ग़དྷΔΑ͏ʹͳ͍ͬͯΔ
͔͠͠؆୯ʹPRΛ࡞ΕΔͱ • No description… • ԿΛతʹ͜ͷPR͕࡞ΒΕͨͷ͔ॻ͔Εͣ ʹճ͖ͬͯͯࠔΔ
ԿΛ͔ͨ͠: ϙΤϜΛॻ͍ͨ
None
None
Τϥʔϝοηʔδ 2W1H ͕͍͍Μ͡Όͳ͍͔ - @bayashi Daily https://bayashi.net/diary/2016/0719 2W1H What? Why?
How?
Pull Request2W1HͰ ͍͍Μ͡Όͳ͍͔ʁ ·ͩͬͯͳ͍͚ΕͲ13ͷςϯϓϨʹೖΕΔͷྑͦ͞͏
اըͷਓ͕ԿΛ੍࡞͢Δͷ͔ʁ
Ϛελʔσʔλ
Ϛελσʔλ • DB੩తϦιʔε্ͷϢʔβʹมߋ͞Εͳ͍ σʔλ • ରٛޠϢʔβσʔλ • ϦϙδτϦʹCSVͰσϓϩΠ࣌ʹDBΫ ϥΠΞϯτʹ͢όΠφϦʹͳͬͨΓ͢Δ
Ϛελσʔλ • DBʹೖΔͷ͕େͳͷͰߗ͍εΩʔϚܗࣜ • CSVΛฤू͍ͯ͠ΔΘ͚Ͱͳ͘Google SpreadsheetΛ༻͍͍ͯΔɻ͜ΕΛCSVԽ͢Δ -> BOT͕CSVʹམͱͯ͠Pull Requestʹͯ͘͠ ΕΔ
ԿނGoogle SpreadsheetͰΔ͔: ͍͡Δਓ͕ίϯτϩʔϧͰ͖Δ
ΤΫηϧతͳͭͷ͍͍ͱ͜Ζ • දܭࢉͷ͕ؔ͑Δ • ؔΘΓ͔͠Θ͔Γ͍ࣗ͢ಈԽݴޠ • εΫϦϓτ͕͑Δ • σΟϨΫλʔ͕Կਓ͔GASॻ͍ͯࣗಈԽ͠ ͯΔ
ࣗಈԽΛઌͯ͠Δ͜ͱͰ ଞͷਓʹࣗಈԽΛଅ͢
ྫ͑Next IDൃߦ܅
͖ͬ͞ͷ͜Ε ࡞ۀதͷͷ͕ฒྻ
͖ͬ͞ͷ͜Ε ࡞ۀதͷͷ͕ฒྻ ͦΕͧΕʹϚελ σʔλ͕ଘࡏ͢Δ
ͳͷͰ
શͯͷγʔτΛ·͍ͨͰͲͷIDʹ ͖͔͢Λڭ͑ͯ͘ΕΔ܅͕ඞཁ
શͯͷγʔτʁʁʁ
͖ͬ͞ͷ͜Ε ࡞ۀதͷͷ͕ฒྻ ͦΕͧΕʹϚελ σʔλ͕ଘࡏ͢Δ
͖ͬ͞ͷ͜Ε ࡞ۀதͷͷ͕ฒྻ ͦΕͧΕʹಠཱͨ͠ εϓϨουγʔτ͕ ଘࡏ͢Δ
࣮ࡍʹCSVʹ͢Δͱ͖
࣮ࡍʹCSVʹ͢Δͱ͖ ຊ൪ʹೖ͍ͬͯΔϚελͷ γʔτ
࣮ࡍʹCSVʹ͢Δͱ͖ ຊ൪ʹೖ͍ͬͯΔϚελͷ γʔτ ΠϕϯτͰ͍͍ͨ Ϛελσʔλͷγʔτ
࣮ࡍʹCSVʹ͢Δͱ͖
࣮ࡍʹCSVʹ͢Δͱ͖
࣮ࡍʹCSVʹ͢Δͱ͖ ࠓσϓϩΠ͞ΕΔͱͲ͏ͳΔ͔$47
ͭ·Γ εϓϨουγʔτͷ ϒϥϯνཧ
େྔͷΠϕϯτΛճͨ͢Ίʹ • పఈͨࣗ͠ಈԽ • PullRequestͱγʔτͰݟ͑ΔԽͱ͍͡ΕΔԽ Λ͢Δ • γʔτΛࠩཧͯ҆͠શʹ։ൃ • BOTͰͬͯ୭͕ԿΛ͍ͬͯΔ͔ΛSlackͰ
ΕΔ
ͦΕͱେྔͷ։ൃڥ
։ൃڥͱ • ຊ൪ͱಠཱͨ͠ಛఆͷϒϥϯνͷίʔυͱϚ ελσʔλͱΞηοτ͕σϓϩΠ͞Εͨαʔό • ϗετ͕ৼΒΕͯ։ൃ൛ΞϓϦ͔Βܨ͛ΒΕΔ • ੲϩʔΧϧͰplackup͚ͯͨ͠ΕͲࠓͱͳͬ ͯPerlڥ͋ΔਓϩʔΧϧ͡Όͳͯ͘։ൃ ڥΛ্ཱͪ͛ͯ֬ೝ͢Δ͜ͱ͕ଟ͍
ੲ(৽ن։ൃॳ) ʮmacopy: ϒϥϯνhogehogeΛݟΕΔΑ͏ʹ ͯ͠ʯ ʮʔ͍ʯ ͔ͬͯͬͯΒdevelopmentαʔόʹϩάΠϯ ͯ͠ϒϥϯνΛΓସ͑ͯεΩʔϚద༻ͯ͠Ϛ ελಥͬࠐΜͰWebAppΛ࠶ىಈͯ͠…
ؾ͍ͮͨΒͣͬͱϒϥϯνσ ϓϩΠ৬ਓʹͳ͍ͬͯͨ
ΞΧϯͷͰBOTʹΒͤΔ • ಉ͜͡ͱΛBOTʹΒͤΔ • UnazuSanͱ͍͏ϞδϡʔϧΛ༻ͯ͠IRC͔ ΒҰ࿈ͷσϓϩΠίϚϯυΛ࣮ߦ͢ΔΑ͏ʹ ͨ͠ • ͜ΕͰίʔυ͕ॻ͚ΔΑ͏ʹͳͬͯϋοϐʔ
͔͜͠͠͏ͳͬͯ͘Δͱ
ಉ࣌ʹෳͷਓ͕ผʑͷ ڥΛݟ͍ͨͱ͍͏ཁ͕
͠Ό͋ͳ͍ͷͰෳڥΛ࡞Δ • devφϯτΧ͍ͬͯ͏αʔό͚ͩͩͬͨͷ͕ɺ dev01, dev02, dev03ͱ૿͑Δ • ͔͍ͬͯ͠͠Δͷʹଞਓ͕͓͏ͱͯ͠ফ ͢ •
εϓϨουγʔτΒϗϫΠτϘʔυͰཧ ࢝͠ΊΔ
ͳ͓ಉ͡ঢ়گʹஔ͔Εͨ ผͷνʔϜ ͍ͬͯΔਓͷ্ʹ෩ધ ͕͋Δͱ͍͏Ṗͷӡ༻Λ ͍ͯͨ͠Β͍͠ IUUQUFDICMPHLBZBDDPN@NJSBHF@JO@EPDLFSIUNM
͠ΐ͏͕ͳ͍ͷͰڥΛ૿͢ • ʮڥμϒͬͯ͏͠ΜͲ͍ͷͰͳΜͱ͔ͳΓ· ͤΜ͔ʯ • ʮ͠ΐ͏͕ͳ͍૿͔͢……ʯ Ұϲ݄ޙ ʮdev14·Ͱ࡞ΔͨΊʹdevͰchefճ͠·͢ʯ ΠϯϑϥʮͳΜͰͦΜͳ͜ͱʹʂʁʯ
૿ͯ͠ॴḨ༗ݶͳͷͰ͢
͋”͋” ແݶʹ։ൃڥΆ͜Ά͜ ཱ͍͓ͯͨʙ
+ mirage
(Ϧιʔε͕ڐ͢ݶΓͷ) ແݶͷ։ൃڥ • DockerͰϒϥϯνΓସ͑ͱcarton installͱDBϚ ΠάϨʔγϣϯΛߦͬͯplackup • Procletศར(ࢼ߹༻ʹgearmanͳͲཱͬͯΔ) • DBͱRedisલίϯςφʹཱ͍͕ͯͯͨɺϝϞϦ
ͱσΟεΫ৯͏ͷͱίϯςφམͱ͢ͱશͯͳ͘ͳΔͷ ͰɺϗετʹRedisཱͯͯDBAuroraͰσʔλϕʔε Λ͚ͯಉډ͍ͯ͠Δ
(Ϧιʔε͕ڐ͢ݶΓͷ)
BOTͰڥΛ্ཱͪ͛ΕΔ ཪͰJenkins͕mirageͷAPIΛୟ͍ͯίϯςφ ىಈ͍ͯ͠Δ
͢ΔͱΈͳ͞Μ ͖์ͳ͞ΕΔ
ίϯςφେരൃ
ίϯςφΠϝʔδআͱ͔ සൟʹ͍ͬͯΔ͕0%ʹͳͬͯdev͕ࢮͨ͠ ͜ͱԿ͋Δ σΟεΫ༗ݶ
ͱΓ͋͑ͣσΟεΫΛ εέʔϧΞοϓͨ͠ͷͱ ίϯςφͷμΠΤοτ
͋ͱࣥࣄౖ͕Δ ͜ΕݟͯΈΜͳʮ͋ʙͬͯͳ͍ͷ͋ͬͨΘʯͬͯݴͬͯ མͱ࢝͠ΊΔͷͰศར ͋ͱ࣌ؒΞΫηε͕ͳ͚Εམͱ͢ͱ͔ ݄༵ேʹશ෦མͱ͢ िӽ͠ͷίϯςφ࣋ͨͳ͍ ͱ͔ ͬͯΔ +FOLJOTMPHPCZ+FOLJOT1SPKFDUIUUQTKFOLJOTJP
ϝϞϦͱCPU༗ݶ
ݪҼσόοά༻εΫϦϓτ͕ ϝϞϦόΧ৯͍͔ͭฒྻ࣮ߦ • QAͳͲͰ͑ΔΑ͏ʹεΫϦϓτΛ࣮ߦ͢Δ WebUIΛ༻ҙ͍ͯ͠Δ͕ɺͦͷҰͭʹര͕ ͋ͬͨ • ͍ΘΏΔμϛʔσʔλ࡞Δܥɻ͜͏͍͏ͷ ίʔυϨϏϡʔ͕ૄ͔ʹͳΓ͕ͪͩ͠ɺຊ൪ ͱҧ͏ෛՙʹͳΓ͕ͪ
ͦΜͳ͜ΜͳͰେྔʹڥΛཱͯΕ Δ͜ͱʹΑͬͯ ेฒྻͷ։ൃ͕Մೳʹͳ͍ͬͯΔ
·ͱΊ • PerlݱͰಈ͍͍ͯ·͋͢ɻӡ༻͍ͯ͠·͋͢ɻ • ։ൃύΠϓϥΠϯΛਂͯ͘͠εέʔϧͤ͞Δͱαʔ Ϗεͷӡ༻ͷ෯͕͕Γ·͢ • ͦΜͳΘ͚ͰوॏͳPerlΤϯδχΞ߈Ίӡ༻͢ ΔͨΊʹύΠϓϥΠϯΈ͍ͨΤϯδχΞ͞Μ͍ ·ͤΜ͔ʔʔʔʔʔʂʂʂʂ[Ad]↓
ͦͷଞൃද͖͠Εͳ͔ͬͨͭ • ͋ͱ͔ΒϚϧνςφϯτʹ͢Δͱ͖ͷۤ࿑ • σϓϩΠʹ͍ͭͯ(papix͕લʹ͍Ζ͍Ζͬͯ ͍ΔΜ͡Όͳ͍͔ʁ) • ͍͜ͱ͍ͬͯΔͱϞδϡʔϧͷޙํޓഁյ ʹ·͞ΕΔ͕ΞάϨογϒʹ্͛Δ •
ςετ͕20͔͔ΔͷͰۚͰԥΔ༧ఆͷ