18.1.2¿¡¼ Àá±ñÀ̳ª¸¶ ¹Ìµé¿þ¾î ´ëÇÑ À̾߱⸦ Çß¾ú½À´Ï´Ù. À̹ø¿¡´Â ±× ¹Ìµé¿þ¾îÀÎ Stub/Skeleton¿¡ ´ëÇØ »ó¼¼È÷ ¼³¸íÇϰڽÀ´Ï´Ù. 18.2.1¿¡¼ ¼³¸íÇÑ Åë½Å ¸ÞÄ¿´ÏÁòÀÌ RMI°¡ ¿ÜºÎ¿¡ º¸¿©Áö´Â ¸ð½ÀÀ̶ó¸é, Stub°ú SkeletonÀº ÀÌ·± ¸ÞÄ¿´ÏÁòÀ» °¡´ÉÇϰԲû RMI°¡ ³»ºÎ¿¡¼ ¿©·¯°¡Áö º¹ÀâÇÑ °úÁ¤À» ó¸®Çϱâ À§ÇØ »ç¿ëÇÏ´Â ¹Ìµé¿þ¾îÀÔ´Ï´Ù. Stub°ú SkeletonÀº ¿ì¸®°¡ ¸¸µç ¿ø°Ý °´Ã¼¸¦ rmic¶ó´Â ÄÄÆÄÀÏ·¯¸¦ »ç¿ëÇØ¼ ¸¸µå´Âµ¥, ÀÌ·¸°Ô ¸¸µé¾îÁø Stub°ú SkeletonÀº °¢°¢ Ŭ¶óÀÌ¾ðÆ®¿Í ¼¹ö¿¡ À§Ä¡ÇÏ¿© ½ÇÁ¦·Î Ŭ¶óÀÌ¾ðÆ®¿Í ¼¹ö »çÀÌÀÇ Åë½Å °úÁ¤À» ó¸®ÇØÁÝ´Ï´Ù.(Stub, SkeletonÀ» ¸¸µå´Â ¹æ¹ýÀº 18.3¿¡¼ ¼³¸íÇÕ´Ï´Ù).
StubÀº Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥¿¡°Ô ¿ø°Ý °´Ã¼°¡ ¸¶Ä¡ ·ÎÄÿ¡ ÀÖ´Â °Íó·³ º¸À̵µ·Ï ÇØÁÝ´Ï´Ù. ½ÇÁ¦·Î, Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥ÀÌ ¿ø°Ý °´Ã¼ÀÇ ¸Þ¼µå¸¦ È£ÃâÇϸé, ³»ºÎÀûÀ¸·Î´Â StubÀÇ ¸Þ¼µå°¡ È£ÃâÀÌ µË´Ï´Ù. È£ÃâµÈ StubÀÇ ¸Þ¼µå´Â Ŭ¶óÀ̾ðÆ®ÀÇ ¸Þ¼µå È£ÃâÀ» ³×Æ®¿öÅ©¸¦ ÅëÇØ ¿ø°Ý °´Ã¼¿¡°Ô Àü¼ÛÇØ ÁÝ´Ï´Ù. StubÀº ¿ø°Ý °´Ã¼¿¡°Ô ¸Þ¼µå È£ÃâÀ» Àü¼ÛÇØÁÖ±â À§ÇØ ¼ ´ÙÀ½°ú °°Àº ´Ü°è¸¦ °ÅĨ´Ï´Ù.
1. ¿ø°Ý °´Ã¼¸¦ °¡Áö°í ÀÖ´Â ¼¹öÀÇ JVM(ÀÚ¹Ù °¡»ó ¸Ó½Å)°ú ¿¬°á »óŸ¦ ¸¸µç´Ù.
2. ¿ø°ÝÁöÀÇ JVM¿¡°Ô Àü¼ÛµÉ ¸Þ¼µå È£ÃâÀÇ ¸Å°³º¯¼ö¸¦ ƯÁ¤ÇÑ Çü½Ä¿¡ ¸ÂÃç¼ Á¤·Ä ½Ã۰í(ÀÌ °úÁ¤À» MarshalingÀ̶ó°í ÇÕ´Ï´Ù) Àü¼ÛÇÑ´Ù.
3. ¿ø°Ý ¸Þ¼µåÀÇ ½ÇÇà °á°ú¸¦ ±â´Ù¸°´Ù.
4. ¿ø°Ý ¸Þ¼µåÀÇ ¹Ýȯ °ªÀÌ Àü¼ÛµÇ¾î ¿À¸é, ±× °ªÀ» ÀÐ¾î¼ ÇØ¼®ÇÑ´Ù.(ÀÌ °úÁ¤À» UnMarshalingÀ̶ó°í ÇÑ´Ù).
5. ¹Ýȯ °ªÀ» È£ÃâÀÚ¿¡°Ô ¹Ýȯ ÇÑ´Ù.
Àá½Ã Marshaling°ú UnMarshaling¿¡ ´ëÇØ ¼³¸íÀ» µå¸®°í ³Ñ¾î°¡°Ú½À´Ï´Ù. ¸ÕÀú MarshalingÀº µ¥ÀÌÅ͸¦ ¹ÙÀÌÆ®·Î Âɰ³¼ TCP/IP °°Àº Åë½Å ä³ÎÀ» ÅëÇØ Àü¼ÛµÉ ¼ö ÀÖ´Â ÇüÅ·Π¹Ù²ãÁÖ´Â °úÁ¤ÀÔ´Ï´Ù. ±×¿Í ¹Ý´ë·Î UnMarshalingÀº µ¥ÀÌÅ͸¦ Àü¼Û¹ÞÀº ÈÄ¿¡ ¿ø·¡ÀÇ ÇüÅ·Πº¹¿øÇÏ´Â °ÍÀ» ¸»ÇÕ´Ï´Ù. MarshalingÀ» ¼öÇàÇϱâ À§Çؼ´Â ObjectOutputStreamŬ·¡½º¸¦ »ç¿ëÇϸç, UnMarshalingÀ» ¼öÇàÇϱâ À§Çؼ´Â ObjectInputStreamŬ·¡½º¸¦ »ç¿ëÇÕ´Ï´Ù.
¢Ñ StubÀÌ ÇÏ´Â ÀÏ |
n Ŭ¶óÀ̾ðÆ®ÀÇ ¸Þ¼µå È£ÃâÀ» ¿ø°Ý °´Ã¼¿¡°Ô Àü¼Û½ÃÄÑÁØ´Ù. n ¸Þ¼µå È£ÃâÀÇ ¸Å°³ º¯¼ö¸¦ MarshalingÇØÁØ´Ù. n ¼¹ö·ÎºÎÅÍ Àü¼ÛµÈ ¸Þ¼µå È£ÃâÀÇ ¹Ýȯ °ªÀ» UnMarshalingÇØ¼ Ŭ¶óÀÌ¾ðÆ®¿¡°Ô ³Ñ°ÜÁØ´Ù. |
¼¹ö´Â Ŭ¶óÀÌ¾ðÆ®°¡ °¡Áö°í ÀÖ´Â Stub¿¡ »óÀÀÇÏ´Â SkeletonÀ» °¡Áö°í ÀÖ½À´Ï´Ù. SkeletonÀº StubÀÌ ÇÏ´Â °Í°ú ¹Ý´ëÀÇ ÀÏÀ» ÇÑ´Ù°í º¸½Ã¸é µË´Ï´Ù. SkeletonÀº StubÀ¸·ÎºÎÅÍ ¸Þ¼µå È£ÃâÀ» Àü¼Û ¹Þ¾Æ¼, ÇØ´çÇÏ´Â ¿ø°Ý °´Ã¼¿¡°Ô È£ÃâÀ» ³Ñ°ÜÁÖ°í ´Ù½Ã ±× °á°ú¸¦ Stub¿¡°Ô Àü¼ÛÇÏ´Â ¿ªÇÒÀ» ÇÕ´Ï´Ù. SkeletonÀº ´ÙÀ½°ú °°Àº ´Ü°è¸¦ °ÅÃÄ Å¬¶óÀ̾ðÆ®ÀÇ ¸Þ¼µå È£ÃâÀ» ó¸®ÇÕ´Ï´Ù.
1. Ŭ¶óÀ̾ðÆ®ÀÇ StubÀ¸·ÎºÎÅÍ ¸Þ¼µå È£ÃâÀÌ Àü¼ÛµÇ¾î ¿À±â¸¦ ±â´Ù¸°´Ù.
2. StubÀÌ ¸Þ¼µå È£ÃâÀ» Àü¼ÛÇØÁÖ¸é, ³×Æ®¿öÅ©·ÎºÎÅÍ ¸Å°³ º¯¼ö °ªÀ» Àаí ÇØ¼®ÇÑ´Ù.(UnMarshaling)
3. ÇØ´çÇÏ´Â ¿ø°Ý °´Ã¼ÀÇ ¸Þ¼µå¿¡°Ô ¸Å°³ º¯¼ö¸¦ ³Ñ°ÜÁÖ°í ½ÇÇà½ÃŲ´Ù.
4. ½ÇÇàµÈ ¸Þ¼µåÀÇ °á°ú¸¦ ƯÁ¤ÇÑ Çü½Ä¿¡ ¸ÂÃç¼ Á¤·Ä½Ã۰í Àü¼ÛÇÑ´Ù. ( Marshaling)
¾Æ·¡ ±×¸²Àº Á¤¼ö °ª µÎ °³¸¦ ¸Å°³º¯¼ö·Î ³Ñ°ÜÁÖ¸é ÇÕÀ» °è»êÇØÁÖ´Â add()¶ó´Â ¸Þ¼µå¸¦ °¡Áø ¿ø°Ý °´Ã¼¸¦ Ŭ¶óÀÌ¾ðÆ®°¡ È£ÃâÇϰí, ±× °á°ú°ªÀ» ¹Ýȯ ¹Þ´Â °úÁ¤À» Ç¥ÇöÇÑ °ÍÀÔ´Ï´Ù.
±×¸² 18‑6 ¿ø°Ý ¸Þ¼µå¸¦ È£Ãâ
±×¸² 18‑7 ¸Þ¼µå °á°ú¸¦ ¹Ýȯ
Stub, SkeletonÀº ¸Å°³º¯¼öÀÇ Á÷·ÄÈ, ¿ª Á÷·ÄÈ °°Àº ó¸®¿Í ³×Æ®¿öÅ© ·¹º§¿¡¼ÀÇ Åë½ÅÀ» °¨ÃçÁÜÀ¸·Î½á, ¿ì¸®°¡ ÀÛ¼ºÇÒ ¾îÇø®ÄÉÀ̼ǰú RMIÀÇ ³»ºÎ ±¸Á¶ »çÀÌÀÇ ÀÎÅÍÆäÀ̽º ¿ªÇÒÀ» ÇÕ´Ï´Ù. ÀÌ·± Ư¼ºÀ¸·Î ÀÎÇØ, ÇÁ·Î±×·¡¸Ó´Â ¸¶Ä¡ ·ÎÄÿ¡ Á¸ÀçÇÏ´Â °´Ã¼ÀÇ ¸Þ¼µå¸¦ È£ÃâÇÏ´Â °Íó·³ ÀϹÝÀûÀÎ ÀÚ¹Ù Ç÷§Æû»óÀÇ ÇÁ·Î±×·¡¹Ö ½ºÅ¸ÀÏÀ» ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô °´Ã¼ ÁöÇâÀûÀ¸·Î ¸¸µé¾îÁö´Â ºÐ»ê ½Ã½ºÅÛÀ» ºÐ»ê °´Ã¼ ¸ðµ¨(Distributed Object Model)À̶ó°í ÇÕ´Ï´Ù.
Áö±Ý±îÁö À̾߱â Çß´ø ¸ðµç ³»¿ëµéÀº RMI¸¦ ÀÌÇØÇϱâ À§ÇÑ ±âº» Áö½Ä¿¡ ÇØ´çÇÏÁö¸¸ »ç½Ç RMIÇÁ·Î±×·¥ ³»ºÎÀûÀ¸·Î µ¿ÀÛÇÏ´Â ¿ø¸®µéÀ̱⠶§¹®¿¡ ±×³É ÀÌÇØÇÏ½Ã°í ³Ñ¾î°¡½Ã¸é µË´Ï´Ù. RMIÇÁ·Î±×·¥À» ½ÇÁ¦ µ¹·Á º½À¸·Î½á ´À³¦À¸·Î Àü´Þ ¹Þ´Â Á¤µµÀÌ´Ï ¾î·Æ´Ù°í »ý°¢µÇ½Ã´õ¶óµµ ÀÌ ÀåÀ» ¸¶Ä¡°í ³ª¸é ¾î´ÀÁ¤µµ ÀÌÇØ ÇϽǼö ÀÖÀ» °ÍÀÔ´Ï´Ù. ¹°·Ð, ÇöÀç´Â ¸ô¶óµµ ¹«°üÇÕ´Ï´Ù. ÇÏÁö¸¸ ³ªÁß¿¡´Â ÀÌÇØÇÏ¼Å¾ß °ÚÁÒ.
¢Ñ SkeletonÀÌ ÇÏ´Â ÀÏ |
n Ŭ¶óÀ̾ðÆ®ÀÇ ¸Þ¼µå È£Ãâ¿¡¼ ¸Å°³ º¯¼ö¸¦ ÀÐ¾î¼ UnMarshaling ÇØÁØ´Ù. n ÇØ´çÇÏ´Â ¿ø°Ý °´Ã¼ÀÇ ¸Þ¼µå¸¦ È£ÃâÇÑ´Ù. n °á°ú °ªÀ» MarshalingÇØ¼ Ŭ¶óÀÌ¾ðÆ®¿¡°Ô Àü¼ÛÇÑ´Ù. |
jabookÀúÀÚ¸íÇÔ |
Á¦¸ñ:¼Ò¼³°°ÀºÀÚ¹Ù4ºÎ ÀúÀÚ:ÃÖ¿µ°ü |