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

The High Velocity Web Framework For Java and Scala

The High Velocity Web Framework For Java and Scala

2016-06-27 JJUG ナイトセミナー

yuichiro umezawa

June 28, 2016
Tweet

More Decks by yuichiro umezawa

Other Decks in Technology

Transcript

  1. ࣗݾ঺հ w കᖒ༤Ұ࿠ !HBSCBHFUPXO  w גࣜձࣾ%54 w ୤ໟαΠτ༧໿؅ཧ 4"4USVUT

     w 7*4"ൃڅࢧԉ 1MBZ  w ΦϜχνϟωϧϏοάσʔλ )BEPPQ  w ՝֎׆ಈ w 8&# %#13&44WPMدߘ w %FWFMPQFST4VNNJUొஃ 2
  2. Ξϯέʔτ w Ͳͷ8FCϑϨʔϜϫʔΫΛ࢖͍ͬͯ·͔͢ʁ ☑ 4FBTBS 4"4USVUT 44USVUT 5FFEB FUD 

    ☑ 4USVUT ☑ 4USVUT ☑ 4QSJOH'SBNFXPSL 4QSJOH.7$ FUD  ☑ +BWB&& +4' +"934 FUD  ☑ 1MBZ1MBZ 7
  3. Playͷྺ࢙ 10 ~2009 2010 2011 2012 2013 2014 2015 2016

    Play1 1.0 1.1 1.2 1.3/1.4 1.4.2 Play2 2.0 2.1/2.2 2.3 2.4 2.5.4 ຋༁Λ࢝Ίͨͷ͸ ͜ͷࠒ
  4. ͦͷଞͷྺ࢙ 11 ~2009 2010 2011 2012 2013 2014 2015 2016

    Seasar2 2.4.40 2.4.43 2.4.45 2.4.46 2.4.47 2.4.48 EoL Struts 1.3.10 EoL Struts2 2.1.8 2.2.1.1 2.3.1.1 2.3.8 2.3.16 2.3.20 2.3.24.1 2.5 Spring 3.0 3.1 3.2 4.0 4.1 4.2 4.3 Java EE 6 7 Rails 2.3 3.0 3.1 3.2 4.0 4.1 5.0beta
  5. पลͷྺ࢙ 12 ~2009 2010 2011 2012 2013 2014 2015 2016

    Java 6 7 8 IE 8 9 10 11 iPhone 3GS 4 4S 5 5S 6 6S SE AWS EMR VPC RDS Route53 ౦ژ Ϧʔδϣϯ Dynamo DB Redshift Kinesis Aurora Lambda API Gateway ؖࠃ Ϧʔδϣϯ
  6. 2009~2011 14 ~2009 2010 2011 2012 2013 2014 2015 2016

    Play1 1.0 1.1 1.2 1.3/1.4 1.4.2 Seasar2 2.4.40 2.4.43 2.4.45 2.4.46 2.4.47 2.4.48 EoL Struts 1.3.10 EoL Rails 2.3 3.0 3.1 3.2 4.0 4.1 5.0beta Java 6 7 8 IE 8 9 10 11
  7. Play1 w ෹;FOHVMBSJUZ چ;FOFYJUZ  w (VJMMBVNF#PSU !HVJMMBVNFCPSU  w

    +BWB੡ w +BWB༻ w (SPPWZςϯϓϨʔτ w 1MBZίϯιʔϧ 1ZUIPOεΫϦϓτ  w JWZ 16
  8. Play1 w +BWBͰ͸ͳ͍Կ͔ w HSPPWZςϯϓϨʔτ w QZUIPOεΫϦϓτ w ׂΓ੾ͬͨύοέʔδ໊ w

    QMBZ QMBZEC QMBZNWD FUD w ৼΓ੾ͬͨΫϥε໊ w +BWBKBWB 'KBWB FUD w ྫ֎Λܧঝͨ͠໭Γ஋ w ϦϑϨΫγϣϯόΠτίʔυૢ࡞Λଟ༻ 18
  9. 2012~ 22 ~2009 2010 2011 2012 2013 2014 2015 2016

    Play2 2.0 2.1/2.2 2.3 2.4 2.5.4 Spring 3.0 3.1 3.2 4.0 4.1 4.2 4.3 Java EE 6 7 Java 6 7 8 iPhone 3GS 4 4S 5 5S 6 6S SE AWS EMR VPC RDS Route53 ౦ژ Ϧʔδϣϯ Dynamo DB Redshift Kinesis Aurora Lambda API Gateway ؖࠃ Ϧʔδϣϯ
  10. 2012~ w ϑϨʔϜϫʔΫͷੈ୅ަ୅ w 4USVUT&0- w 4FBTBS&0- w +BWBͷ෮׆ w

    +BWB 4QSJOH +BWB&& w Ϋϥ΢υϞόΠϧͷຊ֨Խ w +BWB.7$ϑϨʔϜϫʔΫͷઌ΁ʂ ˠ 1MBZ 23
  11. Play2 w ถ-JHIUCFOE چ5ZQFTBGF  w +BNFT3PQFS !KSPQFS  ˠ

    (SFH.FUIWJO !HNFUIWJO  w 4DBMB੡ w 4DBMB+BWB༻ w 4DBMBςϯϓϨʔτ w "DUJWBUPSίϯιʔϧ w TCU 24 1MBZ͸(SFH͕ 5FDI-FBEʹ +BNFT͸-BHPN ޙड़ ʹઐ೦
  12. Akka w ฏߦ෼ࢄॲཧϑϨʔϜϫʔΫ w ΞΫλʔϞσϧ w "LLB4USFBNT w "LLBʹΑΔ3FBDUJWF4USFBNT࣮૷ w

    1MBZͷετϦʔϜॲཧʹར༻ w "LLB)551 w "LLB4USFBNʹΑΔ൚༻)551ϑϨʔϜϫʔΫ w 1MBZͷ)551ج൫ʹͳΔ༧ఆ 27 +%,ʹ 3FBDUJWF4USFBNT ͕ೖΔ༧ఆ
  13. Lagom w ϚΠΫϩαʔϏεϑϨʔϜϫʔΫ w 1MBZ্Ͱಈ࡞ w $234 ίϚϯυΫΤϦ੹຿෼཭  w

    $PNNBOEBOE2VFSZ3FTQPOTJCJMJUZ4FHSFHBUJPO w FWFOUTPVSDJOH w DJSDVJUCSFBLFS w +BWB"1* w কདྷతʹ4DBMB"1*΋ެ։༧ఆ 28
  14. Playͷಛ௃ w 8FCϑϨʔϜϫʔΫ w ϗοτϦϩʔυ w εΩʔϚ؅ཧ w ϑϧελοΫ w

    Ϟδϡʔϧ w +BWB4DBMB"1* w ඇಉظॲཧ w FUD 30
  15. ϑϧελοΫ w 8FC։ൃʹඞཁͳػೳΛσϑΥϧτఏڙ w .7$ w 03. w 8FC4PDLFU w

    8FCαʔϏεΫϥΠΞϯτ w +40/ 9.- w $BDIF w +PC w 5FTU w FUD 36
  16. Java/Scala API w 1MBZ w 4DBMB"1*͸ϞδϡʔϧͰαϙʔτ w 1MBZ w ωΠςΟϒαϙʔτ

    w +BWB"1* w QMBZNWDύοέʔδ౳ w 4DBMB"1* w QMBZBQJNWDύοέʔδ౳ 38 1MBZͰ QMBZKBWBBQJ QMBZTDBMBBQJ ʹมߋ༧ఆʂ
  17. ඇಉظॲཧ w 1MBZ w ϦΫΤετ͝ͱʹεϨουΛׂΓ౰ͯΔಉظॲཧ w /FUUZ $PNNPOT+BWBqPXͰܧଓΛ࣮૷ w 1MBZ

    w ϦΫΤετΛ"LLB"DUPSʹҕৡ͢Δඇಉظॲཧ w 1MBZͰετϦʔϜॲཧΛ"LLB4USFBNTʹஔ׵ w 1MBZ Ͱ/FUUZΛ"LLB)551ʹஔ׵༧ఆ 39 ࠓޙ΋ "LLBͱͷ ౷߹͕ਐΉ
  18. Πϯετʔϧ w લఏ w +%, w खॱ w "DUJWBUPSͷ[JQΛμ΢ϯϩʔυ͢Δ w

    IUUQTQMBZGSBNFXPSLDPNEPXOMPBE w ೚ҙͷ৔ॴʹల։͢Δ w 1"5)Λ௨͢ 42
  19. Play1 w ར఺ w ҆ఆੑɻେ͖ͳ࢓༷มߋ͸ͳ͍ݟࠐΈ w ܰշͳ։ൃ w ܽ఺ w

    +BWBͰ͸ͳ͍Կ͔ w όΠτίʔυૢ࡞ʹΑΔ༧ظ͠ͳ͍ಈ࡞ w ਐԽͷݶք w αϙʔτମ੍ 60 -PNCPLͱͷ ૬ੑ͕ѱ͍Β͍͠
  20. Play2 w ར఺ w 4DBMB8FCϑϨʔϜϫʔΫͷσϑΝΫτελϯμʔυ w ϦΞΫςΟϒ΁ͷઌਐతͳऔΓ૊Έ w -JHIUCFOEࣾͷαϙʔτ w

    ܽ఺ w ԼҐඇޓ׵ੑ w 4DBMBͱ1MBZ૒ํͷ໰୊ɻ௥ै͢Δ֮ޛΛ w ίϯύΠϧ଎౓ w ۚͷ஄ؙ ߴ͍Ϛγϯ Ͱ֓Ͷղܾ 61
  21. ·ͱΊ w 1MBZͷྺ࢙ w 1MBZͱ1MBZ͕͋Δ w 1MBZͷಛ௃ w 4FSWMFU"1*ඇґଘ w

    4FBTBS 4USVUT͔ΒͷҠߦ͸ͦΕͳΓʹେม w εςʔτϨε w Ϋϥ΢υ࣌୅ڧ੍Ϊϓε w ϗοτϦϩʔυ w αʔό࠶ىಈෆཁʂ 63 ґଘੑΛ௥Ճͨ͠৔߹͸ TCUSFMPBE͕ඞཁQ
  22. ·ͱΊ w 1MBZͷ࢖͍ํ w ؆୯Πϯετʔϧ w ϞσϧϏϡʔίϯτϩʔϥϧʔςΟϯά w 1MBZͷར఺ܽ఺ w

    1MBZ͸҆ఆܰշ w +BWBʹର͢Δ௅ઓͷྺ࢙ w 1MBZ͸҆৺ઌਐత w ϦΞΫςΟϒͷઌۦ͚ w ۀ຿Ͱͷ͝ར༻͸ܭըతʹʂ 64