ÅèĹ 8 ¼Ò°³ - µÚ´Ê¾úÁö¸¸ ´Ù½Ãº¸·Á±¸~
¾ÆÆÄÄ¡ ÅèĹ(Apache Tomcat) 8 ¹öÀüÀÌ °ð º£Å¸¿¡¼ Á¤½Ä ¹öÀüÀ¸·Î ¹ßÇ¥µÉ ¿¹Á¤Àε¥ ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿÷ ÆÀ¿¡¼ ¿þºñ³ª¸¦ Çϱ淡 ¿À´Ã ¹æ±Ý Àü ÀÚÁ¤ºÎÅÍ 1½Ã±îÁö ±×°É ºÃ´Ù. µ¿¿µ»ó ¸®Ç÷¹ÀÌ ¹× ¹ßÇ¥ ÀÚ·á´Â 1-2ÁÖ ÈÄ¿¡ https://www.youtube.com/springsourcedev¿¡ ¿Ã¸°´Ù°í ÇÑ´Ù. ¾Æ·¡ ¿þºñ³ª ³»¿ë ¹× °øºÎÇÑ ³»¿ëÀ» Á¤¸®Çغ»´Ù. ¿¹Á¦ Ãâó´Â github.com/swilliams-pivotal/s2gx-tomcat´Ù.
»ç½Ç ÅèĹ 8 ÀÚüº¸´Ù´Â ÅèĹÀÌ ±¸ÇöÇÏ´Â ÀÚ¹Ù EEÀÇ ±â´É ¼Ò°³ ¼º°ÝÀÌ ´õ °ÇÑ ¿þºñ³ª¿´´Âµ¥ ¾Æ¹«Æ° ÀÏ´Ü ÅèĹ 8Àº ´ÙÀ½ ³»¿ëÀ¸·Î ¿ä¾àÇÒ ¼ö ÀÖ´Ù.
- ¼ºí¸´ 3.1
- JSP 2.3
- EL(Expression Language) 3.0
- À¥¼ÒÄÏ 1.0
- ±âŸ ÀÚ¹Ù EE 7 ±â´É
¼ºí¸´ 3.1
¼ºí¸´ 3.0ºÎÅÍ HTTP ÀÔÃâ·Â¿¡ Å« ±â´ÉÀÌ Çϳª Ãß°¡µÆ´Âµ¥ ¹Ù·Î ¡°Â÷´ÜµÇÁö ¾Ê´Â ÀÔÃâ·Â(non-blocking IO)¡±ÀÌ´Ù. ±×Àü±îÁö´Â ¸»ÇÏÀÚ¸é À¥ºê¶ó¿ìÀú Çϳª¿¡¼ À¥ÆäÀÌÁö¸¦ ´Ù¿î·Îµå(¶Ç´Â ¾÷·Îµå)ÇÒ ¶§ ÆäÀÌÁö ·ÎµùÀÌ ³¡³¯ ¶§±îÁö ´Ù¸¥ ¾Æ¹« °Íµµ ÇÒ ¼ö°¡ ¾ø¾ú´Ù. ÇÏÁö¸¸ ÀÌÁ¦´Â ÀÔÃâ·ÂÀ» ºñµ¿±âÀûÀ¸·Î ó¸®ÇÒ ¼ö ÀÖ¾î¼ ¼¹ö°¡ ´Ù¸¥ ÀÛ¾÷À» ÇÏ¸é¼ ÀÔÃâ·ÂÀ» ó¸®ÇÒ ¼ö ÀÖ´Ù. (´Ù¸¥ ¸»·Î ¶Ç´Â ¹Ý´ë·Î ¸»ÇÏÀÚ¸é ÀÔÃâ·ÂÀ» ó¸®ÇÏ¸é¼ µ¿½Ã¿¡ ´Ù¸¥ ÀÛ¾÷À» ÇÒ ¼ö ÀÖ´Ù. ÀÌ°ÍÀÌ °¡´ÉÇÑ °ÍÀº ÀÔÃâ·ÂÀ» º°µµÀÇ ÀÚ¹Ù ½º·¹µå¸¦ »ý¼ºÇØ Ã³¸®Çϱ⠶§¹®ÀÌ´Ù.)
´ÙÀ½ ¿¹Á¦ Äڵ带 º¸ÀÚ. ¾ÆÁÖ ´Ü¼øÇÑ ¿¹Á¦·Î¼ ½Ç¿ë¼ºÀº ÀüÇô ¾ø´Âµ¥ °³³äÀº Àß µå·¯³ª ÀÖ´Ù.
¼ºí¸´ÀÇ doGet
¸Þ¼µå¸¦ º¸ÀÎ °ÍÀε¥ 4Çà¿¡¼ HttpServletRequest#startAsync
¸Þ¼µå¸¦ È£ÃâÇÏ¿© ºñµ¿±â 󸮸¦ ÁغñÇÏ°í WriteListener
ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ¿© ºñµ¿±âÀûÀ¸·Î "Hello World!"
¸¦ Ãâ·ÂÇÏ°í ÀÖ´Ù. ºñµ¿±âÀûÀ̹ǷΠ27Çà¿¡ ÀÌÈÄ¿¡ ¹º°¡ ´Ù¸¥ Äڵ尡 ÀÖ´Ù¸é ÇØ´ç Äڵ尡 ½ÇÇàµÇ¸é¼ µ¿½Ã¿¡ "Hello World!"
¸¦ Ŭ¶óÀ̾ðÆ®·Î Ãâ·ÂÇÏ´Â ÀÛ¾÷Àº ±× ÀÛ¾÷´ë·Î ½ÇÇàµÉ °ÍÀÌ´Ù.
ÀÌ ±ÛÀº ÅèĹ 8 ¼Ò°³ ±ÛÀ̹ǷΠÂ÷´ÜµÇÁö ¾Ê´Â ÀÔÃâ·ÂÀº ¿©±â±îÁö¸¸ ¾Ë¾Æº¸±â·Î ÇÑ´Ù.
JSP 2.3
JSP 2.3Àº ¡°maintenance release¡±·Î¼ ÅèĹ 8¿¡¼ ±× Àü ¹öÀü°ú º° Â÷ÀÌ°¡ ¾ø´Ù°í ÇÑ´Ù.
Expression Language 3.0
EL 3.0Àº ÀÌÀü ¹öÀü°ú ¸¹ÀÌ ´Þ¶óÁ³Áö¸¸ ÇÏÀ§ ȣȯ¼ºÀÌ ÀÖ´Ù°í ÇÑ´Ù. ÀÌÀü ¹öÀü°ú ´Þ¸® ELProcessor
¶ó´Â Ŭ·¡½º¸¦ ´Ü¼ø ºó(bean) ¹æ½ÄÀ¸·Î ¼±¾ðÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖÀ¸¹Ç·Î JSP°¡ ¾Æ´Ñ ÀÓÀÇÀÇ ÀÚ¹Ù¿¡¼µµ ELÀ» »ç¿ëÇÒ ¼ö ÀÖ°Ô µÆ´Ù.
EL 3.0Àº À§ÀÇ ¿¹½Ã ¿Ü¿¡µµ µ¡¼À ¿¬»êÀÚ(+)·Î ¹®ÀÚ¿ ¿¬°áÇϱâ, map/reduce µî ´Ù¾çÇÑ ±â´ÉÀÌ Ãß°¡µÆ´Ù.
À¥¼ÒÄÏ 1.0
ÅèĹ 7¿¡¼µµ À¥¼ÒÄÏ API¸¦ Áö¿øÇßÀ¸³ª ÅèĹ 8 ¹× 7.0.43ºÎÅÍ »õ·Î¿î API·Î À¥¼ÒÄÏÀÌ ±¸ÇöµÆ´Ù°í ÇÑ´Ù. ¶ÇÇÑ ÅèĹ 7¿¡¼´Â Â÷´ÜµÇ´Â(blocking) ¹æ½ÄÀ̾úÀ¸³ª À¥¼ÒÄÏ 1.0¿¡¼´Â °ÅÀÇ ºñÂ÷´Ü½ÄÀ¸·Î Á¦°øµÈ´Ù.
ÅèĹ ÀÚüÀÇ º¯È
- ÀÌÀü¿¡´Â ÀÚ¿ø(ÆÄÀÏ)À» ã±â À§ÇÑ ¹æ½ÄÀ¸·Î Aliases, VirtualLoader, VirtualDirContext, JAR ÆÄÀÏ µî ¿©·¯°¡Áö¸¦ server.xml¿¡ ¼³Á¤ÇÒ ¼ö ÀÖ¾ú´Âµ¥ 8 ¹öÀüºÎÅÍ °£´ÜÇÏ°Ô ÀÏ¿øÈÇß´Ù°í ÇÑ´Ù. ÀÚ¼¼ÇÑ »çÇ×Àº https://tomcat.apache.org/tomcat-8.0-doc/config/resources.htmlÀ» Âü°íÇÑ´Ù.
- rewrite ¹ëºê°¡ Ãß°¡µÆ´Ù. ¼³Á¤ ±¸¹®¿¡ ´ëÇÑ ¼³¸íÀ» ´ëÃæ º¸´Ï ¾ÆÆÄÄ¡ http ¼¹öÀÇ mod_rewrite¿Í °ÅÀÇ °°Àº °Í °°´Ù. ÀÌÁ¦ ÅèĹ ¸¸À¸·Îµµ º¹ÀâÇÑ URL °íÃľ²±â°¡ °¡´ÉÇÑ °ÍÀÌ´Ù.
- ÀÚ¹Ù 7 ÀÌ»óÀÌ ÇÊ¿äÇÏ´Ù
- ºñÂ÷´Ü½Ä ÀÔÃâ·ÂÀ» Áö¿øÇϱâ À§ÇØ NIO Ä¿³ØÅÍ°¡ ±âº» ¼³Á¤ÀÌ µÆ´Ù. ÀÌÀüó·³ BIO³ª APR/³×ÀÌƼºê ÀÔÃâ·Âµµ °è¼Ó Áö¿øÇÑ´Ù.
- DB ¿¬°á Ç®¸µ¿¡´Â ±×Àü±îÁö DBCP¸¦ »ç¿ëÇߴµ¥ ÀÌÁ¦ DBCP 2°¡ ±âº»ÀÌ µÆ´Ù. ¾ÆÆÄÄ¡ DBCP¿¡¼´Â ¸íÈ®È÷ DBCP 2°¡ ¹ßÇ¥µÇÁö ¾ÊÀº »óÅÂÀε¥ ¾Æ¸¶µµ ÅèĹ¿¡¼ ¸ÕÀú ±¸ÇöÇÏ°í ÀÖ´Â °Ô ¾Æ´Ò±î »ý°¢µÈ´Ù.
ÀÏÁ¤
ÅèĹ 8ÀÇ ÀÏÁ¤Àº ´ÙÀ½°ú °°´Ù°í ÇÑ´Ù.
- ÀÚ¹Ù EE 7¿¡¼ ±¸ÇöÇÒ ±â´ÉÀº ¸ðµÎ ¿Ï·áµÈ »óÅÂ
- 8.0.3 º£Å¸¿¡ ´ëÇØ 2¿ù 9ÀÏ ÅõÇ¥ ¿¹Á¤
- »ó¿ëÀ¸·Î »ç¿ëÇϱ⿡´Â ¾ÆÁ÷ À̸¥ º£Å¸ ¹öÀüÀÎ »óÅÂ
ÀÌ»óÀ¸·Î ¿þºñ³ª ¹× ³»°¡ °£´ÜÈ÷ ã¾Æº» ³»¿ë Á¤¸®¸¦ ¸¶Ä¡±â·Î ÇÑ´Ù. º£Å¸ ¹öÀü »óŹǷΠ½ÇÀü¿¡¼ »ç¿ëÇϱ⿡´Â ºÎÁ·ÇÏ´Ù°í ÇÏÁö¸¸ ÅèĹÀÌ ¿ø·¡ °³¹ßÀÚµéÀÌ ¼Õ½±°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â À¥ ¼ºí¸´ ÄÁÅ×À̳ʿ´À¸¹Ç·Î °³¹ß´Ü¿¡¼ ÅèĹ 8À» »ç¿ëÇÏ´Â µ¥ º° ¹®Á¦´Â ¾øÀ» °Í °°´Ù. ¸ð¹ÙÀÏ È¯°æÀ̳ª HTML 5°¡ Áß¿äÇÑ È帧ÀÎ ½Ã´ë°¡ µÆÀ¸¹Ç·Î ¼ºí¸´/JSP³ª À¥¼ÒÄÏ µîÀÇ ÃֽŠ±â¼úÀ» ³²º¸´Ù ¸ÕÀú »ç¿ëÇغ¸´Â °ÍÀÌ ¿©·¯ ¸ð·Î À¯ÀÍÇÏÁö ¾ÊÀ»±î »ý°¢µÈ´Ù.