Hosting Casual Talks #5 @さくらインターネット福岡オフィス @yuuk1t / id:y_uuki
͘͞ΒΠϯλʔωοτגࣜձࣾ(C) Copyright 1996-2019 SAKURA Internet Inc͘͞ΒΠϯλʔωοτݚڀॴݸମతDBΫΤϦΩϟογϯάߏ2019/03/22 ݚڀһ ௶ ༎थHosting Casual Talks #5 @Ԭ@yuuk1t / id:y_uuki
View Slide
21. ΤοδίϯϐϡʔςΟϯάͱWebϗεςΟϯά2. ݸମܕσʔληϯλʔ3. ݸମతDBΫΤϦΩϟογϯά4. ·ͱΊΞδΣϯμ
1.ΤοδίϯϐϡʔςΟϯάͱWebϗεςΟϯά
4ΤοδίϯϐϡʔςΟϯάɾIoTɼεϚʔτγςΟɼԾݱ࣮ͳͲਓʑͷۙʹίϯϐϡʔςΟϯά͕ਁಁɾਓΛͨͤͣʹԠ͠ͳ͚ΕͳΒͳ͍ɾΫϥυίϯϐϡʔςΟϯάͰɼωοτϫʔΫϨΠςϯγ͕େ͖͘ߴʹԠͰ͖ͳ͍ɾΤϯυϢʔβʔͷۙʢΤοδʣʹαʔόΛஔͯ͠ɺཁٻΛॲཧCloudEdgeEdgeEdgeEdgeωοτϫʔΫϨΠςϯγ࠷খԽ
5WebϗεςΟϯάͷద༻ͱ੍ɾWordPressͷΑ͏ͳσʔλϕʔεΛͭಈతίϯςϯπ৴ͷͨΊͷWebΞϓϦέʔγϣϯΛରͱ͢ΔɾΞϓϦέʔγϣϯϩδοΫΛมߋͤͣʹɼΞϓϦέʔγϣϯΛΤοδʹஔ͠ɼԠΛ্͍ͨ͠ɾΤϯυϢʔβʔͷॴʹΑΒͣಉ͡σʔλΛฦ͞ͳ͚Ε͍͚ͳ͍ɾ֤ΤοδͰಉҰͷσʔλΛಡΈग़͠Ͱ͖ͳ͚ΕͳΒͳ͍
6ΤοδίϯϐϡʔςΟϯάͷ՝EdgeCloudɾΤοδؒͰσʔλΛڞ༗ͯ͠ಡΈॻ͖͍ͨ͠ɾΞϓϦέʔγϣϯΛมߋͰ͖ͳ੍͍ͷͨΊɼσʔλͷҰ؏ੑΛ؇ΊͮΒ͍ɾ͋ΔΤοδ͕σʔλΛॻ͖ࠐΉͱ͖ʹͯ͢ͷΤοδ͕Ԡ͢Δ·Ͱಉظ͕ͪඞཁɾΤοδؒͰσʔλͷҰ؏ੑΛอͱ͏ͱ͢ΔͱɼಉظͪʹΑΓੑೳԼEdgeEdge
7CDNʹΑΔHTTPΩϟογϡɾΤοδΛ༻͍ͯԠΛ্ͤ͞ΔͨΊʹɼCDNʹΑΔHTTPΩϟογϡ͕Α͘ར༻͞ΕΔɾಈతίϯςϯπͷHTTPΩϟογϡͰɼ1ͭҎ্ͷDBϨίʔυ͔Βੜͨ݁͠ՌΛΩϟογϡ͢Δɾੜ݁ՌͱDBϨίʔυͷରԠΞϓϦέʔγϣϯϩδοΫʹΑΓܾ·ΔɾϨίʔυ͕ߋ৽͞Εͨͱ͖ʹɼͦͷߋ৽͕Өڹ͢Δ෦ͷΈͷΩϟογϡΛߋ৽͍ͨ͠
8WebϗεςΟϯάͷCDNద༻ͷ՝ɾWebΞϓϦέʔγϣϯ௨ৗɼDBϨίʔυͱੜ݁ՌͷରԠؔΛอ͍࣋ͯ͠ͳ͍͜ͱ͕ଟ͍ɾΞϓϦέʔγϣϯΛมߋͤͣʹɼରԠؔΛߏங͢Δ͜ͱ͍͠ɾରԠ͕ؔΘ͔Βͳ͚ΕɼඇޮͳΩϟογϯάʹͳΔ·ͨݹ͍σʔλͷಡΈࠐΈΛڐ͢͜ͱʹͳΔɾߋ৽ॻ͖ࠐΈΛݕͨ͠ͱ͖ʹͯ͢ͷΩϟογϡΛഁغ͢Δ =>ΩϟογϡώοτԼɾTTLʹΑΔΩϟογϡഁغ => Ұ؏ੑͷԼ
2.ݸମܕσʔληϯλʔ
10ݸମܕσʔληϯλʔɾਓʑͷੜ׆ʹίϯϐϡʔςΟϯά༹͕͚ࠐΜͰ͍͘ɾΫϥυͷϚγϯύϫʔ͕͔͙͋ͨͦ͢͜ʹ͋ΔΑ͏ʹ͍ͨ͠ɾ֤ΤοδͱΫϥυ͕༗ػతʹڠௐ͢Δ͜ͱ͕ඞཁɾ֤ΤοδؒͷσʔλͷҰ؏ੑΛอͪͭͭɼޮΑ͘σʔλΛಡΈॻ͖Մೳͱ͢Δɾ֤ݸମಠཱͯ͠ػೳ͠ͳ͕Βɼ૯ମͱͯ͠౷͞Ε͍ͯΔΑ͏ʹݟ͑ΔΑ͏ͳݸମతͳσʔληϯλʔΛࢦ͢
ݸମܕσʔληϯλʔʹͭͳ͕ΔൃΛͬͯղܾ͢Δ
3.ݸମతΫΤϦΩϟογϯά
13ࢄڠௐΫΤϦΩϟογϡɾΞϓϦέʔγϣϯͷ֎ଆͷσʔλϕʔεͰΩϟογϡΛཧ͢ΔɾΞϓϦέʔγϣϯαʔόʹଐͨ͠DBϓϩΩγʹΑΓɼDBΫΤϦ୯ҐͰΩϟογϡ͢ΔɾΞϓϦέʔγϣϯͱDBϓϩΩγΛΤοδʹஔ͠ɼߴԠͤ͞ΔɾDBϓϩΩγؒͰڠௐͯ͠ɼΩϟογϡΛڞ༗͢ΔCDNͷ՝Ͱ͋ΔΞϓϦέʔγϣϯมߋඞཁੑΛղܾ
DBCacheProxy14DBΫΤϦΩϟογϡΞʔΩςΫνϟDBCloudEdgeDBCacheProxyAppWebRead/WriteEdgeRead/WriteAppWebAppWebΩϟογϡڞ༗
15దԠతΫϥελ੍ޚҰ؏ੑͱੑೳͷτϨʔυΦϑΛղܾɾ ڞ༗ΩϟογϡͷҰ؏ੑҡ࣋ͷͨΊʹɼΩϟογϡߋ৽࣌ʹશΤοδͷಉظΛͨͳ͚ΕͳΒͳ͍ɾԠͷ͍ΤοδʹΑΓ͋ΔΤοδͷߋ৽ॲཧ͕ϒϩοΫ͞ΕΔɾෆௐͳΤοδͷॲཧΛ֎෦͔Βఀࢭͤ͞ɼΩϟογϡߋ৽ΛఘΊΔ
16దԠతΫϥελ੍ޚͷ࣮ݱɾ(1) ߋ৽ॲཧΛ࣮ߦ͍ͯ͠ΔΤοδ͕ෆௐͳΤοδΛݕग़ɾ(2) ݕग़ޙɼதԝσʔλϕʔεʹෆௐͷΤοδ͔ΒͷΫΤϦΛॲཧ͠ͳ͍Α͏ʹୡ͢Δɾ(3) ࢦྩͷྃΛͬͯߋ৽ॲཧΛܧଓ͢ΔɾதԝσʔλϕʔεͷલஈʹϓϩΩγΛஔ͠ɼΤοδ͔ΒͷΫΤϦͷ࣮ߦՄ൱Λཧ͢Δ
DBCacheProxy17దԠతΫϥελ੍ޚΞʔΩςΫνϟDBCloudEdgeDBCacheProxyAppWebRead/WriteEdgeRead/WriteAppWebAppWeb(1) ෆௐͳΤοδΛݕ DBCacheProxy(2) ෆௐͳΤοδͷΫΤϦΛࢭΊΔΑ͏ʹୡ
18ݸମΫΤϦΩϟογϡͷߟɾ௨ৗͷΫϥυίϯϐϡʔςΟϯάͰར༻͢ΔͱɼதԝσʔλϕʔεͷεέʔϧΞοϓΛΒͤΔ͜ͱ͕Մೳɾͨͩ͠ɼదԠతΫϥελ੍ޚʹΑΓΞϓϦέʔγϣϯͱΩϟογϡϓϩΩγ͕શ໓͠ͳ͍Α͏ʹอূ͢Δඞཁʹ͋ΔɾଟͷΤοδ͕͋ΔલఏͩͱɼΤοδΛఀࢭͤͯ͞ɼΫϥυʹόΠύεՄೳ
4.·ͱΊ
20·ͱΊɾΤοδίϯϐϡʔςΟϯάʹΑΓɼWebϗεςΟϯάͷԠੑೳΛ্͍ͤͨ͞ɾݸମܕσʔληϯλʔͷలΛͬͯղܾ͢ΔɾಈతίϯςϯπͷHTTPΩϟογϡͷ՝ => DBΫΤϦΩϟογϡʹΑΓղܾɾಉظͪʹΑΔੑೳԼͷ՝ => దԠతΫϥελ੍ޚʹΑΓղܾɾσʔλͷ؍ͰΫϥυͱΤοδΛ༗ػతʹ݁߹͢ΔͨΊͷୈ1า