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
300k
0
Share
カヤックのゲーム開発・運用の「今」 力技と効率化の先に我々が目にしたものとは / YAPC Kansai 2017 Development of the Bokura No Koshien Pocket
YAPC::Kansai OSAKA 2017
2017-03-04 #yapcjapan #yapcjapanB
mackee
March 04, 2017
More Decks by mackee
See All by mackee
perlをWebAssembly上で動かすと何が嬉しいの??? / Where does Perl-on-Wasm actually make sense?
mackee
0
820
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
6
5.5k
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
14
6.8k
ワンバイナリWebサービスのススメ
mackee
10
8.7k
tanukistack ライブコーディング / tanukistack live-coding
mackee
0
580
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
1.1k
perl for shell, awk and sed programmers
mackee
3
2.8k
今更GoのWebフレームワークを作ろうとしているワケ / Why am I trying to create a Go web framework now?
mackee
1
1.1k
database/sqlでNullを扱う歴史とsql.Null[T]の登場 / sql.Null[T] history
mackee
0
980
Other Decks in Programming
See All in Programming
Programming with a DJ Controller — not vibe coding
m_seki
3
580
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
200
Explore CoroutineScope
tomoeng11
0
110
From Formal Specification to Property Based Test
ohbarye
0
460
個人的に嬉しかったpnpmの新機能・3選
matsuo_atsushi
0
100
NakouPAY説明用
annouim0
0
270
エラー処理の温故知新 / history of error handling technic
ryotanakaya
7
1.7k
10 Tips of AWS ~Gen AI on AWS~
licux
5
490
iOS機能開発のAI環境と起きた変化
ryunakayama
0
190
AWSコミュニティ活動は顧客のクラウド推進に効くのか / Do AWS community activities help customers adopt the cloud?
seike460
PRO
0
150
Claude Code × Gemini × Ebitengine ゲーム制作素人WebエンジニアがGoでゲームを作った話
webzawa
0
170
GoogleCloudとterraform完全に理解した
terisuke
1
160
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Into the Great Unknown - MozCon
thekraken
41
2.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Writing Fast Ruby
sferik
630
63k
Abbi's Birthday
coloredviolet
2
7.3k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
270
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Test your architecture with Archunit
thirion
1
2.2k
How to make the Groovebox
asonas
2
2.1k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
53k
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͔͔ΔͷͰۚͰԥΔ༧ఆͷ