カヤックのゲーム開発・運用の「今」 力技と効率化の先に我々が目にしたものとは / YAPC Kansai 2017 Development of the Bokura No Koshien Pocket

B5582ce2d9959dfcff0384a07003e188?s=47 mackee
March 04, 2017

カヤックのゲーム開発・運用の「今」 力技と効率化の先に我々が目にしたものとは / YAPC Kansai 2017 Development of the Bokura No Koshien Pocket

YAPC::Kansai OSAKA 2017
2017-03-04 #yapcjapan #yapcjapanB

B5582ce2d9959dfcff0384a07003e188?s=128

mackee

March 04, 2017
Tweet

Transcript

  1. ΧϠοΫͷήʔϜ ։ൃɾӡ༻ͷʮࠓʯ ྗٕͱޮ཰Խͷઌʹ զʑ͕໨ʹͨ͠΋ͷͱ͸ @mackee_w a.k.a macopy YAPC::Kansai 2017 OSAKA

    2017-03-04
  2. ͓લ୭ʁʁʁʁʁ

  3. ͓લ୭ʁʁʁʁʁ ͓࢓ࣄιʔγϟϧήʔϜͷαʔ όαΠυͷ։ൃͱӡ༻ 1FSM  HJUIVCNBDLFF UXJUUFS!NBDLFF@X 1"64&."$01: ࢓ࣄ͸1FSM͕ झຯ͸(P͕

    ΄΅  Α͘পʹؕΓ͕ͪ ࠷ۙ͸73
  4. ࠓ೔ͷ࿩: ʮ΅͘ΒͷߕࢠԂϙέοτʯͷ ӡ༻ͱ։ൃͷ࿩

  5. టष͍࿩Λ΍͍ͬͯͧ̇͘

  6. ΅͘ΒͷߕࢠԂϙέοτͱ͸ʁ

  7. ΅͘ΒͷߕࢠԂϙέοτͷಛ௃ • 1೔4ճͷന೤ͨ͠ࢼ߹ʂɹ܅ͷεΩϧͱΤʔϧ ͕উഊΛ෼͚Δʂʂʂ -> 1೔4ճόοναʔό͕age㽉age㽉͢Δ • ͻ͖ͬΓͳ͠ʹ։࠵͞ΕΔ༷ʑͳϛχήʔϜΠϕ ϯτʂʂʂɹ໺ٿҎ֎΋ָ͠ΊΔͧʂ ɹ->

    ຖ೔σϓϩΠຖ೔։ൃʘ(^o^)ʗ
  8. ΅͘ΒͷߕࢠԂϙέοτͷಛ௃ • 1೔4ճͷന೤ͨ͠ࢼ߹ʂɹ܅ͷεΩϧͱΤʔϧ ͕উഊΛ෼͚Δʂʂʂ -> 1೔4ճόοναʔό͕age㽉age㽉͢Δ • ͻ͖ͬΓͳ͠ʹ։࠵͞ΕΔ༷ʑͳϛχήʔϜΠϕ ϯτʂʂʂɹ໺ٿҎ֎΋ָ͠ΊΔͧʂ ɹ->

    ຖ೔σϓϩΠຖ೔։ൃʘ(^o^)ʗ
  9. ͱ͍͏ͷΛͲ͏৐Γ੾͍ͬͯΔ͔Λ ྺ࢙Λަ͑ͯ঺հ͠·͢

  10. ࠓ͔Β࿩͢͜ͱ 1. ߏ੒ͷมભͱDBICͱDateTime.pm 2.ΨϯΨϯ΍ͬͯ͘ΔΠϕϯτΛӈ͔Βࠨ΁΍ͬ ͍͖ͯ͢Δख๏ʹ͍ͭͯ 3. 30ݸҎ্։ൃ༻ίϯςφཱ͕͍ͬͯͯ
 ͍ͭ΋ɹ͕ɹ͍ͬͯΔ࿩ +FOLJOTMPHPCZ+FOLJOT1SPKFDUIUUQTKFOLJOTJP

  11. ߏ੒ͷมભͱDBICͱ DateTime.pm

  12. Πϯϑϥʹ͍ͭͯ͸ͪ͜Β͕ৄ͍͠ IUUQTTQFBLFSEFDLDPNULVDIJLJOJBOKJBOZVOZPOHTJUFJSVTPTJZBSVHFNVGBMTFTBCBHPVDIFOHGBMTFCJBORJBO

  13. ݱࡏͷΠϯϑϥߏ੒

  14. ϦϦʔε౰ॳͷΠϯϑϥߏ੒ • உؾ͋;ΕΔγϯάϧϚελʔɾϊʔεϨʔϒ • ؅ཧը໘͸εϨʔϒ • RDS for MySQL(5.6) •

    ElastiCache RedisͰ͸ͳ͘Redis SentinelͰӡ༻ • WebAppͱBatchपΓ͸ߏ੒ʹมԽͳ͠ • deploy͕Archer͔Βstretcherʹͳͬͨ͘Β͍ • ϩάͷྲྀΕ͸͍ͩͿมΘ͍ͬͯΔ
  15. ϦϦʔε౰ॳͷ໰୊: ࢼ߹͕ॏ͍

  16. ݱࡏͷ͋Δ೔ͷreq/sec

  17. ݱࡏͷ͋Δ೔ͷreq/sec ϩʔΧϧϓογϡͰ௚લͷഒͰۦ্͚͕Δ

  18. ͜Ε͕1೔4ճ㽉㽉㽉㽉

  19. ىͬͨ͜͜ͱ • όοναʔό͕ॏ͘ࢼ߹ਐߦ͕͔͔Γ͗͢Δ • DBͷෛՙͰଞͷAPI΋஗Ԇ࢝͠ΊΔ • ࢼ߹த͸εϨʔϒ஗ԆͰ؅ཧը໘͕10෼஗Ε ͱ͔ʹͳΔ • Redisͷసૹྔʘ(^o^)ʗ

  20. ΍ͬͨ͜ͱ • ໷ͷࢼ߹Λ੢೔ຊͱ౦೔ຊͰ2෼ׂʹ͢Δ • ήʔϜ಺ͷνʔϜ͸஍ҬʹΑͬͯ෼ׂ͞Εͯ ͍Δ • 18࣌ͱ22࣌ͩͬͨͷΛ18/19࣌ͱ22/23࣌ʹ

  21. 1೔4ճ㽉㽉㽉㽉 ↓ 1೔6ճ㽉㽉㽉㽉㽉㽉

  22. ϚελDBͷΫΤϦൃߦ਺

  23. ͦͷଞ • DBICͰͷPrefetchͷ׆༻ • N + 1ΫΤϦΛpt-query-digestͱ͔Ͱݟ͚ͭͯҰͭͷ ΫΤϦʹ·ͱΊΔ • RedisʹΩϟογϡ͍ͯ͠Δࢼ߹σʔλΛlz4Ͱѹॖͯ͠

    ऩΊΔ • WebAppαʔό͸ԣʹฒ΂ΒΕΔ͔ΒগʑͷCPUίε τ͸෷͏
  24. ͦͷଞ • εϨʔϒ஗Ԇ͸IOPS͕଍Γͳ͔ͬͨͷͰIOPS Λ૿΍͢ • ͓ۚ͸͔͔Δ • ؅ཧը໘ʹ࢖͍ͬͯͨεϨʔϒʹ޲͚Δ࢓૊ ΈΛຊ൪ΞϓϦʹ΋ద༻ͯ͠Ϛελ΁ͷෛՙ Λ࡟ݮ͢Δ

  25. ͍͍ͩͨDBͰࠔ͍ͬͯΔ • RedisͰͷΩϟογϡ͸Ͱ͖Δ͚ͩ࢖Θͳ͍ํ਑ • ύʔςΟγϣϯʹΑΔ࣮ߦܭըͷ༳Ε • TEXTͷΧϥϜʹΊͪΌͰ͔͍JSONಥͬࠐΜͰ సૹྔ௓ͶΔ • RDSͷϝϯςφϯε

  26. Perlͷ࿩

  27. WebAppͰ࢖͍ͬͯΔ΍ͭ • Perl 5.16.3 EOLͳͷͰ͍͋͛ͨ • Ark + DBIx::Class +

    DateTime.pm… • ΫϥεϏϧμ͸MouseΛଟ༻͍ͯ͠Δ
  28. ʮAPI͸΍͍͓ͨ͘͠ʙʯ • DBIC͸ศརɺ͔͠͠஗͍ • ҎલDevel::NYTProfΛ͔͚ͨΒ΄΅DBICͱ͍͏݁Ռ͕ग़ͨ ͜ͱ΋

  29. DateTime.pm • DateTime.pm͸ඇৗʹଟػೳ͕ͩੜ੒ίετ ͕ߴ͍ • $row->created_atͰऔΔͱDateTimeʹͳͬ ͪΌ͏ͷͰ$row->get_column(“created_at”) Ͱऔͬͯeq΍Βlt/gtͰൺֱ͢ΔςΫ΋͋Δ • (Θ͔Γʹ͍͘)

  30. DateTime.pmͱ͏Δ͏ඵ • Perl ͷ DateTime ར༻্ͷ஫ҙ఺ • https://shogo82148.github.io/blog/2015/12/09/perl-datetime/ • ςετதͷϩάʹ08:59:60ͱ͍͏จࣈΛݟ͚ͭͯɺͦͷ࣌ʹݪҼෆ

    ໌ͩͬͨ࣍ͷ0࣌ͪΐ͏Ͳʹࢼ߹ΛಥͬࠐΉσόοά͕ΤϥʔͰࢮΜ Ͱ͍ͨͷ͕͏Δ͏ඵͱ෼Γमਖ਼ΛࢼΈΔ • ͔͠͠ίϯύΠϧ࣌ʹ͏Δ͏ඵΛຒΊࠐΜͰ͍ΔͷͰզʑϢʔβʹ ͸Ͳ͏͢Δ͜ͱ΋ग़དྷͶ͑ • ͏Δ͏ඵΛ஌Βͳ͍όʔδϣϯʹμ΢ϯάϨʔυͯ͠ରԠorz
  31. ͠Ύͬ͠Ύʔ໰୊

  32. ͠Ύͬ͠Ύʔ໰୊ • ʮͳ͔ͬͨΒINSERT͍ͨ͠͠ɺ͋ΔͳΒϩοΫऔ Γ͍ͨ΍Μ?ʯ • http://ichirin2501.hatenablog.com/entry/ 2015/08/23/191500 • INSERT͠Α͏ͱ͢Δͱdupͬͯɺ͡Ό͋͋Δ΍ ΜͬͯSELECT͠Α͏ͱ͢ΔͱREPEATABLE

    READͷ᠘Ͱݟ͑ͳ͍ɻҰମͲ͏͢Ε͹
  33. ͠Ύͬ͠Ύʔ໰୊͕ى͜Δͱ • Α͘Πϕϯτ։࢝࣌ʹى͜Γ͕ͪ • Πϕϯτ༻ͷνʔϜ಺ڞ௨ϢʔβσʔλΛΠ ϕϯτͷγʔϯʹೖͬͨ࣌ʹ࡞Δͱ͔΍Δ • σʔλΛࣄલ౤ೖ͢Δͷ΋ޮՌత • ͔͠͠ޙ͔Β࡞ΒΕͨϢʔβ΍νʔϜʹ͸ޮ

    Ռ͕ͳ͍
  34. ࠓͷͱ͜Ζͷରࡦํ๏ • τϥϯβΫγϣϯ֎(ίϯτϩʔϥͷ௚Լ͔Β ಡΜͩผͷϞσϧͷϝιουͳͲ)ͰॳظԽ͞ ΕͨߦΛ౤ೖ͢Δ • ͦͷޙͷຊମͷϝιουͰ͸ͦͷߦͷϩοΫ Λऔͬͯߦ͕͔ͳΒͣ͋ΔલఏͰॲཧΛଓ͚Δ • ͢ΔͱϩοΫऔΕΔ͠޾ͤ

  35. ΨϯΨϯ΍ͬͯ͘ΔΠϕϯτΛ ӈ͔Βࠨ΁΍͍͖͍ͬͯͯ͘͠ ख๏ʹ͍ͭͯ 1IPUPCZ$BUXBMLIUUQTqJDLSQ(87V

  36. ͋ΔҰिؒͷ։ൃ

  37. ͋ΔҰिؒͷ։ൃ ݟʹ͍͘ͷͰ ਅͬೋͭʹ͠ ·͚ͨ͠ΕͲ ຊ౰͸͜Μͳ ײ͡Ͱ͢ ݄Րਫ໦ۚ

  38. ͜ͷύΠϓϥΠϯΛ ଺Γͳ͘εϜʔζʹ΍͍͖ͬͯ ग़དྷΔΑ͏ʹ͢Δͷ΋ ΤϯδχΞͷ࢓ࣄ

  39. ࠓ೔օ͞Μʹ ֮͑ͯ΄͍͜͠ͱ: ֮ޛͱؾ߹

  40. ֮ޛ: αʔόʹσϓϩΠ͞ΕΔ΋ͷ͸ શͯαʔόΤϯδχΞ͕໨Λ௨͢

  41. ͳͥͳΒ ͳΜ͔τϥϒͬͨͱ͖͸ αʔόΤϯδχΞ͕΍Δ͔Β

  42. αʔόʹσϓϩΠ͞ΕΔ΋ͷ • Perlͷίʔυ • CSVͰಥͬࠐΉϚελσʔλ • Unity͕ಡΉAsset Bundle • chefͷrecipe

  43. αʔόʹσϓϩΠ͞ΕΔ΋ͷ • Perlͷίʔυ • CSVͰಥͬࠐΉϚελσʔλ • Unity͕ಡΉAsset Bundle • chefͷrecipe

    ͜ΕΒશͯΛ αʔόΤϯδχΞ͕ ೺Ѳ͢Δඞཁ͕͋Δ
  44. ΋͘͠͸୭͕஌͍ͬͯΔ͔Λ ೺Ѳ͍ͯ͠Δඞཁ͕͋Δ -> ॿ͚Λݺ΂Δ

  45. ؾ߹: పఈͨࣗ͠ಈԽ

  46. ։ൃ͸ ͢΂ͯPull RequestͰ ճ͍ͬͯΔ

  47. ϒϥϯνΛ੾ΔBOT • ఆܗͷ໋໊نଇͱϒϥϯνπϦʔΛ࣋ͬͨ topicϒϥϯνΛࣗಈੜ੒͢ΔBOT • اըଆ͚ͩͰ࡞ۀΛ։࢝Ͱ͖Δ • hotfixϒϥϯν΋੾ΕΔΑ͏ʹͳ͍ͬͯΔͷͰ मਖ਼ͯ͠։ൃ؀ڥσϓϩΠ·Ͱ͸ΤϯδχΞ Ҏ֎͕ग़དྷΔΑ͏ʹͳ͍ͬͯΔ

  48. ͔͠͠؆୯ʹPRΛ࡞ΕΔͱ • No description… • ԿΛ໨తʹ͜ͷPR͕࡞ΒΕͨͷ͔ॻ͔Εͣ ʹճ͖ͬͯͯࠔΔ

  49. ԿΛ͔ͨ͠: ϙΤϜΛॻ͍ͨ

  50. None
  51. None
  52. Τϥʔϝοηʔδ͸ 2W1H ͕͍͍Μ͡Όͳ͍͔ - @bayashi Daily https://bayashi.net/diary/2016/0719 2W1H What? Why?

    How?
  53. Pull Request΋2W1HͰ ͍͍Μ͡Όͳ͍͔ʁ ·ͩ΍ͬͯͳ͍͚ΕͲ13ͷςϯϓϨʹೖΕΔͷ΋ྑͦ͞͏

  54. اըͷਓ͕ԿΛ੍࡞͢Δͷ͔ʁ

  55. Ϛελʔσʔλ

  56. Ϛελσʔλ • DB΍੩తϦιʔε্ͷϢʔβʹมߋ͞Εͳ͍ σʔλ • ରٛޠ͸Ϣʔβσʔλ • ϦϙδτϦ಺ʹ͸CSVͰσϓϩΠ࣌ʹDB΍Ϋ ϥΠΞϯτʹ౉͢όΠφϦʹͳͬͨΓ͢Δ

  57. Ϛελσʔλ • DBʹೖΔͷ͕େ൒ͳͷͰߗ͍εΩʔϚܗࣜ • CSVΛฤू͍ͯ͠ΔΘ͚Ͱ͸ͳ͘Google SpreadsheetΛ༻͍͍ͯΔɻ͜ΕΛCSVԽ͢Δ -> BOT͕CSVʹམͱͯ͠Pull Requestʹͯ͘͠ ΕΔ

  58. ԿނGoogle SpreadsheetͰ΍Δ͔: ͍͡Δਓ͕ίϯτϩʔϧͰ͖Δ

  59. ΤΫηϧతͳ΍ͭͷ͍͍ͱ͜Ζ • දܭࢉͷؔ਺͕࢖͑Δ • ؔ਺͸ΘΓ͔͠Θ͔Γ΍͍ࣗ͢ಈԽݴޠ • εΫϦϓτ͕࢖͑Δ • σΟϨΫλʔ͕Կਓ͔GASॻ͍ͯࣗಈԽ͠ ͯΔ

  60. ࣗಈԽΛ཰ઌͯ͠΍Δ͜ͱͰ ଞͷਓʹ΋ࣗಈԽΛଅ͢

  61. ྫ͑͹Next IDൃߦ܅

  62. ͖ͬ͞ͷ͜Ε ࡞ۀதͷ΋ͷ͕ฒྻ

  63. ͖ͬ͞ͷ͜Ε ࡞ۀதͷ΋ͷ͕ฒྻ ͦΕͧΕʹϚελ σʔλ͕ଘࡏ͢Δ

  64. ͳͷͰ

  65. શͯͷγʔτΛ·͍ͨͰͲͷIDʹ ͢΂͖͔Λڭ͑ͯ͘ΕΔ܅͕ඞཁ

  66. શͯͷγʔτʁʁʁ

  67. ͖ͬ͞ͷ͜Ε ࡞ۀதͷ΋ͷ͕ฒྻ ͦΕͧΕʹϚελ σʔλ͕ଘࡏ͢Δ

  68. ͖ͬ͞ͷ͜Ε ࡞ۀதͷ΋ͷ͕ฒྻ ͦΕͧΕʹಠཱͨ͠ εϓϨουγʔτ͕ ଘࡏ͢Δ

  69. ࣮ࡍʹCSVʹ͢Δͱ͖

  70. ࣮ࡍʹCSVʹ͢Δͱ͖ ຊ൪ʹೖ͍ͬͯΔϚελͷ γʔτ

  71. ࣮ࡍʹCSVʹ͢Δͱ͖ ຊ൪ʹೖ͍ͬͯΔϚελͷ γʔτ ΠϕϯτͰ࢖͍͍ͨ Ϛελσʔλͷγʔτ

  72. ࣮ࡍʹCSVʹ͢Δͱ͖

  73. ࣮ࡍʹCSVʹ͢Δͱ͖

  74. ࣮ࡍʹCSVʹ͢Δͱ͖ ࠓσϓϩΠ͞ΕΔͱͲ͏ͳΔ͔$47

  75. ͭ·Γ εϓϨουγʔτͷ ϒϥϯν؅ཧ

  76. େྔͷΠϕϯτΛճͨ͢Ίʹ • పఈͨࣗ͠ಈԽ • PullRequestͱγʔτͰݟ͑ΔԽͱ͍͡ΕΔԽ Λ͢Δ • γʔτΛࠩ෼؅ཧͯ҆͠શʹ։ൃ • BOTͰ΍ͬͯ୭͕ԿΛ΍͍ͬͯΔ͔ΛSlackͰ

    ஌ΕΔ
  77. ͦΕͱେྔͷ։ൃ؀ڥ

  78. ։ൃ؀ڥͱ͸ • ຊ൪ͱ͸ಠཱͨ͠ಛఆͷϒϥϯνͷίʔυͱϚ ελσʔλͱΞηοτ͕σϓϩΠ͞Εͨαʔό • ϗετ͕ৼΒΕͯ։ൃ൛ΞϓϦ͔Βܨ͛ΒΕΔ • ੲ͸ϩʔΧϧͰplackup͚ͯͨ͠ΕͲࠓͱͳͬ ͯ͸Perl؀ڥ͋Δਓ΋ϩʔΧϧ͡Όͳͯ͘։ൃ ؀ڥΛ্ཱͪ͛ͯ֬ೝ͢Δ͜ͱ͕ଟ͍

  79. ੲ(৽ن։ൃ౰ॳ)͸ ʮmacopy: ϒϥϯνhogehogeΛݟΕΔΑ͏ʹ ͯ͠ʯ ʮ͸ʔ͍ʯ ͬͯ΍͔ͬͯΒdevelopmentαʔόʹϩάΠϯ ͯ͠ϒϥϯνΛ੾Γସ͑ͯεΩʔϚద༻ͯ͠Ϛ ελಥͬࠐΜͰWebAppΛ࠶ىಈͯ͠…

  80. ؾ͍ͮͨΒͣͬͱϒϥϯνσ ϓϩΠ৬ਓʹͳ͍ͬͯͨ

  81. ΞΧϯͷͰBOTʹ΍ΒͤΔ • ಉ͜͡ͱΛBOTʹ΍ΒͤΔ • UnazuSanͱ͍͏ϞδϡʔϧΛ࢖༻ͯ͠IRC͔ ΒҰ࿈ͷσϓϩΠίϚϯυΛ࣮ߦ͢ΔΑ͏ʹ ͨ͠ • ͜ΕͰίʔυ͕ॻ͚ΔΑ͏ʹͳͬͯϋοϐʔ

  82. ͔͜͠͠͏ͳͬͯ͘Δͱ

  83. ಉ࣌ʹෳ਺ͷਓ͕ผʑͷ ؀ڥΛݟ͍ͨͱ͍͏ཁ๬͕

  84. ͠Ό͋ͳ͍ͷͰෳ਺؀ڥΛ࡞Δ • devφϯτΧ͍ͬͯ͏αʔό͚ͩͩͬͨͷ͕ɺ dev01, dev02, dev03ͱ૿͑Δ • ͔͠͠࢖͍ͬͯΔͷʹଞਓ͕࢖͓͏ͱͯ͠ফ ͢ •

    εϓϨουγʔτ΍ΒϗϫΠτϘʔυͰ؅ཧ ࢝͠ΊΔ
  85. ͳ͓ಉ͡ঢ়گʹஔ͔Εͨ ผͷνʔϜ͸ ࢖͍ͬͯΔਓͷ্ʹ෩ધ ͕͋Δͱ͍͏Ṗͷӡ༻Λ ͍ͯͨ͠Β͍͠ IUUQUFDICMPHLBZBDDPN@NJSBHF@JO@EPDLFSIUNM

  86. ͠ΐ͏͕ͳ͍ͷͰ؀ڥΛ૿΍͢ • ʮ؀ڥμϒͬͯ΋͏͠ΜͲ͍ͷͰͳΜͱ͔ͳΓ· ͤΜ͔ʯ • ʮ͠ΐ͏͕ͳ͍૿΍͔͢……ʯ Ұϲ݄ޙ ʮdev14·Ͱ࡞ΔͨΊʹdevͰchefճ͠·͢ʯ ΠϯϑϥʮͳΜͰͦΜͳ͜ͱʹʂʁʯ

  87. ૿΍ͯ͠΋ॴḨ͸༗ݶͳͷͰ͢

  88. ͋”͋” ແݶʹ։ൃ؀ڥΆ͜Ά͜ ཱ͍͓ͯͨʙ

  89. + mirage

  90. (Ϧιʔε͕ڐ͢ݶΓͷ) ແݶͷ։ൃ؀ڥ • Docker಺Ͱϒϥϯν੾Γସ͑ͱcarton installͱDBϚ ΠάϨʔγϣϯΛߦͬͯplackup • Procletศར(ࢼ߹༻ʹgearmanͳͲ΋ཱͬͯΔ) • DBͱRedis͸લ͸ίϯςφ಺ʹཱ͍͕ͯͯͨɺϝϞϦ

    ͱσΟεΫ৯͏ͷͱίϯςφམͱ͢ͱશͯͳ͘ͳΔͷ ͰɺϗετʹRedisཱͯͯDB͸AuroraͰσʔλϕʔε Λ෼͚ͯಉډ͍ͯ͠Δ
  91. (Ϧιʔε͕ڐ͢ݶΓͷ)

  92. BOTͰ؀ڥΛ্ཱͪ͛ΕΔ ཪͰ͸Jenkins͕mirageͷAPIΛୟ͍ͯίϯςφ ىಈ͍ͯ͠Δ

  93. ͢ΔͱΈͳ͞Μ ޷͖์୊ͳ͞ΕΔ

  94. ίϯςφେരൃ

  95. ίϯςφ΍Πϝʔδ࡟আͱ͔͸ සൟʹ΍͍ͬͯΔ͕0%ʹͳͬͯdev͕ࢮ๢ͨ͠ ͜ͱ͸Կ౓΋͋Δ σΟεΫ͸༗ݶ

  96. ͱΓ͋͑ͣσΟεΫΛ εέʔϧΞοϓͨ͠ͷͱ ίϯςφͷμΠΤοτ

  97. ͋ͱࣥࣄౖ͕Δ ͜ΕݟͯΈΜͳʮ͋ʙ࢖ͬͯͳ͍ͷ͋ͬͨΘʯͬͯݴͬͯ མͱ࢝͠ΊΔͷͰศར ͋ͱ࣌ؒΞΫηε͕ͳ͚Ε͹མͱ͢ͱ͔ ݄༵ேʹશ෦མͱ͢ िӽ͠ͷίϯςφ͸࣋ͨͳ͍ ͱ͔ ΍ͬͯΔ +FOLJOTMPHPCZ+FOLJOT1SPKFDUIUUQTKFOLJOTJP

  98. ϝϞϦͱCPU΋༗ݶ

  99. ݪҼ͸σόοά༻εΫϦϓτ͕ ϝϞϦόΧ৯͍͔ͭฒྻ࣮ߦ • QAͳͲͰ࢖͑ΔΑ͏ʹεΫϦϓτΛ࣮ߦ͢Δ WebUIΛ༻ҙ͍ͯ͠Δ͕ɺͦͷҰͭʹര஄͕ ͋ͬͨ • ͍ΘΏΔμϛʔσʔλ࡞Δܥɻ͜͏͍͏ͷ͸ ίʔυϨϏϡʔ͕ૄ͔ʹͳΓ͕ͪͩ͠ɺຊ൪ ͱ͸ҧ͏ෛՙʹͳΓ͕ͪ

  100. ͦΜͳ͜ΜͳͰେྔʹ؀ڥΛཱͯΕ Δ͜ͱʹΑͬͯ ਺ेฒྻͷ։ൃ͕Մೳʹͳ͍ͬͯΔ

  101. ·ͱΊ • Perl͸ݱ໾Ͱಈ͍͍ͯ·͋͢ɻӡ༻͍ͯ͠·͋͢ɻ • ։ൃύΠϓϥΠϯΛਂͯ͘͠εέʔϧͤ͞Δͱαʔ Ϗεͷӡ༻ͷ෯͕޿͕Γ·͢ • ͦΜͳΘ͚ͰوॏͳPerlΤϯδχΞ΍߈Ίӡ༻͢ ΔͨΊʹύΠϓϥΠϯ૊Έ͍ͨΤϯδχΞ͞Μ͍ ·ͤΜ͔ʔʔʔʔʔʂʂʂʂ[Ad]↓

  102. ͦͷଞൃද͖͠Εͳ͔ͬͨ΍ͭ • ͋ͱ͔ΒϚϧνςφϯτʹ͢Δͱ͖ͷۤ࿑ • σϓϩΠʹ͍ͭͯ(papix͕௚લʹ͍Ζ͍Ζ΍ͬͯ ͍ΔΜ͡Όͳ͍͔ʁ) • ௕͍͜ͱ΍͍ͬͯΔͱϞδϡʔϧͷޙํޓ׵ഁյ ʹ೰·͞ΕΔ͕ΞάϨογϒʹ্͛Δ •

    ςετ͕20෼͔͔ΔͷͰۚͰԥΔ༧ఆͷ࿩