ããå€ãã®åçãã¬ããŒãã®è©³çŽ°ãããå€ãã®ã€ã³ãã¬ãã·ã§ã³ã
JPointã«ã³ãã¡ã¬ã³ã¹ã®èŽè¡ã¯æ¯å¹Žå¢å ããŠããŸãã ãã®æ°ããäŒå Žã«é¢é£ããŠãäžç貿æã»ã³ã¿ãŒã®ãã倧ããªäŒè°ã»ã³ã¿ãŒãäŒå Žã«ãªããŸããã
äŒè°åä»ã 2éãžã®é段ã ã¬ããŒããèªãããã®4ã€ã®ããŒã«ã«ã€ãªãã2éã®ãããŒã
ã¹ãã³ãµãŒã®ã¹ã¿ã³ãïŒããããããŒã¹ ã ããŒã¹ ïŒã ãã¹ãŠã®äººã«æãããŠããJetBrains瀟ã¯ãä»å¹Žã¯ãããããªãããŒã«éå®ãããŠããŸããã äŒè°ã®å¥ã®ã¹ãã³ãµãŒã§ããGridGainã«ãã£ãŠææ¡ãããã¿ã¹ã¯ã«ç¡é¢å¿ãªäººã¯ã»ãšãã©ããŸããã§ããã äžã®åçã¯ã ãã€ãéè¡ãšãªããã¯ã©ã¹ããã®ã¹ã¿ã³ãã瀺ããŠããŸãã
2éã®ããŒã«ã®äžéšã§ãRuslan ARG89 AkhmetzyanovãšEvgeny phillennium Trifonovãã¹ããŒã«ãŒã«ã€ã³ã¿ãã¥ãŒããŸãã ã ã芧ã®ãšãããEvgeny BorisovãSasha Goldsteinãããã³Oleg Chirukhinãã€ã³ã¿ãã¥ãŒãããŠããŸãã
ãã£ã¹ã«ãã·ã§ã³ãŸãŒã³ã¯ãæšå¹Žããèªäœã蚌æãããåªããçºèŠãšãªããŸããã å ±åãšçžè«ã®åŸã«è¬æŒè ã«è³ªåããæ©äŒã¯éåžžã«éèŠããããŸããã
ã«ã³ãã¡ã¬ã³ã¹ãªãŒããã³ã°
ã¢ã¬ã¯ã»ã€ã»ãã§ããããšã¢ã³ãã¬ã€ã»ããããªãšãã«ããåŸ æã®äŒè°ã®ãªãŒããã³ã°ã æååã§ã¯ãã¿ã®ã«ã»ãŽã¡ã¬ãšãããã¯ã¿ãŒã»ã¬ã¢ãããã«ãŒã¯ã»ãµãã°ã«ã¹ããŒãèªèããããšã¯é£ãããããŸããã
åæ¥ã¬ããŒã
1æ¥ç®ãš2æ¥ç®ã«ã¯ãåæã«èªã4ã€ã®ã¬ããŒãã®ãããããéžæããããšãææ¡ãããŸããã ãã¡ãããã¬ããŒãã®ããŸããŸãªãããã¯ãšãèšé²ãããŠããªãã¬ããŒããåŸã§èŠãæ©äŒã«ãã£ãŠãéžæã¯å®¹æã«ãªããŸããã
ããã©ãŒãã³ã¹ïŒç§ã®ååã¯ïŒ
Alexey ShipilevãRed Hat
äŒè°ã¯ã¬ããŒãã§å§ãŸãããã®ä»¥åã®ããŒãžã§ã³ã¯ä»¥åã«Joker 2016ã§åœŒã«æ瀺ãããŸããã ãã以æ¥ãã¬ããŒãã¯å°ãå€æŽãããããªã¥ãŒã ãå¢å ããŸããã
Alexeyã¯ãæãèå³æ·±ããå°æ¬ããã人æ°ã®ããè¬æŒè ã®1人ãšããŠãµãããããšèªããããŠããŸãã ããããæåãªæ²ç·ã Shããã®å ±åããããŠã©ãžããŒã«ã»ãã«ãžã§ã³ã³ã®æè¿ã®habrapost ïŒäŒè°ã®å¥ã®ã¹ããŒã«ãŒïŒã§èšåãããŸããã
Alexeiã®ã¬ããŒããå ¥ãæ¿ããŠãKeynoteã®ä»£ããã«æ°ããã¬ããŒãïŒåŸã§èª¬æããŸãïŒ-é£ãã質åãããããšã¯äŸ¡å€ããããŸããïŒ ãã®ã¬ããŒãã¯ãå®éã«äŒè°ãå§ããã®ã«è¯ããããããŸããã
Java Puzzlers NG S02ïŒãã¹ãŠãããçŽ æŽããããçŽ æŽããã
ã¿ã®ã«ã»ãŽã¡ã¬ãšããšãã«ãŒã¯ã»ãµãã°ã«ã¹ããŒ
äŒè°ã§ã¯ã Java Puzzlers NGã®ç¬¬2ã·ãŒãºã³ã®ãã·ã¢èªåæŒãè¡ãããŸãã ã 泚ç®ã«å€ããã®ã¯ãäž»èŠãªèè ã®1人ïŒãŸãã¯äž»èŠèè ïŒã®ãã¬ãŒã³ããŒã·ã§ã³-Tagir lany Valeevãžã®åå ã§ããã
ä»å¹Žã®åãã«ãBaruch SadogurskyãšViktor Gamovã¯ããã®ã¬ããŒãã§ããã€ãã®åœéäŒè°ã§è±èªã§è©±ãããŸããïŒæé«ã®ãšã³ããªãŒã¯Devoxx US 2017ããã§ã ïŒã ãã調ã¹ãŠã¿ããšãã¹ã©ã€ãã¯ãããã«ç°ãªããããæ°ããããã©ãŒãã³ã¹ã¯äŸç¶ãšããŠæä»çã§ãã 以åã¯ãã¬ããŒãã蚪åããããšãçã«ããªã£ãŠããããã«ã圌ã¯Devoxx ïŒ3çªç®ã®ããºã«ã§äžæãããïŒã§èšé²ãèŠãããšãæå¶ããŸããã
ãã«ã¯ãšã¿ã®ã«ã¯äŒçµ±çã«ã·ã§ãã¯ãåããŠããŸããã ãã«ããã¯ã¯æ©ç¥ã«æº¢ããã¿ããªã«è¯ãæ°åãäžããŠããã ã¿ãžãŒã«ã¯éŠå°Ÿããåè«ãã倧è¡ãåã°ããã Java 9ã®äž»èŠã³ã³ããŒãã³ãã§ãããžã°ãœãŒããºã«ã«é¢ããããºã«ã®ååšã«æºè¶³ããŸããã
é åžãšåŸæ-2ïŒããŒã¿ã¹ããªãŒã ã®é襲
ãã¯ã¿ãŒã»ã¬ã¢ãããã€ãŒã«ãã£ã¹ã
ãã¯ã¿ãŒãç§ã¯ãããããã£ã¹ãã®ãããªãŒãã£ã³ã° ïŒåœŒã¯å ±ååµèšè ã§ããå ±åãã¹ãã§ããïŒã5幎以äžèŽããŠããèªè ã®å€ããç¥ã£ãŠãããšæããŸãã ããã«ãææ°ã®ãžã§ãŒã«ãŒãšJPointã§ã¯ã圌ã¯ã¢ã¯ãã£ãã¹ããŒã«ãŒã®1人ã§ããããŸãã
以åã®ïŒããŒã1ïŒã¬ããŒãé åžãšåŸæïŒåæ£ã·ã¹ãã ã® æŠèŠã¯ãããã°ã©ã JPoint 2016 Student Dayã«ãããŸãã ã æåŸã®ã¬ããŒãã®çµæã«ãããšãã¬ãã¥ãŒã®ç³ãç«ãŠã«åè«ããã¿ã¹ã¯ãè€éåããããšã決å®ãããŸããïŒããã¡ã€ã«å ã®åèªãæ°ããäžè¬çãªäŸãã®ãã¢ã³ã¹ãã¬ãŒã·ã§ã³ã«ã€ããŠïŒã 次ã«ãå žåçãªã€ã³ã¡ã¢ãªããŒã¿ã°ãªããã¯ã©ã¹ãœãããŠã§ã¢è£œåã®äŸãšããŠ
ãã€ãã®ããã«ããã¯ã¿ãŒã¯èª¬åŸåããããæãããæåçã§åŒ·åŒã§ããã ç§ãã¡ã¯åœŒãå°æ¬ããæããŠããŸãã
åæ£ã€ã³ã¡ã¢ãªã·ã¹ãã ã®ã¹ã±ãŒã©ããªãã£
ãŠã©ãžããŒã«ã»ãªãŒãããGridGain Systems
ãŠã©ãžããŒã«ã¯ãäž»ã«Javaã®äžçããã®èå³æ·±ãã€ãã³ãã®çŽ æŽãããæ¯æã®ãã€ãžã§ã¹ãã§ãªãªãŒã¹ãããããšã§ãããã®è¡ã®äœè ã«ç¥ãããŠããŸãã ãããããè¯ããç°ãªãããã€ãžã§ã¹ããããã«ãã£ããšããŠãããŠã©ãžããŒã«ã¯çªç¶ãªãªãŒã¹ãåéããŸãã
GridGainã¯Hazelcastã®ã©ã€ãã«ã§ãããããå¥ã®èŠç¹ãèãããšã¯ïŒè©±è ã®æ§æ Œãå°éããããšãé€ããŠïŒäºéã«èå³æ·±ããã®ã§ããã
ã¹ããŒãªãŒã¯ãåæ£ã·ã¹ãã ãç¹ã«Apache Igniteã§ã¹ã±ãŒãªã³ã°ãããšãã«æ©èœãå°é£ãããã³ããããå æããæ¹æ³ã«å°å¿µããŸããã çŽ æŽããããèå³æ·±ãã掻æ°ã®ããã¬ããŒãã
ã¢ããªã±ãŒã·ã§ã³ããã©ãŒãã³ã¹ã®ç£èŠïŒæ©èœã®æ¯èŒãåé¡ãããã³è§£æ±ºç
ã€ãã¹ã©ãã»ãã»ã¬ããCROC
ãã®ã¬ããŒãã¯ããŠãŒãžã³ããªãœããªã©ã®ãã¹ã¿ãŒã®ã¬ããŒããšäžŠè¡ããŠéå¬ãããŸããã ãã®ãããªåŒ·å¶çãªç«¶äºã«ãããããããã€ãã¹ã©ãã»ããŒã«ã®å æã¯äŸ¡å€ãããã圌ãç¥çŠããããšãã§ããŸããã
ãã¬ãŒã·ã§ã³ã¯ãã¢ãããŒããšã¢ããªã±ãŒã·ã§ã³ããã©ãŒãã³ã¹ç£èŠããŒã«ã«é¢ãããã®ã§ããã 䜿çšæžã¿ã®ç£èŠã¢ããªã±ãŒã·ã§ã³ããç¹å¥ã«åãåãããã¹ã¯ãªãŒã³ã·ã§ããã«ãã£ãŠããèœèããããããèœèããã
ãã®å ±åã¯ç§ã ãã§ãªãé¢å¿ãåŒã³èµ·ãããŸããã ç¹ã«ãããŒã«ã«ããã°ã¬ãã»ã¹ãã«ããã¯ããã³ã圢åŒãçµ±äžãããããã¯ã«ã€ããŠã³ã¡ã³ãããŸããã
éå£ç責任ã®ææŠ
ã¢ã¬ã¯ã»ã€ã»ãµãŽã¡ããšããããããªãŒã»ããžã£ã«ã¹ããŒå€§åŠ
æçµæ¥ã¯ãã¢ã¬ã¯ã»ã€ã»ãµãŽã¡ããšãã®å ±åã§ããã JUG.ruäŒè°ã®ç¹åŸŽã¯ããã®ãããªã¬ããŒãã䜿çšããæè¡äŒè°ã®åå è ã®èŠéã®æ¡å€§ã§ããã ã»ãšãã©ã®å ŽåãäŒè°ã®1æ¥ãŸãã¯äž¡æ¹ã®æ¥ãçµäºããŸãã
ãã®ãã¬ãŒã³ããŒã·ã§ã³ã¯ãè¬æŒè ãšèŽè¡ã®äž¡æ¹ã«ãšã£ãŠæçã ã£ããšèšããŸãã ã¢ã¬ãã¯ã¹ã¯ãããã圌ã®åã§è©±ãæ©äŒããã£ãæ倧ã®èŽè¡ã§ãã£ããšèªããŸããã åŠçãã¡ã¯ãã²ãŒã çè«ã®å®éçãªå¿çšã«ã€ããŠã¢ã€ãã¢ãåŸãæ©äŒããããŸããã
ãããªãŒãã£ã³ã°ã©ã€ãïŒ
ãã®æ¥ã¯ã Sberbank Technologiesã®ãªãã£ã¹ã§ã®ããŒãã£ãŒã§çµãããŸããã
ãã«ã¯ãšãã¯ã¿ãŒããªã³ã©ã€ã³æŸéã®æºåã Andrey Kogun ãå ãèŠãïŒäŒè°ããã°ã©ã å§å¡äŒã®åå è ã jug.msk.ruã®ãªãŒããŒïŒã ããããã£ã¹ãã®ãããªãŒãã£ã³ã°ãšãŠãŒãžã³ããªãœãã®ã»ãŒå®å šãªæ§æã
ç¿æ¥ã®å ±åã®åã«ãŠã©ãŒãã³ã°ã¢ããããŠããã€ãŽãŒã«ã»ãã¬ãšã³ã³ã ã¿ãŽãŒã«ã»ãã¬ãšããã€ãŽãŒã«ãšã®è°è«ãæ¯æŽããããã«åŒã°ããã
2æ¥ç®ã®ã¬ããŒã
åªãã®æ¥ãã¹ã
ããªã«ã»ãã«ã«ãã§ããšãšãã²ããŒã»ããªãœã
ã·ãªã«ãšãŠãŒãžãŒã³ã®ãã¥ãªã¯ããããä»æ¥ã®æãæ©ãå ±åã§ãããšããäºå®ã«ããããããã圌ãã«è³ãåŸããã人ã ã®å®å šãªããŒã«ãéããŸããã
掻æ°ã®ããïŒæåéããã©ã€ãã-Cyrilã¯ã©ã€ãã³ãŒãã£ã³ã°ã«åŸäºããŠããïŒãªã©ãã¯ã¹ãã圢ã§ã Spring Bootã«åºã¥ããã¢ããªã±ãŒã·ã§ã³ã®ãã¹ãã«ã€ããŠè©±ããŸããã å®éšã¢ããªã±ãŒã·ã§ã³ã¯ãä»ã®æ³šç®ãã¹ãã«ã³ãã¡ã¬ã³ã¹ã¹ããŒã«ãŒ-Yegor BugaenkoãšBarukh Sadogurskyã®å°é家ã®æèŠãæš¡å£ããŸããã
åè«ã亀ãããåè«ã¯ãCyrilã«ããã³ãŒãã®è¿ éãªå ¥åãšå€æŽã«ãã£ãŠç€ºãããŸããã æ°ãã泚éã®äœ¿çšãšãã³ã³ããã¹ããã£ãã·ã¥ãæäœããæ©èœïŒéåžžã«éèŠãªå ŽåããããŸãïŒã瀺ãããŠããŸãã
ã·ã§ãã³ããŒïŒã§ããã¬ããŒãžã³ã¬ã¯ã¿ãŒ
Alexey ShipilevãRed Hat
ã芧ã®ããã«ããã®äŒè°ã§ã¢ã¬ã¯ã»ã€ã»ã·ãã¬ãã®2åç®ã®å ±åãããã人ãéåžžã«å€ããéè·¯ã®åºã«åº§ããªããã°ãªããªãã£ã人ãããŸããã
ã¬ããŒãã¯ãæ°ããã¬ããŒãžã³ã¬ã¯ã¿ãŒã«é¢ãããã®ã§ãå¥ã®JEP 189ïŒShenandoahïŒAn Ultra-Low-Pause-Time Garbage CollectorãæäŸããŠããŸãã ã ã·ã§ãã³ãã¢ ïŒ ã·ã§ãã³ã㢠ïŒãšããååèªäœã«ã¯ããã€ãã£ãã¢ã¡ãªã«ã³ã®æå°è ããããŸããŸãªåœã®å°ççãªããžã§ã¯ããŸã§ã å€ãã®æå³ããããŸãã
ãçŽ æ©ããéœæ°ã«ã容赊ãªããïŒã¢ã¬ã¯ã»ã€èªèº«ããã®åŒçšïŒãèŽè¡ã¯ããŽãåéã®çè«çåºç€ãæ§ã ãªã¢ã«ãŽãªãºã ã®é·æãšçæã ã·ã§ãã³ãã¢ãã®ãã®ã«çŠç¹ãåœãŠãã ã¢ã¬ã¯ã»ã€ã¯çŸãããã¬ããŒãã®ã¬ãã¥ãŒã§äœåºŠã圌ã«æžãããããšãé¡ã£ãŠããŸãã
äŒæ¢ç¶æ ãåã³é«éã«ããŸããã
ãã³ã©ã€ã»ã¢ãªã¡ã³ã³ããEPAM
JUG.ru ïŒããã³äŒè°ã®äž»å¬è èªèº«ãæãæåãªã®ã¯JEEConf ïŒãäž»å¬ããäŒè°ã§é »ç¹ã«åèªããè¬æŒè ã§ãã
ãã³ã©ã€ã¯ã ã³ãŒãã確èªããåºã䜿çšãããŠããHibernateã®
JVMã³ãŒãã®ãã¯ãã«åææ³
ãŠã©ãžããŒã«ã»ã€ã¯ããããªã©ã¯ã«
åœä»€ã»ããã®ææ°ã®ããã»ããµã«ã¯ããã¯ãã«åœä»€ïŒããããSingle Instruction-Multiple Data ã SIMD ïŒããããŸãã éæ³ã®ããã«ã JVMã¢ããªã±ãŒã·ã§ã³ããã°ã©ããŒã¯ããããã®åœä»€ã®ãã¹ãŠã®èœåã䞊ååŠçã«å©çšã§ããŸãã ãŸãã¯ã幞éãªããšã«ãé¢äžããããšã¯ã§ããŸããã ãã€ãã©ã®ããã«æ©èœããïŒãŸãã¯æ©èœããªãïŒãã«ã€ããŠããã®éæ³ã«ã€ããŠèª¬æããŸããã
ãã®ã¬ããŒãã¯ãäŒè°ããã°ã©ã ã§äœæããããããŒãã³ã¢ãããŒã¯ãå®å šã«æ£åœåããŸãã ãããŠããã®ããšãããäŒè°ã®ç²Ÿç¥ã«å®å šã«æ²¿ã£ãŠãé¢çœããªããŸããã
1 HTTP / 2ã¯ã©ã€ã¢ã³ããšã³ãžãã¢ããªãŒããŒã¯ããã¯ããæ¹æ³ã®ç©èª
ãªã©ã¯ã«ãã»ã«ã²ã€ã»ã¯ã¯ã»ã³ã³
泚ç®ãéããªããã JavaOne Russiaã§ã KuksenkoãšShipilevã®å©ç ãïŒãããŒã¿ãªãã¹ããŒãèšã£ãããã« ïŒããå§ããŠãç§ã¯Sergeyã®æ°ããã¬ããŒãããã©ããŒããŠããŸãã
çŸåšã®ã¬ããŒãã¯ãåºæ¿çãªæ¢åµèª¿æ»ã®ãžã£ã³ã«ã«èµ·å ããŠããå¯èœæ§ããããŸãã 芳å¯ã®å¯Ÿè±¡ïŒçãããïŒïŒ HTTPã¯ã©ã€ã¢ã³ãã§ã®HTTP / 2ã®å®è£ ïŒ JEP 110 ïŒã å®è£ ã¯ããŒãžã§ã³9ã«å«ãŸããŸãããå®éšçãªãã®ïŒããããã€ã³ãã¥ããŒã¿ãŒ ïŒã«éããŸãã
段é
ãã€ãã£ãåïŒJVMã®å€éšé¢æ°
ãã£ãŒã«ãºã»ããã¿ãŒãã¬ããããã
ãã£ãŒã«ãºã¯ã ãžã§ãŒã«ãŒ2016 ïŒä»å¹Žã®åœŒã®å°çåã«åããã圌ãšã®æè¿ã®ã€ã³ã¿ãã¥ãŒ ïŒãã2幎ç®ã JUG.ruã«æ¥ãŠããŸãã
ã¬ããŒãã§ã¯ã Java Native Runtime ïŒ JNR ïŒã¢ãžã¥ãŒã«ã®è©³çŽ°ãªèª¬æã«çŠç¹ãåœãŠã JVMãããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã©ã€ãã©ãªã®ãã€ãã£ãã³ãŒã«ã«ã¢ã¯ã»ã¹ããããã€ãã®å¯èœãªæ¹æ³ã«ã€ããŠç°¡åã«èª¬æããŸãã æåŸã«ããããã®ç®çã®ããã«ïŒ Java 10以éã§ïŒç§ãã¡ãåŸ ã£ãŠããæªæ¥ãèšåãããŠããŸã-Project Panama ã
äŒè°çµäº
ã¢ã¬ã¯ã»ã€ã»ãã§ãããã®äŒè°ã¹ããŒããç· ããããã äž»å¬è ãè¬æŒè ãèå°ãã©ã³ãã£ã¢ã
ãŸãšã
äž»å¬è ã¯äŒè°ã®æºåãšéå¬ã«å€§ãã«è²¢ç®ããè¬æŒè ã¯å€ãã®èå³æ·±ãã¬ããŒããæäŸããæ°ããäŒå Žã¯å ±ãããŸããã äŒè°ã¯ééããªãæåã§ããã
ãã¹ãŠã®ãã¬ãŒã³ããŒã·ã§ã³ã®ãã¡ã€ã«ã¯ãäŒè°ã®Webãµã€ãã§å ¥æã§ããŸã ã ãã£ãŒãããã¯ãæ®ããåå è ã«ã¯ããã¹ãŠã®ã¬ããŒãã®ãããªãžã®ãªã³ã¯ãæ¢ã«éä¿¡ãããŠããŸãã