Slide 1

Slide 1 text

Kuiperbelt Your synchronous application plug in Asynchronous Protocol

Slide 2

Slide 2 text

agenda • about kuiperbelt • feature • use case • todo • summary

Slide 3

Slide 3 text

͜Μͳ͜ͱ͋Γ·ͤΜ͔ʁ • AnyEventͬͯԿʁ • AnyEvent࢖ͬͯΈ͚ͨΕͲ٧·ΔΜ͚ͩΕ Ͳ • AnyEventΉ͔͍ͣ͠

Slide 4

Slide 4 text

ͦΜͳ๻ͷͨΊʹͭ͘Γ·ͨ͠

Slide 5

Slide 5 text

kuiperbelt Asynchronous Protocol Proxy

Slide 6

Slide 6 text

install & launch $ go get github.com/mackee/kuiperbelt $ go install github.com/mackee/kuiperbelt $ kuiperbelt

Slide 7

Slide 7 text

Ͱ͖Δ͜ͱ • /connect͍ͬͯ͏ΤϯυϙΠϯτʹΞΫη εΔͱUUID഑ΒΕΔ • long polling/cometͰͭͳ͕Δ

Slide 8

Slide 8 text

Ͱ͖Δ͜ͱ • /sendʹUUIDؚΜͩjsonΛ౤͛ΔͱͦͷUUID Λ഑ΒΕͨΫϥΠΞϯτʹϝοηʔδ͕ಧ͘ • /broadcastʹద౰ʹpost͢Δͱͭͳ͕͍ͬͯ Δౕશ෦ʹಧ͘

Slide 9

Slide 9 text

Ϣʔεέʔε • νϟοτΞϓϦͱ͔Ͱࠓ·ͰAnyEventͱ͔ Ͱॻ͍͍ͯͨStreamͷ෦෼͚ͩΛ෼཭ͯ͠ ָΛ͢Δ

Slide 10

Slide 10 text

ԿͰॻ͍͔ͨ • PerlͰΠϕϯτۦಈ͸೉͍͠ • GoͰී௨ͷ΢ΣοϒΞϓϦέʔγϣϯΛॻ ͘ͷ͸ΩπΠ • ͡Ό͋૊Έ߹ΘͤͨΒ͍͍ͷͰ͸

Slide 11

Slide 11 text

TODO • ΞΫηε੍ݶ(UUIDΛ͚ͭͯ/connect͢Δ • CometҎ֎ͷϓϩτίϧ • ͳΜ͔εέʔϧ͢Δ࢓૊ΈʢͳΜ͔όʔϯͬͯ • GroupΛ࡞ͬͯͦ͜ʹೖ͍ͬͯΔίωΫγϣϯ ʹରͯ͠౤͛ΔBroadcast͢Δ

Slide 12

Slide 12 text

·ͱΊ • Go͸ເΛ࣮ݱͰ͖Δྑ͍ݴޠͰ͢ • ΈΜͳGo΍Γ·͠ΐ͏ • ฐࣾʢ໘ന๏ਓʣͰ͸PerlΤϯδχϠʔΛ ืू͍ͯ͠·͢