±¹³»µµ¼
Àü°øµµ¼/´ëÇб³Àç
°øÇаè¿
ÄÄÇ»ÅÍ°øÇÐ
2013³â 9¿ù 9ÀÏ ÀÌÈÄ ´©Àû¼öÄ¡ÀÔ´Ï´Ù.
Á¤°¡ |
35,000¿ø |
---|
31,500¿ø (10%ÇÒÀÎ)
1,750P (5%Àû¸³)
ÇÒÀÎÇýÅÃ | |
---|---|
Àû¸³ÇýÅà |
|
|
|
Ãß°¡ÇýÅÃ |
|
À̺¥Æ®/±âȹÀü
¿¬°üµµ¼
»óÇ°±Ç
ÀÌ»óÇ°ÀÇ ºÐ·ù
Ã¥¼Ò°³
ÀÌ Ã¥Àº ¾ÆÄ«¸¦ ÅëÇØ ¹ÝÀÀÇü ¾ÖÇø®ÄÉÀ̼Ç, ºñµ¿±â, À̺¥Æ® ±â¹Ý ¹× ºÐ»ê ½Ã½ºÅÛÀ» ±¸ÃàÇÒ ¼ö ÀÖ´Â °¡À̵带 Á¦°øÇÑ´Ù. 1Àå¿¡¼ Ãʱ⠸ð³î¸®½Ä ¾ÆÄ« ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼Ò°³ÇÏ°í, ¸¶Áö¸· 10Àå±îÁö ÇØ´ç ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¼±½ÃŲ´Ù. »Ó¸¸ ¾Æ´Ï¶ó °¢ À庰·Î °úÁ¦°¡ Æ÷ÇԵŠÀֱ⠶§¹®¿¡ Á÷Á¢ Äڵ带 ¼öÇàÇغ¸¸ç ½±°Ô ÀÌÇØÇÒ ¼ö ÀÖ´Ù. ¾ÆÄ« ¹× Ãß°¡ ¶óÀ̺귯¸®¿¡ ´ëÇÑ ¼³¸í°ú µµ¸ÞÀÎ ÁÖµµ ¼³°è ¹× À̺¥Æ® ¼Ò½Ìµµ Á¢ÇÒ ¼ö ÀÖ´Ù. Ã¥À» Á¤µ¶ÇÏ¸ç ¿¹Á¦ ¾ÖÇø®ÄÉÀÌ¼Ç Äڵ带 °³¼±Çغ¼ ¼ö ÀÖ´Ù.
ÃâÆÇ»ç ¼Æò
¡Ú ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¡Ú
¡á ¾ÆÄ« ¾×ÅÍ »ç¿ë ¹æ¹ý
¡á µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ Àû¿ëÇÑ ±¸Ãà ¹æ¹ý
¡á ¿£Æ¼Æ¼ Áö¼Ó¼ºÀ» À§ÇÑ ¾ÆÄ« Æ۽ýºÅϽº, ÇÁ·ÎÅäÄÝ ¹öÆÛ, Ä«»êµå¶ó È°¿ë ¹æ¹ý
¡á ±×·¡ÇÁ ºô´õ DSL È°¿ë ¹æ¹ý
¡á ¾ÆÄ« ½ºÆ®¸²À» ÀÌ¿ëÇÑ ¹é ÇÁ·¹¼Å ó¸® ¹æ¹ý
¡á ¾ÆÄ« HTTP¸¦ ÀÌ¿ëÇÑ ¿äû/ÀÀ´ä ó¸® ¹æ¹ý
¡á °í°¡¿ë¼ºÀ» À§ÇÑ ConductR È°¿ë ¹æ¹ý
¡Ú ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ ¡Ú
¶óÀÌÆ®¹êµå(Lightbend) Ç÷§ÆûÀ» ÀÌ¿ëÇØ °í¼º´ÉÀÇ ¹ÝÀÀÇü ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÃàÇÏ°í ½Í´Ù¸é ÀÌ Ã¥À» ÀÐÀÚ. ¶ÇÇÑ, ¾ÆÄ«ÀÇ »õ·Î¿î ±â´ÉÀ» ÇöÀç ȤÀº ¾ÕÀ¸·ÎÀÇ ÇÁ·ÎÁ§Æ®¿¡ Àû¿ëÇÒ °èȹÀÌ ÀÖ´Â ½ºÄ®¶ó °³¹ßÀÚ¿¡°Ôµµ µµ¿òÀÌ µÉ °ÍÀÌ´Ù. µ¿½Ã¼º, È®À强, ¹ÝÀÀÇü ¾ÖÇø®ÄÉÀ̼ÇÀ» °í¹ÎÇÏ´Â ÀÚ¹Ù °³¹ßÀÚ¿¡°Ôµµ µµ¿òÀÌ µÉ °ÍÀÌ´Ù.
¡Ú ÀÌ Ã¥ÀÇ ±¸¼º ¡Ú
1Àå, ¡®È¿°úÀûÀÎ ¹ÝÀÀÇü ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Ã࡯¿¡¼´Â Ãʱ⠿¹Á¦ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼Ò°³ÇÏ°í ¾ÕÀ¸·Î °³¼±ÇÒ ³»¿ëÀ» Á¤¸®ÇÑ´Ù.
2Àå, ¡®¾×Å͸¦ ÀÌ¿ëÇÑ µ¿½Ã¼º ÇÁ·Î±×·¡¹Ö ´Ü¼øÈ¡¯¿¡¼´Â ¾×Å͸¦ ÀÚ¼¼È÷ ¼Ò°³ÇÏ°í ¾ÆÄ« FSMÀ» ÀÌ¿ëÇØ ¸®ÆÑÅ丵ÇÑ´Ù.
3Àå, ¡®µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ÅëÇÑ ºó¾àÇÑ ¸ðµ¨ °³¼±¡¯¿¡¼´Â µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ °³³ä°ú Àû¿ë ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.
4Àå, ¡®À̺¥Æ® ¼Ò½ÌÀ» ÅëÇÑ È÷½ºÅ丮 »ý¼º¡¯¿¡¼´Â À̺¥Æ® ±â¹Ý ¿£Æ¼Æ¼ÀÇ À̺¥Æ® ¼Ò½Ì(Event Sourcing)À» ¼Ò°³ÇÑ´Ù.
5Àå, ¡®CQRS¸¦ ÅëÇÑ °ü½É»ç ºÐ¸®¡¯¿¡¼´Â CQRS¸¦ ÅëÇØ ¸ðµ¨À» ºÐ¸®ÇÏ°í ÀÛ¼ºÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº»´Ù.
6Àå, ¡®¾ÆÄ« ½ºÆ®¸²À» ÅëÇÑ È帧¡¯¿¡¼´Â ¹é ÇÁ·¹¼Å¿Í ½ºÆ®¸² ±â¹Ý 󸮸¦ À§ÇÑ ¾ÆÄ« ½ºÆ®¸²(Akka Streams)À» ¼³¸íÇÑ´Ù.
7Àå, ¡®¾ÆÄ« HTTP¸¦ ÀÌ¿ëÇÑ REST ±¸Ã࡯¿¡¼´Â RESTful ÀÎÅÍÆäÀ̽º ±¸ÃàÀ» À§ÇÑ ¾ÆÄ« HTTPÀÇ È°¿ë ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.
8Àå, ¡®¾ÆÄ« ¸®¸ðÆÃ/Ŭ·¯½ºÅ͸¦ ÀÌ¿ëÇÑ ½ºÄÉÀÏ ¾Æ¿ô¡¯¿¡¼´Â ¼öÆòÀû È®Àå ¹× °í°¡¿ë¼ºÀ» À§ÇØ ¾ÆÄ« ¸®¸ðÆÃ/Ŭ·¯½ºÅÍ(Akka Remoting/Cluster)¸¦ È°¿ëÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº»´Ù.
9Àå, ¡®ConductRÀ» ÀÌ¿ëÇÑ ¹èÆ÷ °ü¸®¡¯¿¡¼´Â ConductRÀ» ÀÌ¿ëÇØ ¸¶ÀÌÅ©·Î¼ºñ½º¸¦ ±¸Ãà ¹× ¹èÆ÷ÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.
10Àå, ¡®¹®Á¦ ÇØ°á°ú ¸ð¹ü »ç·Ê¡¯¿¡¼´Â ¾ÆÄ« »ç¿ë¿¡ ´ëÇÑ ¸ð¹ü »ç·Ê¸¦ Á¦°øÇÑ´Ù.
¡Ú ¿Å±äÀÌÀÇ ¸» ¡Ú
½ºÄ®¶ó¿Í ¾ÆÄ«¸¦ À§ÇÑ °³³ä¼´Â ´õ·¯ Á¸ÀçÇÏÁö¸¸, ½Ç¹«¿¡ Àû¿ëÇϱâ À§ÇÑ °¡ÀÌµå ¿ªÇÒÀ» ÇØÁִ åÀº °ÅÀÇ ¾ø´Ù. ÀÌ Ã¥À» ÅëÇØ ÀåÀÌ ÁøÇàµÊ¿¡ µû¶ó ÇϳªÀÇ ¾ÖÇø®ÄÉÀ̼ÇÀ» Á÷Á¢ °³¼±ÇØ ³ª°¡¸ç ÃÖÁ¾ÀûÀ¸·Î ºÐ»ê ½Ã½ºÅÛÀ» ±¸ÃàÇÏ´Â Áñ°Å¿î °æÇèÀ» ÇÔ²²Çϱ⸦ ¹Ù¶õ´Ù. °¢ À庰 °úÁ¦µµ Á÷Á¢ ¼öÇàÇÏ°í, ÀúÀÚÀÇ ÄÚµå¿Í ºñ±³ÇÏ´Ù º¸¸é Àå¿¡¼ À̾߱âÇÏ°íÀÚ ÇÏ´Â °³³äÀ» ´õ ±íÀÌ ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
¸¹Àº °³¹ßÀÚ°¡ ½ºÄ®¶ó¿Í ¾ÆÄ« °¢°¢ÀÇ °³³äÀº ÀÚÁÖ Á¢ÇßÀ» ¼ö ÀÖÁö¸¸, ÀÌ Ã¥Àº ½ºÄ®¶ó ¹× ¾ÆÄ«¿Í ÇÔ²² µ¿½Ã¼º ÇÁ·Î±×·¡¹Ö, µµ¸ÞÀÎ ÁÖµµ ¼³°è, À̺¥Æ® ¼Ò½Ì, CQRS µî ºÐ»ê ½Ã½ºÅÛ ±¸ÃàÀ» À§ÇØ °í·ÁÇÒ ¼ö ÀÖ´Â ´Ù¾çÇÑ °³³äµéÀ» ÇÔ²² ÀÌÇØÇÒ ¼ö ÀÖ´Ù. ´Ü¼øÈ÷ °³³äÀ» ÀÌÇØÇÏ´Â ¼öÁØÀÌ ¾Æ´Ï¶ó, °³³äÀ» ³ì¿©³½ ½ÇÁ¦ ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÃàÇسª°¡´Â °úÁ¤À» ½Ç½ÀÇÏ´Ù º¸¸é ½Ç¹«¿¡ Àû¿ëÇϱâ À§ÇÑ ¹æÇ⼺¿¡ ´ëÇØ ÀλçÀÌÆ®¸¦ ¾òÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÀÌ Ã¥¿¡¼ Á¦¾ÈÇÏ´Â ´Ù¾çÇÑ ¶óÀ̺귯¸®¸¦ È°¿ëÇØ ºÐ»ê ½Ã½ºÅÛÀ» À§ÇÑ ´ç½ÅÀÇ ¿©Á¤ÀÌ ¼º°øÇϱ⸦ ¹Ù¶õ´Ù.
̵̧ȍ
¾ÆÄ« ¶óÀ̺귯¸®´Â ½ºÄ®¶ó ¼¼°è¿¡¼´Â ¹ÝÀÀÇü ¾ÖÇø®ÄÉÀÌ¼Ç ±¸ÃàÀ» À§ÇØ Àß ¾Ë·ÁÁø µµ±¸´Ù. ¾ÆÄ«ÀÇ ÇÙ½É ºôµù ºí·ÏÀº ºñµ¿±â, À̺¥Æ® ±â¹Ý, Àå¾Ö Çã¿ë, ºÐ»ê ½Ã½ºÅÛÀ» °¡´ÉÇϵµ·Ï µ¿½Ã¼ºÀ» Áö¿øÇÏ´Â ¾×ÅÍ´Ù. ¹ÝÀÀÇü ¾ÖÇø®ÄÉÀÌ¼Ç ±¸ÃàÇÏ´Â µ¥ ÀÖ¾î ¾×ÅÍ´Â ÁÁÀº ½ÃÀÛÀÌÁö¸¸, ¾ÆÄ« Ç÷§Æû ³»¿¡´Â °í·ÁÇØ¾ß ÇÒ ¿ä¼Ò°¡ ´õ ¸¹ÀÌ ÀÖ´Ù.
ÀÌ Ã¥Àº ¾ÆÄ« Ç÷§Æû ³»¿¡ ¸î °¡Áö ¸ðµâÀ» Ãß°¡ÇØ ¾ÖÇø®ÄÉÀ̼ÇÀ» ±¸ÃàÇÑ´Ù. Ãʱ⠸ð³î¸®½Ä ¾ÆÄ« ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸®ÆÑÅ丵ÇØ ³ª°¡¸é¼ ´À½¼ÇÏ°Ô °áÇÕµÈ ¸¶ÀÌÅ©·Î¼ºñ½º·Î °³¼±ÇØ ³ª°£´Ù. ¾ÆÄ« Æ۽ýºÅϽº(Akka Persistence)¸¦ ÅëÇÑ À̺¥Æ® ¼Ò½Ì(Event Sourcing) °°Àº »õ·Î¿î ±â´ÉÀ» ¹è¿ì°Ô µÉ °ÍÀÌ´Ù. ÀÌ Ã¥À» ´Ù ÀÐÀ¸¸é ¾ÆÄ« Ç÷§ÆûÀ» ±íÀÌ ÀÌÇØÇÏ°Ô µÅ ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Ãà¿¡ µµ¿òÀ» ¾òÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù.
°¢ éÅͺ° ¸®ÆÑÅ丵À» ÅëÇØ ¾ÆÄ« ³»ÀÇ »õ·Î¿î °³³ä ¹× ¶óÀ̺귯¸®¸¦ Á¢ÇÒ ¼ö ÀÖ´Ù. »õ·Î¿î ±â´ÉµéÀÇ °³³ä°ú ¼ºñ½º¸¦ ´À½¼ÇÏ°Ô °áÇÕ½ÃÅ°´Â ¹æ¹ýÀ» ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. »Ó¸¸ ¾Æ´Ï¶ó, °¢ À帶´Ù µ¶ÀÚ°¡ ¼öÇàÇØ¾ß ÇÏ´Â °úÁ¦°¡ ÀÖ´Ù. Á÷Á¢ °úÁ¦¸¦ ¼öÇàÇÔÀ¸·Î½á ¾ÆÄ«ÀÇ ±â´É°ú »õ·Î¿î °³³äÀ» ½ÇÁ¦ ȯ°æ¿¡ Àû¿ëÇÒ ¼ö ÀÖÀ» ¸¸Å ´õ ±íÀÌ ÀÌÇØÇÒ ¼ö ÀÖ´Ù.
¸ñÂ÷
1Àå. È¿°úÀûÀÎ ¹ÝÀÀÇü ¾ÖÇø®ÄÉÀÌ¼Ç ±¸Ãà
__ù ¿¹Á¦ ¾ÖÇø®ÄÉÀÌ¼Ç ÀÌÇØ
__¿¹Á¦ ¾ÖÇø®ÄÉÀÌ¼Ç ÀÛ¾÷
____µµÄ¿ ¼³Á¤
____¼Á¡ ¾ÖÇø®ÄÉÀ̼ÇÀÇ Postgres ½ºÅ°¸¶ ÀÌÇØ
____À©µµ¿ì¿¡¼ bash ½ºÅ©¸³Æ® ½ÇÇà
____¿¹Á¦ ¾ÖÇø®ÄÉÀÌ¼Ç ½ÇÇà
____¿¹Á¦ ¾ÖÇø®ÄÉÀÌ¼Ç ¿£µåÆ÷ÀÎÆ®¿Í »óÈ£ÀÛ¿ë
__¿¹Á¦ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¹®Á¦
____È®À强ÀÇ ÀÌÇØ
____½ºÄÉÀÏ Å¥ºê
____¿¹Á¦ ¾ÖÇø®ÄÉÀÌ¼Ç ¸ð³î¸®½Ä ½Ã½ºÅÛÀÇ È®Àå ¹®Á¦
____°ü°èÇü µ¥ÀÌÅͺ£À̽º »ç¿ë ¹®Á¦
____¾ÖÇø®ÄÉÀ̼ÇÀÇ µµ¸ÞÀÎ ¸ðµ¨ Æò°¡
____À߸øµÈ ¾×ÅÍ ÀÎÁö
____HTTP ¶óÀ̺귯¸® ±³Ã¼
__¿ä¾à
2Àå. ¾×Å͸¦ ÀÌ¿ëÇÑ µ¿½Ã¼º ÇÁ·Î±×·¡¹Ö ´Ü¼øÈ
__¾×ÅÍ ¸ðµ¨ µîÀå ¹è°æ ÀÌÇØ
__µ¿½Ã¼º°ú º´·ÄÈ Â÷ÀÌ
____ÄÄÇ»Æÿ¡¼ µ¿½Ã¼ºÀÇ Á¤ÀÇ
____º´·Ä¼ºÀÇ Á¤ÀÇ
____µ¿½Ã¼º ÇÁ·Î±×·¡¹ÖÀÇ À§Çè
__¾ÈÀüÇÑ µ¿½Ã¼ºÀ» À§ÇÑ ¾ÆÄ« ¾×ÅÍ »ç¿ë
____¾×ÅÍ¿Í µ¿½Ã¼º ÇÁ·Î±×·¡¹Ö
____¾ÆÄ« ¾×ÅÍ¿Í ¶ó¿ìÅ͸¦ ÀÌ¿ëÇÑ º´·Ä¼º
__¾ÆÄ«ÀÇ µð½ºÆÐó¿¡ ´ëÇØ
____µð½ºÆÐó ¹× ½ÇÇàÀÚ
____¾ÆÄ«ÀÇ µð½ºÆÐó À¯Çü
____¾×ÅÍÀÇ µð½ºÆÐó ±¸¼º
__¾ÆÄ« ¸ÞÀϹڽº À¯Çü
____Unbounded ¸ÞÀϹڽº
____Bounded ¸ÞÀϹڽº
____¾×ÅÍ ¸ÞÀϹڽº ±¸¼º
__»óŸӽÅ(FSM)À» ÅëÇÑ ¾×ÅÍ ¸®ÆÑÅ丵
____»õ·Î¿î ÇÁ·Î¼¼½º È帧 ¸ðµ¨¸µ
____»õ·Î¿î ÁÖ¹® ÇÁ·Î¼¼½º ÄÚµù
__¾ÆÄ« ¾×ÅÍ Å×½ºÆ®
____Å×½ºÆ® ÇǶó¹Ìµå ÀÌÇØ
____¾ÆÄ« ¾×ÅÍ ´ÜÀ§ Å×½ºÆ®
____SalesOrderProcessor ¾×ÅÍ Å×½ºÆ®
__Å×½ºÆ® °úÁ¦
__¿ä¾à
3Àå. µµ¸ÞÀÎ ÁÖµµ ¼³°è¸¦ ÅëÇÑ ºó¾àÇÑ ¸ðµ¨ °³¼±
__µµ¸ÞÀÎ ÁÖµµ ¼³°è °³³ä
____µµ¸ÞÀÎ °èÃþ ÆľÇ
____Àü·«Àû µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ÀÌÇØ
____Àü·«Àû µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ÀÇ»ç¼ÒÅë ÆÐÅÏ
____µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ºôµù ºí·Ï
__ºó¾àÇÑ ¸ðµ¨ ¹× dz¼ºÇÑ ¸ðµ¨ ½Äº°
__µµ¸ÞÀÎ ÁÖµµ ¼³°è ¸®ÆÑÅ丵 ¼³°è
____¼Á¡ ÄÁÅýºÆ® ¸Ê
____¾×Å͸¦ ÀÌ¿ëÇÑ µµ¸ÞÀÎ ÁÖµµ ¼³°è ¸ðµ¨¸µ
____»ç¿ëÀÚ °ü¸® ÄÁÅؽºÆ® ¸®¸ðµ¨¸µ
____Àç°í °ü¸® ÄÁÅؽºÆ® ¸®¸ðµ¨¸µ
____½Å¿ëÄ«µå ó¸® ÄÁÅؽºÆ® ¸®¸ðµ¨¸µ
____ÆǸŠÁÖ¹® ó¸® ÄÁÅؽºÆ® ¸®¸ðµ¨¸µ
__¸®ÆÑÅ丵µÈ ¼Á¡ ¾ÖÇø®ÄÉÀÌ¼Ç ÄÚµå ÀÌÇØ
____EntityActor Ãß»ó Ŭ·¡½º
____EntityAggregate Ãß»ó Ŭ·¡½º
____Book°ú InventoryClerk ¾×ÅÍ
__ÁÖ¹® »ý¼º 󸮿¡¼ Æ®·£Àè¼Ç ÇØ°á
__¸®ÆÑÅ丵 °³¼± Ç׸ñ
__¸®ÆÑÅ丵 °úÁ¦
__¿ä¾à
4Àå. À̺¥Æ® ¼Ò½ÌÀ» ÅëÇÑ È÷½ºÅ丮 »ý¼º
__À̺¥Æ® ¼Ò½Ì ±âº»
____À̺¥Æ® ¼Ò½ÌÀÇ ÀåÁ¡
____À̺¥Æ® ¼Ò½ÌÀÇ ´ÜÁ¡
____¼Á¡ ¾ÖÇø®ÄÉÀ̼ÇÀÇ À̺¥Æ® ¼Ò½Ì ¿¹
__À̺¥Æ® ¼Ò½ÌÀ» À§ÇÑ ¾ÆÄ« Æ۽ýºÅϽº
____PersistentActor trait
____AsyncWriteJournal
____SnapshotStore
__Áö¼ÓÀû ÀúÀå¼Ò¸¦ À§ÇÑ Ä«»êµå¶ó »ç¿ë
____Ä«»êµå¶ó ¼³Ä¡
____Ä«»êµå¶ó »ç¿ëÀ» À§ÇÑ ¾ÆÄ« Æ۽ýºÅϽº ±¸¼º
__Àç°í °ü¸® ¸ðµâ ¸®ÆÑÅ丵
____PersistentEntity Ãß»ó Ŭ·¡½º
____Aggregate Ãß»ó Ŭ·¡½º
____JsonSerializer Ŭ·¡½º
____Book ¿£Æ¼Æ¼ À̺¥Æ® ¼Ò½Ì
____InventoryClerk ¾×ÅÍ ¸®ÆÑÅ丵
____»õ·Î¿î Book ¿£Æ¼Æ¼ ½Ãµµ
____µµ¼ ½º³À¼¦ Ãß°¡
____ÁøÈÇÏ´Â ½ºÅ°¸¶ ó¸®
__¸®ÆÑÅ丵µÈ ÆǸŠÁÖ¹® ó¸® ¸ðµâ
__¸®ÆÑÅ丵 °úÁ¦
__¿ä¾à
5Àå. CQRS¸¦ ÅëÇÑ °ü½É»ç ºÐ¸®
__CQRSÀÇ ¿ª»ç
__À̺¥Æ® ¼Ò½Ì °üÁ¡¿¡¼ÀÇ CQRS
__Àб⠸𵨠±¸ÇöÀ» À§ÇÑ ¼³°è
____Àб⠸ðµ¨À» À§ÇÑ µ¥ÀÌÅÍ ÀúÀå¼Ò ¼±ÅÃ
____Àб⠸𵨿¡ ´ëÇÑ À̺¥Æ® Àû¿ë
____Æ۽ýºÅϽº Äõ¸®¸¦ ÀÌ¿ëÇÑ ºä ÀÛ¼º
__Book Àб⠸𵨠±¸Ãà
____ProtobufDatamodelAdapter ÅÂ±× Áö¿ø
____ÀÏ·¡½ºÆ½¼Ä¡ Áö¿ø trait
____ºä ºô´õ trait
____Book ºä ºô´õ ±¸Çö
____Book ºä ±¸Çö
____Àç½ÃÀÛ °¡´ÉÇÑ ÇÁ·ÎÁ§¼Ç ±¸Çö
__ÆǸŠÁÖ¹® ó¸® ¸®ÆÑÅ丵
____SalesOrder Àб⠸𵨠ºñÁ¤±ÔÈ
____Àç°í ÇÒ´çÀ» À§ÇÑ Æ۽ýºÅϽº Äõ¸® »ç¿ë
__»õ·Î¿î ¾ÖÇø®ÄÉÀÌ¼Ç ½ÇÇà
__¸®ÆÑÅ丵 °úÁ¦
__¸¶¹«¸® ÀÇ°ß
__¿ä¾à
6Àå. ¾ÆÄ« ½ºÆ®¸²À» ÅëÇÑ È帧
__¸®¾×Ƽºê ½ºÆ®¸² API ÀÌÇØ
____¹é ÇÁ·¹¼Å µ¿ÀÛ
__¾ÆÄ« ½ºÆ®¸² API
____¾ÆÄ« ½ºÆ®¸²ÀÇ ºôµù ºí·Ï
____½ºÆ®¸² ±¸ÃàÀÇ ±âº» ÇнÀ
____½ºÆ®¸² ½ÇÃ¼È ÀÌÇØ
____½ºÆ®¸² ³»ÀÇ ¿¬»êÀÚ °áÇÕ
____¹öÆÛ¸¦ ÀÌ¿ëÇÑ ¼Óµµ Á¦¾î
____È帧 ³»ÀÇ º¯°æ ¼Óµµ
____±×·¡ÇÁ ºô´õ DSLÀ» ÀÌ¿ëÇÑ Ã³¸® ±×·¡ÇÁ ±¸Ãà
____½ºÆ®¸®¹Ö I/O ó¸®
__ºä ºô´õ ÄÚµå ¸®ÆÑÅ丵
__¸®ÆÑÅ丵 °úÁ¦
__¿ä¾à
7Àå. ¾ÆÄ« HTTP¸¦ ÀÌ¿ëÇÑ REST ±¸Ãà
__RESTful HTTP ÀÎÅÍÆäÀ̽º »ý¼º
__¾ÆÄ« HTTP¿Í ½ºÇÁ·¹ÀÌ ºñ±³
____¾ÆÄ« ½ºÆ®¸²°ú ¹é ÇÁ·¹¼Å
____±× ¿ÜÀÇ Â÷ÀÌÁ¡
__¾ÆÄ« HTTP¸¦ ÀÌ¿ëÇÑ RESTful ÀÎÅÍÆäÀ̽º »ý¼º
____Àú¼öÁØ ¼¹ö API »ç¿ë
____°í¼öÁØ ¼¹ö API »ç¿ë
__¾ÆÄ« HTTP¸¦ ÀÌ¿ëÇÑ RESTful API È£Ãâ
____Ŭ¶óÀ̾ðÆ® Ãø ¾ÆÄ« HTTP ¹× ½ºÆ®¸²
____¾Æ¿ô¹Ù¿îµå ¿¬°á ¸ðµ¨ ÀÌÇØ
__¸®ÆÑÅ丵 °úÁ¦
____Àιٿîµå HTTP º¯°æ
____¾Æ¿ô¹Ù¿îµå HTTP º¯°æ
__¿ä¾à
8Àå. ¾ÆÄ« ¸®¸ðÆÃ/Ŭ·¯½ºÅ͸¦ ÀÌ¿ëÇÑ ½ºÄÉÀÏ ¾Æ¿ô
__¾ÆÄ« ¸®¸ðÆà »ç¿ë
____¾ÆÄ« ¸®¸ðÆà Ȱ¼ºÈ
____¿ø°Ý ¾×ÅÍ¿Í »óÈ£ÀÛ¿ë
____¾ÆÄ« ¸®¸ðÆà ¹× Á÷·ÄÈ
__¾ÆÄ« Ŭ·¯½ºÅ͸µ »ç¿ë
____Ŭ·¯½ºÅ͸µÀÇ ÇÙ½É ¾ÆÅ°ÅØó ¿øÄ¢
____Ŭ·¯½ºÅ͸µ È°¼ºÈ
____Ŭ·¯½ºÅ͸µÀ» À§ÇÑ ¿ø°Ý ¿öÄ¿ ¿¹Á¦ ¸®ÆÑÅ丵
__¼Á¡ ¾ÖÇø®ÄÉÀ̼ǿ¡ Ŭ·¯½ºÅ͸µ Àû¿ë
____¼Á¡ ¾ÖÇø®ÄÉÀ̼ǿ¡ Ŭ·¯½ºÅÍ »þµù Àû¿ë
____¼Á¡ ¾ÖÇø®ÄÉÀ̼ǿ¡ Ŭ·¯½ºÅÍ ½Ì±ÛÅæ Àû¿ë
____Ŭ·¯½ºÅÍ ¼Á¡ ¾ÖÇø®ÄÉÀÌ¼Ç ½ÇÇà
__¿ä¾à
9Àå. ConductRÀ» ÀÌ¿ëÇÑ ¹èÆ÷ °ü¸®
__ConductR °³¿ä
__ConductR ·ÎÄà ¼³Ä¡¿Í ¼³Á¤
____ConductR CLI »÷µå ¹Ú½º ¼³Ä¡
____ConductR »÷µå ¹Ú½º ¼³Á¤
____sbt-conductr Ç÷¯±×ÀÎ ¼³Á¤
____»÷µå ¹Ú½º ³»ÀÇ µµÄ¿ »ç¿ë ¾È³»
__ConductR CLI »ç¿ë
____ConductR ¹öÀü Á¤º¸ È®ÀÎ
____¹èÆ÷µÈ ¹øµé Á¤º¸ È®ÀÎ
____¹øµé ¼ºñ½º Á¤º¸ È®ÀÎ
____¹øµé ¼ºñ½º Á¢±Ù Á¦¾î ¸ñ·Ï È®ÀÎ
____ConductR·Î ¹øµé ·Îµå
____ConductR ³»¿¡ ¹øµé ½ÃÀÛ
____ConductR ³»ÀÇ ¹øµé Á¾·á
____ConductR¿¡¼ ¹øµé Á¦°Å
____ConductR ³»¿¡¼ ¹øµé °ü·Ã À̺¥Æ® È®ÀÎ
____¹øµé ·Î±× È®ÀÎ
__ConductRÀ» ÅëÇÑ ¼ºñ½º Áغñ
____¹èÆ÷¸¦ À§ÇÑ ¹øµé »ý¼º
____ConductR·Î ¹èÆ÷¸¦ À§ÇÑ ÄÚµå ¿ä±¸ »çÇ×
____ConductRÀ» ÀÌ¿ëÇÑ ¼Á¡ ¾ÖÇø®ÄÉÀÌ¼Ç ¸®ÆÑÅ丵
____¼Á¡ ¾ÖÇø®ÄÉÀÌ¼Ç ºÐ¸®
____ConductR Áö¿øÀ» À§ÇÑ ÀϹÝÀûÀÎ ¼öÁ¤
____¼ºñ½º ¸ðµâÀÇ ConductR ¹øµé Àüȯ
____ÆǸŠÁÖ¹® ó¸® ¸®ÆÑÅ丵
____Àç°í °ü¸® ¸ðµâ ¸®ÆÑÅ丵
__¼Á¡ ¹øµé ºôµå ¹× ¹èÆ÷
__ConductR ³»ÀÇ ¼Á¡ ¾ÖÇø®ÄÉÀÌ¼Ç ¸ðµâ Å×½ºÆ®
__¿ä¾à
10Àå. ¹®Á¦ ÇØ°á ¹× ¸ð¹ü »ç·Ê
__¸®ÆÑÅ丵 ȸ°í
____´õ ³ªÀº ¾×ÅÍ ±¸Çö
____µµ¸ÞÀÎ ÁÖµµ ¼³°è »ç¿ë
____¾ÆÄ« Æ۽ýºÅϽº ¹× À̺¥Æ® ¼Ò½Ì
____¾ÆÄ« Æ۽ýºÅϽº Äõ¸® ¹× CQRS
____¾ÆÄ« ½ºÆ®¸²
____¾ÆÄ« HTTP
____¾ÆÄ« ¸®¸ðÆà ¹× ¾ÆÄ« Ŭ·¯½ºÅ͸µ
____ConductRÀ» ÅëÇÑ ¸ðµâ ºÐ¸®
__¾×ÅÍ ¹®Á¦ ÇØ°á ¹× ¸ð¹ü »ç·Ê
____ǻó »ç¿ë ½Ã °¡º¯ »óÅ ÇÇÇϱâ
____ActorSelection »ç¿ë ÃÖ¼ÒÈ
____ask ´ë½Å tell »ç¿ëÇϱâ
____¸¹Àº ÃÖ»óÀ§ ¾×ÅÍ »ý¼º ÇÇÇϱâ
__¾ÆÄ« HTTP¸ð¹ü »ç·Ê ¹× ¹®Á¦ ÇØ°á
____~ ¿¬»êÀÚ °ü·Ã ¹®Á¦
____Àιٿîµå HTTP ¿äû ·Î±× ±¸Ãà
____¾Æ¿ô¹Ù¿îµå HTTP ¿äû ·Î±× ±¸Ãà
__¾ÆÄ« Ŭ·¯½ºÅ͸µ ¹× ¾ÆÄ« ¸®¸ðÆà ¹®Á¦ ÇØ°á ¹× ¸ð¹ü »ç·Ê
____±¸¼º ¿ä¼Ò ¼³Á¤ ½Ã, È£½ºÆ® À̸§ ´ë½Å IP ÁÖ¼Ò »ç¿ë ¼±È£Çϱâ
____2°³ ÀÌ»óÀÇ ½Ãµå ³ëµå ±¸¼º
____·Î±×ÀÇ Disassociated ¿¹¿Ü´Â Á¤»óÀÏ ¼ö ÀÖÀ½
__Ãß°¡ ÀÚ·á
____Lagom
____¾ÆÄ« ½ºÆ®¸² ÄîºÏ
____ÀϹÝÀûÀÎ ÆÐÅÏ
____¾ÆÄ« Æ۽ýºÅϽº ½ºÅ°¸¶ º¯°æ
____¾ÆÄ« °ü·Ã ±ÇÀå µµ¼
____¿¡¸¯ ¿¡¹Ý½ºÀÇ µµ¸ÞÀÎ ÁÖµµ ¼³°è
____¸¶Æ¾ ÆÄ¿ï·¯ÀÇ À̺¥Æ® ¼Ò½Ì
__¿ä¾à
ã¾Æº¸±â
ÀúÀÚ¼Ò°³
»ý³â¿ùÀÏ | - |
---|
ÇØ´çÀÛ°¡¿¡ ´ëÇÑ ¼Ò°³°¡ ¾ø½À´Ï´Ù.
»ý³â¿ùÀÏ | - |
---|
ÇØ´çÀÛ°¡¿¡ ´ëÇÑ ¼Ò°³°¡ ¾ø½À´Ï´Ù.
ÁÖ°£·©Å·
´õº¸±â»óÇ°Á¤º¸Á¦°ø°í½Ã
À̺¥Æ® ±âȹÀü
Àü°øµµ¼/´ëÇб³Àç ºÐ¾ß¿¡¼ ¸¹Àº ȸ¿øÀÌ ±¸¸ÅÇÑ Ã¥
ÆǸÅÀÚÁ¤º¸
»óÈ£ |
(ÁÖ)±³º¸¹®°í |
---|---|
´ëÇ¥ÀÚ¸í |
¾Èº´Çö |
»ç¾÷ÀÚµî·Ï¹øÈ£ |
102-81-11670 |
¿¬¶ôó |
1544-1900 |
ÀüÀÚ¿ìÆíÁÖ¼Ò |
callcenter@kyobobook.co.kr |
Åë½ÅÆǸž÷½Å°í¹øÈ£ |
01-0653 |
¿µ¾÷¼ÒÀçÁö |
¼¿ïƯº°½Ã Á¾·Î±¸ Á¾·Î 1(Á¾·Î1°¡,±³º¸ºôµù) |
±³È¯/ȯºÒ
¹ÝÇ°/±³È¯ ¹æ¹ý |
¡®¸¶ÀÌÆäÀÌÁö > Ãë¼Ò/¹ÝÇ°/±³È¯/ȯºÒ¡¯ ¿¡¼ ½Åû ¶Ç´Â 1:1 ¹®ÀÇ °Ô½ÃÆÇ ¹× °í°´¼¾ÅÍ(1577-2555)¿¡¼ ½Åû °¡´É |
---|---|
¹ÝÇ°/±³È¯°¡´É ±â°£ |
º¯½É ¹ÝÇ°ÀÇ °æ¿ì Ãâ°í¿Ï·á ÈÄ 6ÀÏ(¿µ¾÷ÀÏ ±âÁØ) À̳»±îÁö¸¸ °¡´É |
¹ÝÇ°/±³È¯ ºñ¿ë |
º¯½É ȤÀº ±¸¸ÅÂø¿À·Î ÀÎÇÑ ¹ÝÇ°/±³È¯Àº ¹Ý¼Û·á °í°´ ºÎ´ã |
¹ÝÇ°/±³È¯ ºÒ°¡ »çÀ¯ |
·¼ÒºñÀÚÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¼Õ½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì ·¼ÒºñÀÚÀÇ »ç¿ë, Æ÷Àå °³ºÀ¿¡ ÀÇÇØ »óÇ° µîÀÇ °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì ·º¹Á¦°¡ °¡´ÉÇÑ »óÇ° µîÀÇ Æ÷ÀåÀ» ÈѼÕÇÑ °æ¿ì ·½Ã°£ÀÇ °æ°ú¿¡ ÀÇÇØ ÀçÆǸŰ¡ °ï¶õÇÑ Á¤µµ·Î °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì ·ÀüÀÚ»ó°Å·¡ µî¿¡¼ÀÇ ¼ÒºñÀÚº¸È£¿¡ °üÇÑ ¹ý·üÀÌ Á¤ÇÏ´Â ¼ÒºñÀÚ Ã»¾àöȸ Á¦ÇÑ ³»¿ë¿¡ ÇØ´çµÇ´Â °æ¿ì |
»óÇ° Ç°Àý |
°ø±Þ»ç(ÃâÆÇ»ç) Àç°í »çÁ¤¿¡ ÀÇÇØ Ç°Àý/Áö¿¬µÉ ¼ö ÀÖÀ½ |
¼ÒºñÀÚ ÇÇÇغ¸»ó |
·»óÇ°ÀÇ ºÒ·®¿¡ ÀÇÇÑ ±³È¯, A/S, ȯºÒ, Ç°Áúº¸Áõ ¹× ÇÇÇغ¸»ó µî¿¡ °üÇÑ »çÇ×Àº¼ÒºñÀÚºÐÀïÇØ°á ±âÁØ (°øÁ¤°Å·¡À§¿øȸ °í½Ã)¿¡ ÁØÇÏ¿© ó¸®µÊ ·´ë±Ý ȯºÒ ¹× ȯºÒÁö¿¬¿¡ µû¸¥ ¹è»ó±Ý Áö±Þ Á¶°Ç, ÀýÂ÷ µîÀº ÀüÀÚ»ó°Å·¡ µî¿¡¼ÀǼҺñÀÚ º¸È£¿¡ °üÇÑ ¹ý·ü¿¡ µû¶ó ó¸®ÇÔ |
(ÁÖ)ÀÎÅÍÆÄÅ©Ä¿¸Ó½º´Â ȸ¿ø´ÔµéÀÇ ¾ÈÀü°Å·¡¸¦ À§ÇØ ±¸¸Å±Ý¾×, °áÁ¦¼ö´Ü¿¡ »ó°ü¾øÀÌ (ÁÖ)ÀÎÅÍÆÄÅ©Ä¿¸Ó½º¸¦ ÅëÇÑ ¸ðµç °Å·¡¿¡ ´ëÇÏ¿©
(ÁÖ)KGÀ̴Ͻýº°¡ Á¦°øÇÏ´Â ±¸¸Å¾ÈÀü¼ºñ½º¸¦ Àû¿ëÇÏ°í ÀÖ½À´Ï´Ù.
¹è¼Û¾È³»
±³º¸¹®°í »óÇ°Àº Åùè·Î ¹è¼ÛµÇ¸ç, Ãâ°í¿Ï·á 1~2Àϳ» »óÇ°À» ¹Þ¾Æ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.
Ãâ°í°¡´É ½Ã°£ÀÌ ¼·Î ´Ù¸¥ »óÇ°À» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä »óÇ°À» ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.
±ººÎ´ë, ±³µµ¼Ò µî ƯÁ¤±â°üÀº ¿ìü±¹ Åù踸 ¹è¼Û°¡´ÉÇÕ´Ï´Ù.
¹è¼Ûºñ´Â ¾÷ü ¹è¼Ûºñ Á¤Ã¥¿¡ µû¸¨´Ï´Ù.