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 Kansai 2017 Development of the Bokura No Koshien Pocket
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
マイクロサービス化を利用した Goへの移行事例
mackee
0
27
PerlでつくるフルスクラッチWebAuthn/パスキー認証 / Demonstration of full-scratch WebAuthn/Passkey Authentication written in Perl
mackee
3
1.9k
SRE定例やその辺の取り組みをアプリケーションエンジニア目線で語る / "Observe" about SRE Meeting by Application Engineer
mackee
0
1.7k
TinyGoで使えるORM sqllaの 紹介とTinyGoで使えるようにするための工夫
mackee
0
510
Go向けORM sqllaの紹介と JOINやUNIONを含んだクエリの扱い方
mackee
0
850
デプロイ今昔物語 〜CGIからサーバーレスまで〜 / The deployment technics
mackee
10
9.9k
E2Eテストから負荷試験シナリオを作ってみた / Why do we make a scenario of load testing from E2E testing scenarios
mackee
2
4.6k
じわじわとPerlからGoに移行しようとしている俺達のマイクロサービシーズの紹介 / The migrating to microservices in Go from Monolith in Perl
mackee
2
2.7k
Mojoliciousで書いて理解するhotwireの仕組み
mackee
0
4.7k
Other Decks in Programming
See All in Programming
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
650
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
190
ADRを一年運用してみた/adr_after_a_year
hanhan1978
7
2.4k
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
130
Ruby Pattern Matching
bkuhlmann
0
930
二郎系ラーメンのコールで学ぶ AST 解析
memory1994
PRO
7
1.7k
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
430
GitHub Copilotのススメ
marcy731
1
200
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
2
200
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
1
1.1k
Ruby Function Composition
bkuhlmann
1
330
Fast JSX: Don't clone props object #28768
yossydev
1
130
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
42
12k
Building Your Own Lightsaber
phodgson
99
5.7k
Building an army of robots
kneath
300
41k
Docker and Python
trallard
34
2.7k
Rails Girls Zürich Keynote
gr2m
91
13k
[RailsConf 2023] Rails as a piece of cake
palkan
23
4k
Side Projects
sachag
451
41k
KATA
mclloyd
15
12k
The Cult of Friendly URLs
andyhume
74
5.7k
YesSQL, Process and Tooling at Scale
rocio
164
13k
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
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͔͔ΔͷͰۚͰԥΔ༧ఆͷ