Diverse.tech #1 〜レガシーシステムを語らう夜〜
͞ΑͳΒɺϨΨγʔը૾มγεςϜDiverse.tech #1 ʙϨΨγʔγεςϜΛޠΒ͏ʙNovember 22, 2018Daichi TOMA
View Slide
About Meᙛᚸ େઍ @Amothicגࣜձࣾ DiversePoiboy ͷαʔόαΠυΠϯϑϥΛݟͨΓ৫पΓͷվળΛߦͬͯ·͢
ϨΨγʔγεςϜͰ໘ͯ͠ࠔΔ͜ͱ• ো͕ى͖ͯ͠ํ͕͔Βͳ͍ɺ ͘͠म෮खॱ͕ෳࡶ• εέʔϧΞτɺεέʔϧΠϯ͕͍͠○ εέʔϥϏϦςΟ͕ߟྀ͞Ε͓ͯΒͣɺ Մ༻ੑ͍
ϨΨγʔγεςϜ Մ༻ੑ৴པੑ͕͍
ϨΨγʔγεςϜΛ ͲͷΑ͏ʹվળ͢Δ͔
Մ༻ੑ৴པੑΛ ࣗલͰٻ͍ͯ͘͠ͷ ίετ͕ߴ͍
ͳΔ͘ϚωʔδυαʔϏεΛͬͯίετΛԼ͍͛ͯ͘
Poiboy ͷطଘͷը૾มγεςϜnginxϩʔυόϥϯγϯάsquidΩϟογϡngx_small_lightը૾มRequestS3
طଘγεςϜͷ• nginx ͷઃఆ͕खॻ͖ɺނো࣌ʹखಈͰ config Λ ॻ͖ͯ͠Γସ͑ͳ͚ΕͳΒͳ͍○ ϔϧενΣοΫར༻͍ͯ͠ͳ͔ͬͨ• ߏஙͷखॱ͕ࡶɺखಈͰαʔόͷηοτΞοϓΛߦ͏ඞཁ͕͋Δ• ߏஙͷखॱ͕ෳࡶͷͨΊɺεέʔϧΞτ εέʔϧΠϯ͕େม
ͭΒ͍
ϨΨγʔγεςϜΛ Ұͭͣͭஔ͖͍͑ͯ͘
CloudFront ͷར༻• ͓खܰ CDN• nginx ͱ squid Λ CloudFront ʹஔ͖͑Δ• ैྔ՝ۚͷΦʔτεέʔϧͰɺ େྔͷΞΫηε͕དྷΔ͜ͱʹͳͬͯ҆৺• ແྉͰ SSL ূ໌ॻ͑Δ
Docker ͷ׆༻• ngx_small_light ͷηοτΞοϓͷίετΛ Լ͛ΔͨΊ Docker Խ͢Δ• https://github.com/diverse-inc/docker-ngx-small-light• υΩϡϝϯτΛݟͳ͕ΒߏஙΛؤுΒͳͯ͘ྑ͍• Docker Hub Λ׆༻ͯ͠ɺϏϧυࣗಈԽ͢Δ
ECS ͷར༻• Docker ίϯςφΛ؆୯ʹ࣮ߦɺεέʔϧ Ͱ͖Δ• ࠓ·ͰखಈͰεέʔϧΛߦ͏ඞཁ͕͕͋ͬͨɺෛՙʹԠͯ͡ඵͰࣗಈతʹεέʔϧ• ϩʔυόϥϯγϯάͯ͘͠ΕΔ
Poiboy ͷ৽͍͠ը૾มγεςϜCloudFrontΩϟογϡECSίϯςφΦʔέετϨʔγϣϯngx_small_lightը૾มRequestS3
Poiboy ͷ৽͍͠ը૾มγεςϜ• ෛՙʹԠͯ͡উखʹεέʔϧ• ো࣌ϚωʔδυαʔϏε͕ྑ͠ͳʹͯ͘͠ΕΔ• खಈͰΔ࡞ۀ͕ഉআ͞Ε͍ͯΔ
࠷ߴ
·ͱΊ• ϨΨγʔγεςϜՄ༻ੑ৴པੑ͕͍• ϚωʔδυαʔϏεΛ͍ɺίετΛ Լ͛ͭͭஔ͖͑Δ• ߏཧίʔυԽࣗ͠ಈԽ͢Δ
༨ஊ• ͦΖͦΖը૾มͯ͘͠ΕΔ ϚωʔδυαʔϏε͕ AWS ʹཉ͍͠• AWS ͡Όͳ͚Ε Cloudinary ͱ͔ImageFlux ͱ͔͋Γ·͢