Upgrade to Pro — share decks privately, control downloads, hide ads and more …

複数のマイクロサービスと連携したWeb APIの設計と構築 in Playframework Scala / play-scala with services

Yusuke Wada
September 29, 2016

複数のマイクロサービスと連携したWeb APIの設計と構築 in Playframework Scala / play-scala with services

https://eventdots.jp/event/599919
にて発表したスライドです。

Yusuke Wada

September 29, 2016
Tweet

More Decks by Yusuke Wada

Other Decks in Programming

Transcript

  1. • ໊લɿ࿨ా༞հ • ܦྺ • ೥݄ɿ۝भେֶେֶӃଔ • ೥݄ɿෆಈ࢈޲͚Ϋϥ΢υαʔϏεͷ։ൃձࣾ΁ೖࣾ • 8JDLU

    +BWB Ͱ8FCΞϓϦͷ։ൃɾอकӡ༻ • ೥݄ɿΫϥεϝιουגࣜձࣾ΁ೖࣾ • ϞόΠϧΞϓϦͷ"1*։ൃΛ୲౰ 3 ࣗݾ঺հ
  2. 4DBMBʁ • 0CKFDU0SJFOUFE.FFUT'VODUJPOBM • 53"*54 • $PNCJOFUIFqFYJCJMJUZPG
 +BWBTUZMFJOUFSGBDFT
 XJUIUIFQPXFSPGDMBTTFT
 5IJOLQSJODJQMFENVMUJQMFJOIFSJUBODF

    • 1"55&3/."5$)*/( • 5IJOLlTXJUDIzPOTUFSPJET
 .BUDIBHBJOTUDMBTTIJFSBSDIJFT 
 TFRVFODFT BOENPSF 9 The Scala Programming Language 
 http://www.scala-lang.org/
  3. 1MBZGSBNFXPSLʁ • %FWFMPQFSGSJFOEMZ • 5ZQFTBGFUZ • #VJMUJOUFTUJOHUPPMT • 4DBMFQSFEJDUBCMZ •

    /POCMPDLJOH*0 • #VJMUPO"LLB • .PEFSOXFCNPCJMF • 3&45GVMCZEFGBVMU • +40/JTBpSTUDMBTTDJUJ[FO 10 Play Framework - Build Modern & Scalable Web Apps with Java and Scala https://www.playframework.com/
  4. ͳͥ1MBZGSBNFXPSL4DBMB͔ • ։ൃ໘ • େن໛ɾ௥Ճ։ൃͷલఏʹͨͬͨͱ͖ͷϝϯςφϯεੑ • -JOLFE*OΛ͸͡Ίͱͨ͠େن໛γεςϜͰͷ࠾༻ࣄྫ͋Γ  • ӡ༻໘

    • +7. "LLBɻੑೳ͕ظ଴Ͱ͖Δ • +BWBͰͷӡ༻஌ݟɾӡ༻πʔϧ͕ྲྀ༻Ͱ͖Δ 13 [*] The Play Framework at LinkedIn | LinkedIn Engineering https://engineering.linkedin.com/play/play- framework-linkedin
  5. ։࢝ɾऴྃϩάͷྫ • <*/'0>GSPNUSBOTBDUJPOJO5SBOTBDUJPO"DUPS-PHHFSBLLBBDUPSEFGBVMU EJTQBUDIFS
 USBOTBDUJPOUZQF$PJO&YDIBOHFUSBOTBDUJPOUBH$PJO&YDIBOHF4UBSU USBOTBDUJPOUSBOTBDUJPO)BTI,FZGDEGCCFGC USBOTBDUJPOKTU5SBOTBDUJPO%BUF5JNF5 • <*/'0>GSPNUSBOTBDUJPOJO5SBOTBDUJPO"DUPS-PHHFSBLLBBDUPSEFGBVMU EJTQBUDIFS


    USBOTBDUJPOUZQF$PJO&YDIBOHFUSBOTBDUJPOUBH$PJO&YDIBOHF'JOJTI
 USBOTBDUJPOUSBOTBDUJPO)BTI,FZGDEGCCFGC
 USBOTBDUJPOQSFTFOU*E&
 USBOTBDUJPOKTU5SBOTBDUJPO%BUF5JNF5 USBOTBDUJPOSFTVMU4VDDFTTUSBOTBDUJPOOPUF$PJOFYDIBOHFDPNQMFUFEz • "DUPS-PHHJOHͰຊॲཧͷύϑΥʔϚϯεΛམͱͣ͞ඇಉظϩάग़ྗ͕Մೳ 25 Logging (Scala) — Akka Documentation http://doc.akka.io/docs/akka/2.0/scala/logging.html
  6. ͳʹ͕ͭ͘ΕΔ͔ʁ • ෳ਺ͷϚΠΫϩαʔϏεͱ࿈ܞͨ͠όοΫΤϯυ • %ZOBNP%#΍424΋ҰछͷϚΠΫϩαʔϏε • ඇಉظʹΞΫηεɺཉ͍͠෦෼Λ౷߹ͯ͠ΫϥΠΞϯτ΁ฦ͢ • େن໛ͳ8FC"1* •

    σβΠϯύλʔϯ͕ద༻Ͱ͖ΔΫϥεߏ଄ • ؔ਺ܕͷ؆͕ܿ͞ద༻Ͱ͖ΔϩδοΫ • ߴՄ༻ΞϓϦέʔγϣϯ • +BWBͷڧྗͳΤίγεςϜͷԸܙʹ͔͋ͣΕΔ • l+7.্Ͱಈ͔͠ଓ͚Δʹ͸z஌ݟ͕ྲྀ༻Մೳ 26
  7. 1MBZ4DBMB౤ࢿ͢ΔՁ஋͕͋Δ͔ʁ • ΞϦʂ • େن໛ʢΤϯυϙΠϯτ͕Ҏ্ʣ • όοΫΤϯυͱͯ͠ͷ"1*։ൃ • +BWB΍3VCZΤϯδχΞ͕ͦΘͦΘ͍ͯ͠Δ •

    ஫ҙʂ • ͪΐͬͱͨ͠αʔϏεΛ࡞Δఔ౓Ͱ͸ԸܙΛײ͡ͳ͍͔΋͠Ε·ͤ Μɻ΍ΔͳΒҊ݅ϨϕϧͰɻ৽αʔϏεɺϑϧϦχϡʔΞϧ • ڭҭίετɻΤίγεςϜ΋ؚΊͯ࢖͍͜ͳͤΔΑ͏ʹͳΔ͸
 ೥ఔ౓ඞཁɻͰ͖Ε͹ઌಋͯ͘͠ΕΔϝϯόʔ͕ډΔͱޮ཰ྑ͍ɻ 28