Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

ۙ೥ͷ3&45ͷਓؾ͸ɺΞʔΩςΫνϟͷར఺ͷଟ͘Λؚ·ͳ͍ɺ΄΅3&45GVMͳ"1*ͷڻ ҟతͳ੒௕Λ΋ͨΒ͠·ͨ͠ɻ͜ͷ࣮༻తͳΨΠυΛ࢖༻ͯ͠ɺ࣌ؒͱͱ΋ʹਐԽ͢Δ༗ ༻ͳ3&45"1*Λઃܭ͢ΔͨΊʹඞཁͳ͜ͱΛֶͼ·͢ɻ͜ͷຊͰ͸ɺ͞·͟·ͳυϝΠ ϯʹ·͕ͨΔιϦϡʔγϣϯʹয఺Λ౰ͯɺੈքͰ࠷΋੒ޭ͍ͯ͠Δ෼ࢄίϯϐϡʔςΟ ϯάγεςϜͰ͋Δ8PSME8JEF8FC༻ʹઃܭ͞ΕͨπʔϧΛ࢖༻ͯ͠ɺڧྗͰ҆શͳΞ ϓϦέʔγϣϯΛ࡞੒͢Δํ๏Λࣔ͠·͢ɻ

Slide 4

Slide 4 text

ίϨΫγϣϯύλʔϯ΍७ਮͳϋΠύʔϝσΟΞΛؚΉ"1*ઃܭઓུΛݕ౼͢Δ ϋΠύʔϝσΟΞ͕දݱΛҰ؏ͨ͠"1*ʹ݁ͼ෇͚Δํ๏Λཧղ͢Δ 9.%1͓Αͼ"-14ϓϩϑΝΠϧܗ͕ࣜͲͷΑ͏ʹ8FC"1*ͷʮηϚϯςΟοΫνϟϨϯ δʯΛຬͨ͢ͷʹ໾ཱ͔ͭΛൃݟ͢Δ μʔεʹ͍ۙඪ४Խ͞ΕͨϋΠύʔϝσΟΞσʔλܗࣜͷৄࡉ "1*࣮૷Ͱ)551Λ࢖༻͢ΔͨΊͷϕετϓϥΫςΟεΛద༻͢Δ +40/-%ඪ४͓ΑͼͦͷଞͷϦϯΫσʔλΞϓϩʔνΛ࢖༻ͯ͠8FC"1*Λ࡞੒͢Δ ૊ΈࠐΈγεςϜͰ3&45Λ࢖༻͢ΔͨΊͷ$P"1ϓϩτίϧΛཧղ͢Δ

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

https://twitter.com/fielding/status/1108177659375214592

Slide 7

Slide 7 text

https://www.slideshare.net/ColdFusionConference/a-bit-of-rest/

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

https://www.tbray.org/ongoing/When/201x/2018/11/18/Post-REST

Slide 10

Slide 10 text

• RESTful imperfections • Latency, Coupling, or Short life • A word on GraphQL, RPC • Post-REST: • Messaging and Eventing • Orchestration ] • Persistent connections • Brave New World! ·

Slide 11

Slide 11 text

A word on RPC · By which, these days, I guess I must mean gRPC. I dunno, I’m old enough that I saw generation after generation of RPC frameworks fail miserably; brittle, requiring lots of configuration, and failing to deliver the anticipated performance wins. Smells like making RESTful APIs more tightly coupled, to me, and it’s hard to see that as a win. But I could be wrong. ¶

Slide 12

Slide 12 text

Brave New World! · REST still provides a good clean way to decompose complicated problems, and its extreme simplicity and resilience will mean that if you want to design networked apps, you’re still going to have to learn that way of thinking about things.

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

https://www.infoq.com/jp/articles/overcoming-restlessness/ "RESTlessness"Λࠀ෰͢Δ GraphQL΍gRPCɼApache Kafkaͱ͍ͬͨ৽͍͠APIϓϩτίϧ͕ɼRESTʹج͍ͮͨHTTP APIʹ ୅ΘΔ΋ͷͱͯ͠ਓؾΛूΊ͍ͯ·͢ɻ͜ͷهࣄͰ͸ɼRESTύϥμΠϜͷ௕ॴ͸1ର1ͷϓϩτί ϧൺֱͰ͸දݱͰ͖ͳ͍ɼͱ͍͏ओுΛల։͠·͢ɻRESTͷ୅ΘΓΛ୳͢ͷͰ͸ͳ͘ɼιϑτ ΢ΣΞΤϯδχΞ࢈ۀ͸ɼ੒ख़ͨ͠RESTΤίγεςϜΛج൫ͱͯ͠ɼ৽ͨͳϓϩτίϧͷٕज़త ௕ॴΛ୳ٻ͢ΔखஈΛ໛ࡧ͢Δ΂͖Ͱ͢ɻ

Slide 15

Slide 15 text

https://www.infoq.com/jp/articles/overcoming-restlessness/ RESTlessͷগͳ͍ະདྷ΁ ݌఻͞ΕΔςΫϊϩδτϨϯυ͸ଟ͘ͷ৔߹ɺݹ͍ΞϓϩʔνΛ৽ͨͳΞϓϩʔνͰஔ͖׵͑Δ͜ ͱΛᨳ͍·͢ɻ͔͠͠ݱ࣮ʹ͸ɺιϑτ΢ΣΞΤϯδχΞϦϯάͷਐԽ͸௨ৗɺ૚Λ੒ͯ͠ى͜Δ ΋ͷͰ͢ɻ৽ͨͳٕज़ֵ৽͕ɺͦΕʹଓ͘৽ͨͳΠϊϕʔγϣϯͷجૅΛங͘ͷͰ͢ɻGraphQL΍ gRPC΍KafkaͷΑ͏ͳ৽͍͠APIϓϩτίϧ͸ɺҰ෦ͷ෼ࢄॲཧͷγφϦΦʹ͓͍ͯ͸ɺϦιʔε Λج൫ͱͯ͠ɺJSONͰΤϯίʔυ͞ΕɺHTTPͰసૹ͞ΕΔϝοηʔδΛஔ͖׵͑ΔͰ͠ΐ͏ɻ ͨͩ͠ɺ෼ࢄγεςϜͷਐԽʹ͓͚ΔRESTͷҨ࢈͸ɺͦͷ࣮૷ͷৄࡉʹ͍ͭͯͰ͸ͳ͘ɺϢχ όʔαϧ઀ଓͷϑϨʔϜϫʔΫΛఏڙ΍ɺαʔϏείϯγϡʔϚʔΛϓϩόΠμʔ͔Β੾Γ཭͠ɺ ࢖͍΍͢͞ͱΞΫηγϏϦςΟΛڧௐ͢ΔϢϏΩλεʢภࡏʣͳಛੑʹΑΔ΋ͷͰ͢ɻ WebͷΞʔΩςΫνϟελΠϧͱͯ͠౰ॳఆٛ͞Ε͍ͯͨRESTΛɺϙετWebύϥμΠϜͷιϑ τ΢ΣΞΤϯδχΞϦϯάͷجૅͱ͢Δ͜ͱ͕Ͱ͖Δͷ͸ɺ͜ΕΒͷಛੑͰ͢ɻ

Slide 16

Slide 16 text

No content