¹Ýµð¾Ø·ç´Ï½º ÀÎÅͳݼ­Á¡

³×ºñ°ÔÀÌ¼Ç ½Ç½Ã°£ Àαâ Ã¥

    À̺¥Æ® ¼Ò½Ì°ú ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³

    º£½ºÆ®

    À̺¥Æ® ¼Ò½Ì°ú ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³

    • ¼Õ°æ´ö Àú
    • ¿¡ÀÌÄÜÃâÆÇ
    • 2024³â 07¿ù 30ÀÏ
    • Á¤°¡
      35,000¿ø
    • ÆÇ¸Å°¡
      31,500¿ø [10% ÇÒÀÎ]
    • °áÁ¦ ÇýÅÃ
      ¹«ÀÌÀÚ
    • Àû¸³±Ý
      1,750¿ø Àû¸³ [5%P]

      NAVER Pay °áÁ¦ ½Ã ³×À̹öÆäÀÌ Æ÷ÀÎÆ® 5% Àû¸³ ?

    • ¹è¼Û±¸ºÐ
      ¾÷ü¹è¼Û(¹ÝµðºÏ)
    • ¹è¼Û·á
      ¹«·á¹è¼Û
    • Ãâ°í¿¹Á¤ÀÏ

      Ãâ°í¿¹Á¤ÀÏ ¾È³»

      ¡Ø Ãâ°í¿¹Á¤ÀÏÀº µµ¼­ Àç°í»óȲ¿¡ µû¶ó º¯µ¿µÉ ¼ö ÀÖ½À´Ï´Ù.

      close

      2025³â 05¿ù 12ÀÏ(¿ù)

      ¡Ø Ãâ°í¿¹Á¤ÀÏÀº µµ¼­ Àç°í»óȲ¿¡ µû¶ó º¯µ¿µÉ ¼ö ÀÖ½À´Ï´Ù.

    ¼ö·®
    ȸ¿ø¸®ºä
    - [0]
    ISBN: 9791161758589 476ÂÊ 904g 188 x 235 (§®)

    Áö±Ý ÀÌÃ¥Àº

    ÀÌ ºÐ¾ßÀÇ º£½ºÆ®¼¿·¯

    ÀÌ Ã¥Àº

    À̺¥Æ® ¼Ò½ÌÀ» ÀÌÇØÇϱâ À§ÇØ µµ¸ÞÀÎ ÁÖµµ ¼³°è¿Í °´Ã¼ÁöÇâ ¼³°è ¿øÄ¢(SOLID)À» ¿¬°èÇØ¼­ ¼³¸íÇϴ åÀÌ´Ù. À̾ À̺¥Æ® ¼Ò½ÌÀÇ ÇÙ½ÉÀÎ µµ¸ÞÀÎ À̺¥Æ®, Àç¼öÈ­¿Í ½º³À¼¦, ÇÁ·ÎÁ§¼Ç/CQRS ¸ÞÄ¿´ÏÁòÀÌ µ¿ÀÛÇÏ´Â ¹æ½Ä°ú À̺¥Æ®ÀÇ ¹öÀüÀ» °ü¸®ÇÏ´Â ¹æ¹ýÀ» ¹è¿î´Ù. Çí»ç°í³¯ ¾ÆÅ°ÅØÃ³¿Í ÇÔ²² ¿©·¯ ¼­ºñ½º°¡ API¿Í À̺¥Æ®·Î Çù·ÂÇÏ´Â ¹æ½ÄÀ» ¾Ë¾Æº¸°í À̺¥Æ® ±â¹Ý ¸¶ÀÌÅ©·Î¼­ºñ½º¿¡¼­ »ç°¡(SAGA)¿Í º¸»ó Æ®·£Àè¼ÇÀ¸·Î µ¥ÀÌÅÍ Àϰü¼ºÀ» ´Þ¼ºÇÏ´Â ¹æ¹ýÀ» À̺¥Æ® ¼Ò½ÌÀ» Àû¿ëÇßÀ» ¶§¿Í ±×·¸Áö ¾ÊÀº °æ¿ì¸¦ ¹è¿ì°í »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¿Í °ü°è¸¦ ¼³¸íÇÑ´Ù. ¸¶Áö¸·À¸·Î Äí¹ö³×Ƽ½º ȯ°æÀ» ±¸ÃàÇÏ°í ¼­ºñ½º¸¦ ¹èÆ÷ÇØº»´Ù.


     


     


    ÃâÆÇ»ç ¸®ºä

    ÀÌ Ã¥¿¡¼­ ´Ù·ç´Â ³»¿ë

    µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ºôµù ºí·Ï°ú °´Ã¼ÁöÇâ ¼³°è ¿øÄ¢(SOLID)À» »ç·Ê·Î ¼³¸í
    À̺¥Æ® ¼Ò½ÌÀ» »ç¿ëÇÒ ¶§ ¸¸³ª´Â ´ëÇ¥ÀûÀÎ ¹®Á¦¿Í ÇØ°á ¹æ¹ý ¼Ò°³
    ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³¿¡¼­ ¼­ºñ½º°£ RESTful API¿Í À̺¥Æ®¸¦ »ç¿ëÇÑ Çù·Â ¼³¸í
    °á°úÀû Àϰü¼ºÀ» ±¸ÇöÇÏ´Â »ó¼¼ÇÑ ¹æ¹ý°ú À̺¥Æ® ¼Ò½ÌÀ¸·Î °á°úÀû Àϰü¼º ±¸Çö
    °á°úÀû Àϰü¼ºÀÇ ºñµ¿±â ÇÁ·Î¼¼½º¿Í »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º ±¸Çö ¹æ¹ý ¼³¸í
    ¸í·É°ú Á¶È¸ Ã¥ÀÓ ºÐ¸®(CQRS)¿¡ ´ëÇÑ ´Ù¾çÇÑ »ç·Ê ¿¬±¸ ¼Ò°³
    Äí¹ö³×Ƽ½º/À̽ºÆ¼¿À¸¦ Ȱ¿ëÇÑ ¼­ºñ½º ¹èÆ÷¿Í ¸ð´ÏÅ͸µ

    ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ

    µµ¸ÞÀÎ ÁÖµµ ¼³°è³ª °´Ã¼ÁöÇâ ¼³°è ¿øÄ¢À» óÀ½ Á¢ÇÏ´Â °³¹ßÀÚ
    À̺¥Æ® ¼Ò½ÌÀ» ü°èÀûÀ¸·Î ÇнÀÇÏ°í ½Ç¹«¿¡ Àû¿ëÇÏ°í ½ÍÀº °³¹ßÀÚ
    °á°úÀû Àϰü¼ºÀ» ±¸ÇöÇÏ´Â ±¸Ã¼ÀûÀÎ ¹æ¹ýÀ» ¾Ë°í ½ÍÀº °³¹ßÀÚ
    ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³¿¡¼­ ÁÖ¿ä ÁÖÁ¦¿¡ ´ëÇØ Á¤¸®ÇÏ°í ½ÍÀº °³¹ßÀÚ

    ÀÌ Ã¥ÀÇ ±¸¼º

    ÀÌ Ã¥Àº ÃÑ 9ÀåÀ¸·Î ±¸¼ºµÅ ÀÖ½À´Ï´Ù. µµ¸ÞÀÎ ÁÖµµ ¼³°è, °´Ã¼ÁöÇâ ¼³°è ¿øÄ¢¿¡¼­ ½ÃÀÛÇØ À̺¥Æ® ¼Ò½Ì, CQRS¿Í ÇÔ²² ¸¶ÀÌÅ©·Î¼­ºñ½º °£ Çù·Â ¹æ¹ý ±×¸®°í º¸»ó Æ®·£Àè¼Ç(Compensating Transaction) ¶Ç´Â »ç°¡SAGA·Î ¾Ë·ÁÁø °á°úÀû Àϰü¼ºÀ» ´Ù·ì´Ï´Ù. ÈĹݺο¡´Â ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³¿¡¼­ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¿Í °ü·ÃµÈ À̽´¿Í ¹èÆ÷ ¹× ¿î¿µÀ» À§ÇÑ µµÄ¿(Docker)¿Í Äí¹ö³×Ƽ½º(Kubernetes)ó·³ Ŭ¶ó¿ìµå ȯ°æ¿¡¼­ ¸¹ÀÌ »ç¿ëÇÏ´Â ±â¼úÀ» ´Ù·ì´Ï´Ù.
    ¡®1Àå, µµ¸ÞÀÎ ÁÖµµ ¼³°è'¿¡¼­´Â µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ±âº» ¿ä¼ÒÀÎ ¿£Æ¼Æ¼, °ª °´Ã¼, ¾Ö±×¸®°ÔÀÌÆ®, ¼­ºñ½º, ¸®Æ÷ÁöÅ丮, ÆÑÅ丮¸¦ ¼Ò°³ÇÕ´Ï´Ù. ƯÈ÷ ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³´Â µµ¸ÞÀÎ ÁÖµµ ¼³°è¿¡¼­ ¸»ÇÏ´Â ¾Ö±×¸®°ÔÀÌÆ®¿Í Àß ¾î¿ï¸®´Â Á¢±Ù¹ýÀÔ´Ï´Ù. ÀÌ ¿©¼¸ °³ ±¸¼º ¿ä¼Ò¸¦ Á¤È®ÇÏ°Ô ÀÌÇØÇÏ´Â °Í¸¸À¸·Îµµ ´ÜÀÏ ¸¶ÀÌÅ©·Î¼­ºñ½ºÀÇ ³»ºÎ ¾ÆÅ°ÅØÃ³¸¦ ¼³°èÇÒ ¼ö ÀÖ½À´Ï´Ù.
    ¡®2Àå, °´Ã¼ÁöÇâ ¼³°è ¿øÄ¢¡¯¿¡¼­´Â 1Àå¿¡¼­ ¼³¸íÇÑ µµ¸ÞÀÎ ÁÖµµ ¼³°èÀÇ ºôµù ºí·Ï°ú ÇÔ²² °´Ã¼ÁöÇâ ¼³°è ¿øÄ¢ÀÎ SOLID¸¦ »ìÆìº¾´Ï´Ù. SOLID´Â ¿À·¡µÈ ¿øÄ¢ÀÌÁö¸¸ ¿©ÀüÈ÷ Áß¿äÇϸç È¿°ú°¡ ÀÖ½À´Ï´Ù.
    ¡®3Àå, À̺¥Æ® ¼Ò½Ì I¡¯¿¡¼­´Â ±×·º ¿µÀÌ °ø°³ÇÑ ¡ºCQRS Documents¡»¿¡¼­ Á¦½ÃÇÑ ¾ÆÀ̵ð¾î¸¦ ±â¹ÝÀ¸·Î À̺¥Æ® ¼Ò½Ì ¸ÞÄ¿´ÏÁò¿¡ ´ëÇØ ¼³¸íÇÏ°í ±¸ÇöÇÕ´Ï´Ù. ÀÌ ¸ÞÄ¿´ÏÁòÀº À̾îÁö´Â Àå¿¡¼­ ¼³¸íÇÏ´Â À̺¥Æ® ¼Ò½ÌÀÇ ÁÖ¿ä Æ¯Â¡°ú À̽´¸¦ ÇØ°áÇϱâ À§ÇØ Áö¼ÓÀûÀ¸·Î °³¼±ÇÕ´Ï´Ù.
    ¡®4Àå, À̺¥Æ® ¼Ò½Ì II¡¯¿¡¼­´Â À̺¥Æ® ¼Ò½ÌÀ» Àû¿ëÇßÀ» ¶§ ¹ß»ýÇÒ ¼ö ÀÖ´Â ´ëÇ¥ÀûÀÎ ¹®Á¦¸¦ »ìÆìº¾´Ï´Ù. ±ä ¶óÀÌÇÁ»çÀÌŬÀ» °¡Áö´Â ¾Ö±×¸®°ÔÀÌÆ®´Â ¸¹Àº À̺¥Æ®°¡ ¹ß»ýÇÕ´Ï´Ù. À̺¥Æ®µéÀ» ¸®Ç÷¹ÀÌÇÒ ¶§ »ç¿ë °¡´ÉÇÑ ¸Þ¸ð¸®ÀÇ ÇѰè¿Í ¼º´É ÀúÇϸ¦ ¹æÁöÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº¾´Ï´Ù. ¶ÇÇÑ ½Ã½ºÅÛÀ» À¯Áöº¸¼öÇÒ ¶§ ¿ä±¸»çÇ×À» ¼ö¿ëÇϸ鼭 À̺¥Æ®ÀÇ º¯È­(¹öÀü º¯È­)¸¦ ó¸®ÇÏ´Â ¹æ¹ýµµ ¼Ò°³ÇÕ´Ï´Ù. ¾Ö±×¸®°ÔÀÌÆ®´Â µ¶¸³ÀûÀÎ Á¸ÀçÀÌÁö¸¸ °°Àº ¾Ö±×¸®°ÔÀÌÆ®°¡ µ¿½Ã¿¡ ´Ù¸¥ ¸í·ÉÀ» ó¸®Çϸ鼭 °°Àº ¼Ó¼ºÀ» º¯°æÇÒ ¶§ ºÎ¼öÀûÀ¸·Î ¹ß»ýÇÒ ¼ö ÀÖ´Â ¹®Á¦¿Í ÇØ°á ¹æ¹ýÀ» ¾Ë¾Æº¾´Ï´Ù.
    ¡®5Àå, ¸¶ÀÌÅ©·Î¼­ºñ½º Çù¾÷¡¯¿¡¼­´Â Çí»ç°í³¯ ¾ÆÅ°ÅØÃ³(Hexagonal Architecture)¿¡¼­ ¼­ºñ½º °£ Çù·Â ¹æ¹ýÀÎ Àιٿîµå¿Í ¾Æ¿ô¹Ù¿îµå ¾î´ðÅ͸¦ ¼³¸íÇÏ°í ´ëÇ¥ÀûÀÎ ±¸Çö ±â¼úÀÎ RESTful API¿Í À̺¥Æ®¸¦ »ìÆìº¾´Ï´Ù. Àιٿîµå ¾î´ðÅÍ´Â ¿ÜºÎÀÇ ¿äûÀ» ¹Þ¾Æ ºñÁî´Ï½º ·ÎÁ÷À» ó¸®ÇÏ°í ¾Æ¿ô¹Ù¿îµå ¾î´ðÅÍ´Â ºñÁî´Ï½º ·ÎÁ÷ ¼öÇà Àü¹Ý¿¡ °ÉÃÄ ´Ù¸¥ ¼­ºñ½º¿ÍÀÇ Çù·Â¿¡ »ç¿ëÇÕ´Ï´Ù.
    ¡®6Àå, °á°úÀû Àϰü¼º ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³¡¯¿¡¼­ ³í¶õÀÇ Áß½ÉÀÌ µÇ´Â °á°úÀû Àϰü¼º(ºÐ»ê Æ®·£Àè¼Ç, º¸»ó Æ®·£Àè¼Ç, »ç°¡)°ú À̸¦ ÇØ°áÇÏ´Â ¿ø¸®¸¦ ¼³¸íÇÕ´Ï´Ù. ¿¡¸¯ ¿¡¹Ý½º(Eric Evans)°¡ µµ¸ÞÀÎ ÁÖµµ ¼³°è¿¡¼­ ¼Ò°³ÇÑ °èÁ ÀÌü¸¦ »ç°¡·Î ±¸ÇöÇØ º¾´Ï´Ù.
    ¡®7Àå, ¸í·É°ú Á¶È¸ Ã¥ÀÓ ºÐ¸®(CQRS)¡¯¿¡¼­´Â 3Àå°ú 4Àå¿¡¼­ ¼³¸íÇÑ À̺¥Æ® ¸®Ç÷¹ÀÌÀÇ ´ÜÁ¡À» º¸¿ÏÇϱâ À§ÇØ Á¶È¸ Àü¿ë µ¥ÀÌÅ͸¦ ¹Ì¸® »ý¼ºÇÏ´Â CQRS¸¦ ´Ù·ç°í ´ëÇ¥ÀûÀΠȰ¿ë »ç·Ê¸¦ ¼Ò°³ÇÕ´Ï´Ù. CQRS´Â Æ®·£Àè¼Ç ¿ä±¸»çÇ׿¡ µû¶ó ¸¶ÀÌÅ©·Î¼­ºñ½º °£»Ó¸¸ ¾Æ´Ï¶ó ´ÜÀÏ ¸¶ÀÌÅ©·Î¼­ºñ½º¿¡µµ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
    ¡®8Àå, »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¡¯¿¡¼­´Â ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³¿¡¼­ ¹é¿£µå ºÐ¸®¸¸Å­ ÇÁ·ÐÆ®¿£µåÀÇ ºÐ¸®µµ Áß¿äÇÕ´Ï´Ù. ÀÌ Àå¿¡¼­´Â ¹é¿£µåó·³ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¸¦ ºÐ¸®ÇÏ´Â ¸¶ÀÌÅ©·Î ÇÁ·ÐÆ®¿£µå¿Í ¸¶ÀÌÅ©·Î¼­ºñ½ºÀÇ µ¶¸³¼ºÀ» ³ôÀ̱â À§ÇÑ ¹èÆ÷ ¹æ¹ýÀ» ¼Ò°³ÇÕ´Ï´Ù. ÇÁ·ÐÆ®¿£µå°¡ ¹é¿£µå·Î ¿äû ÈÄ ÀÀ´äÀ» ¹Þ¾ÒÁö¸¸ ºñÁî´Ï½º Æ®·£Àè¼ÇÀº ¾ÆÁ÷ ÁøÇà ÁßÀÏ ¼ö ÀÖ½À´Ï´Ù. ÀÌ´Â ¹é¿£µå °£ °á°úÀû Àϰü¼ºÀ» ´Þ¼ºÇϱâ À§ÇØ À̺¥Æ®¸¦ Ȱ¿ëÇÏ°í ºñµ¿±â·Î µ¿ÀÛÇϱ⠶§¹®ÀÔ´Ï´Ù. °á±¹ ÇÁ·ÐÆ®¿£µå ¿äû°ú ÀÀ´ä°£ ´ÜÀýÀÌ ¹ß»ýÇϴµ¥ À̸¦ ÇØ°áÇÏ´Â ´ëÇ¥ÀûÀÎ ÆÐÅϵéÀ» ¼³¸íÇÏ°í ½ºº§Æ®·Î ±¸ÇöÇØ º¾´Ï´Ù.
    ¡®9Àå, Ŭ¶ó¿ìµå ȯ°æ¡¯¿¡¼­´Â Ŭ¶ó¿ìµå ¿î¿µ¿¡ ÇÊ¿äÇÑ ÁÖ¿ä ±â¼úÀ» ¼³¸íÇÏ°í ¾Õ¼­ °³¹ßÇÑ ¼­ºñ½º¸¦ ¹èÆ÷ÇØ º¾´Ï´Ù.
    µ¶¸³ÀûÀÎ ¸¶ÀÌÅ©·Î¼­ºñ½º¸¦ ¿î¿µÇϸ鼭 ºí·ç-±×¸°/Ä«³ª¸® ¹èÆ÷¸¦ Áö¿øÇÏ´Â ÃÖÀûÀÇ ¿ÀǼҽº ¼Ö·ç¼ÇÀÎ µµÄ¿¿Í Äí¹ö³×Ƽ½ºÀÇ ±âº» ±¸¼º ¿ä¼Ò¸¦ ¼Ò°³ÇÕ´Ï´Ù. ¸¶ÀÌÅ©·Î¼­ºñ½º °³¹ß ½Ã Ŭ¶ó¿ìµå °ü·Ã ±â¼ú ¿ä¼Ò¸¦ Äڵ庣À̽º¿Í ºÐ¸®ÇØ ºñÁî´Ï½º¿¡ ´õ¿í ÁýÁßÇÒ ¼ö ÀÖ°Ô ÇÏ´Â ¼­ºñ½º ¸Þ½ÃÀÎ À̽ºÆ¼¿À ¹× ¹èÆ÷ÇÑ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¸ÅÆ®¸¯À» ¸ð´ÏÅ͸µÇØ ½Ã°è¿­ µ¥ÀÌÅÍ·Î ¼öÁýÇÏ´Â ÇÁ·Î¸ÞÅ׿콺(Prometheus), ÇÁ·Î¸ÞÅ׿콺·Î ¼öÁýÇÑ ¸ÅÆ®¸¯À» ½Ã°¢È­ÇÏ´Â ±×¶óÆÄ³ª(Grafana), Ű¾Ë¸®(Kiali)¸¦ ¼³Ä¡ÇÏ°í ¼³Á¤ÇØ º¾´Ï´Ù.

    ÀúÀÚ ¼Ò°³

    ¼Õ°æ´ö

    À¥ ½ºÅ©·¡ÇÎ ±â¹Ý ¼­ºñ½º ȸ»ç¿¡¼­ °³¹ßÀÚ·Î ½ÃÀÛÇÑ ÈÄ º¸Çè °ü·Ã SI ȸ»ç¸¦ °ÅÃÄ ÇöÀç´Â ³Ø½ºÆ®¸®¿¡¼­ ±Ù¹«Çϰí ÀÖ½À´Ï´Ù. 2018³â ¾ÆÅ°ÅØÃ³ ÄÁ¼³ÆÃÀ» ½ÃÀÛÀ¸·Î ¸ðµç ½Ã½ºÅÛÀ» ¸¶ÀÌÅ©·Î¼­ºñ½º ¾ÆÅ°ÅØÃ³·Î ±¸ÃàÇϸ鼭 ´Ù¾çÇÑ »óȲ¿¡¼­ ÇØ°áÃ¥À» ã°í ÀÖ½À´Ï´Ù. ÃÖ±Ù¿¡´Â ¸ÖƼ-Å×³ÍÆ® ¾ÆÅ°ÅØÃ³¿¡¼­ ¿ªÇÒ ¹× ±ÇÇÑ °ü¸®¿Í ¸¶ÀÌÅ©·Î ÇÁ·ÐÆ®¿£µåÀÇ È¿À²ÀûÀÎ ±¸Çö/¹èÆ÷ ¹æ¹ýÀ» °í¹ÎÇϰí ÀÖ½À´Ï´Ù.

    ¸ñÂ÷

    1Àå. µµ¸ÞÀÎ ÁÖµµ ¼³°è
    1.1 µµ¸ÞÀÎ ·ÎÁ÷ ÆÐÅÏ
    1.1.1 Æ®·£Àè¼Ç ½ºÅ©¸³Æ® ÆÐÅÏ
    1.1.2 Å×ÀÌºí ¸ðµâ ÆÐÅÏ
    1.1.3 ¼­ºñ½º ·¹ÀÌ¾î ÆÐÅÏ
    1.1.4 µµ¸ÞÀÎ ¸ðµ¨ ÆÐÅÏ
    1.2 Çí»ç°í³¯ ¾ÆÅ°ÅØÃ³
    1.3 µµ¸ÞÀÎ ÁÖµµ ¼³°è
    1.3.1 À¯ºñÄõÅͽº ¾ð¾î
    1.3.2 ºôµù ºí·Ï
    1.3.3 ¿£Æ¼Æ¼
    1.3.4 °ª °´Ã¼
    1.3.5 ¼­ºñ½º
    1.3.6 ¸ðµâ
    1.4 ¶óÀÌÇÁ»çÀÌŬ
    1.4.1 ¾Ö±×¸®°ÔÀÌÆ®
    1.4.2 ¾Ö±×¸®°ÔÀÌÆ®¿Í ´ÜÀ§ Å×½ºÆ®
    1.4.3 ¾Ö±×¸®°ÔÀÌÆ® ¼³°è ±ÔÄ¢
    1.4.4 ÆÑÅ丮
    1.4.5 ¸®Æ÷ÁöÅ丮
    1.5 Ãß»óÈ­µÈ ÇÙ½É
    1.6 ¿ä¾à

    2Àå. °´Ã¼ÁöÇâ ¼³°è ¿øÄ¢
    2.1 Ã¥ÀÓ ÁÖµµ ¼³°è
    2.2 ´ÜÀÏ Ã¥ÀÓ ¿øÄ¢
    2.3 °³¹æ/Æó¼â ¿øÄ¢
    2.4 ¸®½ºÄÚÇÁ ġȯ ¿øÄ¢
    2.5 ÀÎÅÍÆäÀ̽º ºÐ¸® ¿øÄ¢
    2.6 ÀÇÁ¸¼º ¿ªÀü ¿øÄ¢
    2.7 ¸ðµâ
    2.8 ¿ä¾à

    3Àå. À̺¥Æ® ¼Ò½Ì I
    3.1 ºÎ¼­ À̵¿
    3.2 °¨»ç¿Í ÀÌ·Â
    3.2.1 ´ÜÀÏ Å×À̺í°ú ½ÃÄö½º
    3.2.2 »óÅ Å×À̺í°ú ÀÌ·Â Å×ÀÌºí ºÐ¸®
    3.2.3 º¯°æ °ª
    3.3 µµ¸ÞÀÎ À̺¥Æ®
    3.4 À̺¥Æ® ¼Ò½Ì
    3.5 À̺¥Æ® ¼Ò½Ì ±¸Çö
    3.5.1 µ¥ÀÌÅÍ ¸ðµ¨
    3.5.2 ¾Ö±×¸®°ÔÀÌÆ®¿Í À̺¥Æ® ÀúÀå
    3.5.3 Ä¿¸Çµå¿Í À̺¥Æ®
    3.5.4 Ä¿¸Çµå¿Í À¯È¿¼º °Ë»ç
    3.5.5 Àç¼öÈ­(À̺¥Æ® ¸®Ç÷¹ÀÌ)
    3.6 ¸¶ÀÌÅ©·Î¼­ºñ½º ¸ðµâ
    3.7 À̺¥Æ® ¼Ò½Ì°ú ´ÜÀ§ Å×½ºÆ®
    3.8 ¿ä¾à

    4Àå. À̺¥Æ® ¼Ò½Ì II
    4.1 µµ¸ÞÀÎ °´Ã¼ ¶óÀÌÇÁ»çÀÌŬ
    4.1.1 ¾Ö±×¸®°ÔÀÌÆ® »ý¼º
    4.1.2 ¾Ö±×¸®°ÔÀÌÆ® »èÁ¦
    4.2 µ¿½Ã¼º°ú À̺¥Æ® Ãæµ¹
    4.3 Àç¼öÈ­ ¼º´É°ú ½º³À¼¦
    4.3.1 ½º³À¼¦ »ý¼º
    4.3.2 Àç¼öÈ­ Á¦¿Ü À̺¥Æ®
    4.4 ½º³À¼¦ »ý¼º Àü·«
    4.4.1 ÁÖ±âÀûÀÎ ½Ã°£
    4.4.2 ¸Å N¹øÂ° À̺¥Æ®
    4.4.3 µµ¸ÞÀÎ À̺¥Æ®
    4.5 À̺¥Æ® ¼Ò½Ì°ú »ó¼ö
    4.6 µµ¸ÞÀÎ À̺¥Æ®¿Í ¹öÀü
    4.6.1 ¾÷ij½ºÆÃ
    4.6.2 ¾÷ij½ºÅÍ
    4.6.3 Áß°£ À̺¥Æ®
    4.6.4 À̺¥Æ® ¸¶À̱׷¹À̼Ç
    4.6.5 À̺¥Æ® ¹öÀü°ú ½º³À¼¦
    4.7 ¸¶ÀÌÅ©·Î¼­ºñ½º ¸ðµâ
    4.8 ´Ù°Ç ó¸®(¹Ýº¹¹®)¿Í ¼º´É
    4.8.1 º´·Ä ó¸®
    4.8.2 ij½Ì
    4.9 µ¥ÀÌÅÍ ¸¶À̱׷¹À̼Ç
    4.10 ¹é¾÷°ú ¾ÆÄ«À̺ù
    4.11 À̺¥½º ¼Ò½Ì°ú Ãß»óÈ­µÈ ÇÙ½É
    4.11.1 EventSourcedAggregate
    4.11.2 Command
    4.11.3 AggregateStore
    4.12 ¿ä¾à

    5Àå. ¸¶ÀÌÅ©·Î¼­ºñ½º Çù¾÷
    5.1 Àιٿîµå ¾î´ðÅÍ¿Í RESTful API
    5.1.1 HTTP ¸Þ¼Òµå
    5.1.2 ¾Ö±×¸®°ÔÀÌÆ®¿Í URL
    5.1.3 Ä¿¸Çµå¿Í RESTful API
    5.1.4 Á¶È¸¿Í RESTful API
    5.1.5 Àü¿ª ¿¹¿Ü ó¸®
    5.1.6 ¸¶ÀÌÅ©·Î¼­ºñ½º ¸ðµâ
    5.2 ¾Æ¿ô¹Ù¿îµå ¾î´ðÅÍ¿Í RESTful API
    5.3 À̺¥Æ® ºê·ÎÄ¿
    5.3.1 µµÄ¿¿Í Ä«ÇÁÄ«
    5.4 ¾Æ¿ô¹Ù¿îµå ¾î´ðÅÍ¿Í À̺¥Æ® ¹ßÇà
    5.4.1 À̺¥Æ® ¹ßÇà
    5.4.2 À̺¥Æ® ºê·ÎÄ¿¿Í ¸Þ½ÃÁö
    5.4.3 º¯È¯(2Â÷) ¸Þ½ÃÁö(Ä¿¸Çµå/À̺¥Æ®)
    5.4.4 ¼­ºñ½º ³»ºÎ À̺¥Æ®¿Í ¿ÜºÎ ¹ßÇà À̺¥Æ®
    5.5 Àιٿîµå ¾î´ðÅÍ¿Í À̺¥Æ® ¼Òºñ
    5.6 À̺¥Æ® ¾î´ðÅÍ¿Í ¸¶ÀÌÅ©·Î¼­ºñ½º ¸ðµâ
    5.7 À̺¥Æ® ¾î´ðÅÍ¿Í Ãß»óÈ­µÈ ÇÙ½É
    5.7.1 ¾î³ëÅ×À̼Ç
    5.8 ·¹°Å½Ã ÅëÇÕ
    5.8.1 Çǵå
    5.8.2 À¥ÈÅ
    5.8.3 ±×·¡ÇÁ Å¥¿¤
    5.9 ¿ä¾à

    6Àå. °á°úÀû Àϰü¼º
    6.1 ±â¾÷ ÅëÇÕ ÆÐÅÏ
    6.1.1 ¶ó¿ìÆÃ ½½¸³ ÆÐÅÏ
    6.1.2 ÇÁ·Î¼¼½º ¸Å´ÏÀú ÆÐÅÏ
    6.2 ºÐ»ê Æ®·£Àè¼Ç
    6.3 »ç°¡
    6.3.1 »ó°ü °ü°è ¾ÆÀ̵ð
    6.3.2 ¿ÀÄÉÀ̽º·¹À̼Ç
    6.3.3 ÄÚ·¹¿À±×·¡ÇÇ
    6.3.4 ŸÀӾƿô
    6.3.5 ÀǹÌÀû Àá±Ý
    6.4 °èÁ ÀÌü
    6.4.1 ¿ÀÄɽºÆ®·¹À̼Ç
    6.4.2 ÄÚ·¹¿À±×·¡ÇÇ
    6.5 À̺¥Æ® ¼Ò½Ì°ú °á°úÀû Àϰü¼º
    6.5.1 À̺¥Æ® ¼Ò½Ì°ú »ç°¡
    6.5.2 ÀǹÌÀû Àá±Ý
    6.5.3 °á°úÀû Àϰü¼º
    6.5.4 ŸÀӾƿô
    6.5.5 »ó°ü °ü°è ¾ÆÀ̵ð¿Í ÃßÀû¼º
    6.6 »ç·Ê ¿¬±¸
    6.6.1 īƮ¿Í °ü½É »óǰ
    6.6.2 ÁÖ¹®°ú Àç°í
    6.6.3 °áÁ¦¿Í °áÁ¦ ½ÇÆÐ
    6.7 ÀüÅëÀûÀÎ À̷°ü¸®¿Í °á°úÀû Àϰü¼º
    6.8 µµ¸ÞÀÎ À̺¥Æ®¿Í ¶óÀ̺귯¸®
    6.9 Àϰü¼º°ú ¸¶ÀÌÅ©·Î¼­ºñ½º ºÐ¸® ¹× ÅëÇÕ
    6.10 ¿ä¾à

    7Àå. ¸í·É°ú Á¶È¸ Ã¥ÀÓ ºÐ¸®(CQRS)
    7.1 ¸í·É°ú Á¶È¸ Ã¥ÀÓ ºÐ¸®
    7.2 ±¸Ã¼È­µÈ ºä¿Í À̺¥Æ® Çڵ鷯
    7.2.1 »óǰ ÆÇ¸Å·® ºä
    7.2.2 »ó´ã»ç ÀÏÀÏ ÃÑ ÅëÈ­½Ã°£ ºä
    7.3 ºä Á¶È¸
    7.4 CQRS¿Í RESTful API
    7.5 ºä º¹¿ø
    7.6 ¸¶ÀÌÅ©·Î¼­ºñ½º ¸ðµâ
    7.7 CQRS Ȱ¿ë »ç·Ê
    7.7.1 ¼±ÅÃÀû µ¿±âÈ­ ÄÚµå °¨»ç
    7.7.3 °ª ´©Àû ½Ç½Ã°£ ¸ÅÃâ ÇöȲ
    7.7.4 º¹ÀâÇÑ °è»ê ¼³°è»ç ¼ö¼ö·á
    7.7.5 µ¥ÀÌÅÍ µ¿±âÈ­ īƮ¿Í »óǰ ÆÇ¸Å°¡°Ý º¯°æ
    7.8 À̺¥Æ® ¼Ò½Ì°ú ºä Àϰü¼º
    7.9 ¿ä¾à

    8Àå. »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º
    8.1 CRUD »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º
    8.2 ŽºÅ© ±â¹Ý »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º
    8.3 »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¿Í Ä¿¸Çµå
    8.3.1 º¹ÇÕ Ä¿¸Çµå
    8.3.2 ¸ñ·Ï°ú »ó¼¼
    8.4 ÆäÀÌÁö¿Í ÄÄÆ÷³ÍÆ® ±¸¼º
    8.5 »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¿Í ºñµ¿±â ¼­ºñ½º
    8.5.1 È­¸é ºñȰ¼ºÈ­ ÈÄ »õ·Î°íħ
    8.5.2 È®ÀÎ(¿Ï·á) È­¸é
    8.5.3 ¿¹»ó °á°ú Ç¥½Ã
    8.5.4 À̺¥Æ®¿Í Ǫ½Ã
    8.5.5 ŸÀÌ¸Ó¿Í Æú¸µ
    8.6 ½ºº§Æ®¿Í ºñÆ®
    8.6.1 ½ºº§Æ® ÇÁ·ÎÁ§Æ® »ý¼º
    8.6.2 ¼­¹ö ¼³Á¤
    8.6.3 svelte-navigator ÀÇÁ¸¼º
    8.7 °èÁ ÀÌü¿Í °èÁ ÆäÀÌÁö
    8.8 ºñµ¿±â ±¸Çö
    8.8.1 Æú¸µ°ú setInterval ÇÔ¼ö
    8.8.2 Ǫ½Ã¿Í À¥¼ÒÄÏ
    8.9 ¸¶ÀÌÅ©·Î ÇÁ·ÐÆ®¿£µå
    8.9.1 ´ÜÀÏ ÆäÀÌÁö ¾ÖÇø®ÄÉÀ̼ǰú ÄÄÆ÷³ÍÆ®
    8.9.2 ÄÄÆ÷³ÍÆ®¿Í À̺¥Æ® ÇÁ·Î±×·¡¹Ö
    8.9.3 ÄÄÆ÷³ÍÆ® vs
    8.9.4 Assets output °æ·Î
    8.10 ¸¶ÀÌÅ©·Î¼­ºñ½º¿Í Çü»ó °ü¸®
    8.11 ¿ä¾à

    9Àå. Ŭ¶ó¿ìµå ȯ°æ
    9.1 µµÄ¿
    9.1.1 µµÄ¿ Å×½ºÅ©Å¾ ´Ù¿î·Îµå ¹× ¼³Ä¡
    9.1.2 µµÄ¿ ¸®¼Ò½º ¼³Á¤
    9.1.3 Dockerfile
    9.1.4 À̹ÌÁö »ý¼º
    9.1.5 µµÄ¿ Çãºê¿¡ À̹ÌÁö Ǫ½Ã
    9.2 Äí¹ö³×Ƽ½º
    9.2.1 Äí¹ö³×Ƽ½º ¼³Ä¡
    9.3 Äí¹ö³×Ƽ½º ±¸¼º ¿ä¼Ò
    9.3.1 ³×ÀÓ½ºÆäÀ̽º
    9.3.2 ÆÄµå
    9.3.3 ÄÁÇDZ׸Ê
    9.3.4 ½ÃÅ©¸´
    9.3.5 ¼­ºñ½º
    9.3.6 ¿£µåÆ÷ÀÎÆ®
    9.3.7 µðÇ÷ÎÀÌ¸ÕÆ®¿Í ·¹Çø®Ä«¼Â
    9.3.8 µðÇ÷ÎÀÌ¸ÕÆ®¿Í ½ÃÅ©¸´
    9.4 À̽ºÆ¼¿À
    9.4.1 À̽ºÆ¼¿À ¼³Ä¡
    9.4.2 ³×ÀÓ½ºÆäÀ̽º »ý¼º
    9.4.3 »çÀ̵åÄ« ¼³Á¤
    9.4.4 °ÔÀÌÆ®¿þÀÌ
    9.4.5 ¹öÃß¾ó ¼­ºñ½º
    9.5 ÇÁ·Î¸ÞÅ׿콺¿Í ±×¶óÆÄ³ª
    9.5.1 ÇÁ·Î¸ÞÅ׿콺¿Í ±×¶óÆÄ³ª ¼³Ä¡
    9.5.2 À̽ºÆ¼¿À °ÔÀÌÆ®¿þÀÌ
    9.5.3 ¸¶ÀÌÅ©·Î¹ÌÅÍ
    9.6 Ű¾Ë¸®
    9.6.1 Ű¾Ë¸® ¼³Ä¡
    9.6.2 Ű¾Ë¸®¿Í ¼­ºñ½º ÀÇÁ¸¼º
    9.7 ¿ä¾à

    ¹è¼Û ½Ã À¯ÀÇ»çÇ×

    - ¹Ýµð¾Ø·ç´Ï½º¿¡¼­ ±¸¸ÅÇϽеµ¼­´Â ¹°·ù ´ëÇà À§Å¹¾÷ü ¿õÁø ºÏ¼¾À» ÅëÇØ ¹è¼ÛµË´Ï´Ù.
     (¹è¼Û Æ÷Àå¿¡ "¿õÁø ºÏ¼¾"À¸·Î Ç¥±âµÉ ¼ö ÀÖ½À´Ï´Ù.)

    - ±¸¸ÅÇÑ »óǰÀÇ Ç°Áú°ú ¹è¼Û °ü·Ã ¹®ÀÇ´Â ¹Ýµð¾Ø·ç´Ï½º·Î ¹®ÀÇ ¹Ù¶ø´Ï´Ù.

    - õÀçÁöº¯ ¹× Åùè»çÀÇ »çÁ¤¿¡ µû¶ó ¹è¼ÛÀÌ Áö¿¬µÉ ¼ö ÀÖ½À´Ï´Ù.

    - °áÁ¦(ÀÔ±Ý) ¿Ï·á ÈÄ ÃâÆÇ»ç ¹× À¯Åë»çÀÇ »çÁ¤À¸·Î ǰÀý ¶Ç´Â ÀýÆÇ µÇ¾î »óǰ ±¸ÀÔÀÌ ¾î·Á¿ï ¼ö ÀÖ½À´Ï´Ù. (º°µµ ¾È³» ¿¹Á¤)

    - µµ¼­»ê°£Áö¿ªÀÇ °æ¿ì Ãß°¡ ¹è¼Ûºñ°¡ ¹ß»ýµÉ ¼ö ÀÖ½À´Ï´Ù.

    ¹Ýǰ/±³È¯

    »óǰ ¼³¸í¿¡ ¹Ýǰ/ ±³È¯ °ü·ÃÇÑ ¾È³»°¡ ÀÖ´Â °æ¿ì ±× ³»¿ëÀ» ¿ì¼±À¸·Î ÇÕ´Ï´Ù. (¾÷ü »çÁ¤¿¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖ½À´Ï´Ù)

    ¹Ýǰ/±³È¯

    ¹Ýǰ/±³È¯
    ¹Ýǰ/±³È¯ ¹æ¹ý Ȩ > °í°´¼¾ÅÍ > ÀÚÁÖã´ÂÁú¹® ¡°¹Ýǰ/±³È¯/ȯºÒ¡± ¾È³» Âü°í ¶Ç´Â 1:1»ó´ã°Ô½ÃÆÇ
    ¹Ýǰ/±³È¯ °¡´É ±â°£ ¹Ýǰ,±³È¯Àº ¹è¼Û¿Ï·á ÈÄ 7ÀÏ À̳», »óǰÀÇ °áÇÔ ¹× °è¾à³»¿ë°ú ´Ù¸¦ °æ¿ì ¹®Á¦¹ß°ß ÈÄ 30ÀÏ À̳»¿¡ ½Åû°¡´É
    ¹Ýǰ/±³È¯ ºñ¿ë º¯½É ȤÀº ±¸¸ÅÂø¿ÀÀÇ °æ¿ì¿¡¸¸ ¹Ý¼Û·á °í°´ ºÎ´ã(º°µµ ÁöÁ¤ Åùè»ç ¾øÀ½)
    ¹Ýǰ/±³È¯ ºÒ°¡ »çÀ¯
    • ¼ÒºñÀÚÀÇ Ã¥ÀÓ »çÀ¯·Î »óǰ µîÀÌ ¼Õ½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
    • ¼ÒºñÀÚÀÇ »ç¿ë, Æ÷Àå °³ºÀ¿¡ ÀÇÇØ »óǰ µîÀÇ °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì
    • º¹Á¦°¡ °¡´ÉÇÑ »óǰ µîÀÇ Æ÷ÀåÀ» ÈѼÕÇÑ °æ¿ì : ¿¹)¸¸È­Ã¥, ÀâÁö, È­º¸Áý µî
    • ½Ã°£ÀÇ °æ°ú¿¡ ÀÇÇØ ÀçÆÇ¸Å°¡ °ï¶õÇÑ Á¤µµ·Î °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì
    • ÀüÀÚ»ó°Å·¡µî¿¡¼­ÀÇ ¼ÒºñÀÚº¸È£¿¡ °üÇÑ ¹ý·üÀÌ Á¤ÇÏ´Â ¼ÒºñÀÚ Ã»¾àöȸ Á¦ÇÑ ³»¿ë¿¡ ÇØ´çµÇ´Â °æ¿ì
    • ÇØ¿ÜÁÖ¹® »óǰ(ÇØ¿Ü ¿ø¼­)ÀÇ °æ¿ì(ÆÄº»/ÈѼÕ/¿À¹ß¼Û »óǰÀ» Á¦¿Ü)
    ¼ÒºñÀÚ ÇÇÇØº¸»ó
    ȯºÒÁö¿¬¿¡ µû¸¥ ¹è»ó
    • »óǰÀÇ ºÒ·®¿¡ ÀÇÇÑ ¹Ýǰ, ±³È¯, A/S, ȯºÒ, ǰÁúº¸Áõ ¹× ÇÇÇØº¸»ó µî¿¡ °üÇÑ »çÇ×Àº
      ¼ÒºñÀÚ ºÐÀïÇØ°á ±âÁØ(°øÁ¤°Å·¡À§¿øÈ¸°í½Ã)¿¡ ÁØÇÏ¿© 󸮵Ê
    • ´ë±Ý ȯºÒ ¹× ȯºÒÁö¿¬¿¡ µû¸¥ ¹è»ó±Ý Áö±Þ Á¶°Ç, ÀýÂ÷ µîÀº ÀüÀÚ»ó°Å·¡ µî¿¡¼­ÀÇ
      ¼ÒºñÀÚ º¸È£¿¡ °üÇÑ ¹ý·ü¿¡ µû¶ó ó¸®ÇÔ
    ¹Ýǰ/±³È¯ ÁÖ¼Ò °æ±âµµ ÆÄÁֽà ¹®¹ß·Î 77, ¿õÁøºÏ¼¾(¹Ýµð¾Ø·ç´Ï½º)
    • ȸ»ç¸í : (ÁÖ)¼­¿ï¹®°í
    • ´ëÇ¥ÀÌ»ç : ±èÈ«±¸
    • °³ÀÎÁ¤º¸ º¸È£Ã¥ÀÓÀÚ : ±èÈ«±¸
    • E-mail : bandi_cs@bnl.co.kr
    • ¼ÒÀçÁö : (06168) ¼­¿ï °­³²±¸ »ï¼º·Î 96±æ 6
    • »ç¾÷ÀÚ µî·Ï¹øÈ£ : 120-81-02543
    • Åë½ÅÆÇ¸Å¾÷ ½Å°í¹øÈ£ : Á¦2023-¼­¿ï°­³²-03728È£
    • ¹°·ù¼¾ÅÍ : (10881) °æ±âµµ ÆÄÁֽà ¹®¹ß·Î 77 ¹Ýµð¾Ø·ç´Ï½º
    copyright (c) 2016 BANDI&LUNI'S All Rights Reserved