±ÍÇÏ´Â ¼Õ´Ô À̽ʴϴÙ
·Î±×ÀÎ
ȸ¿ø°¡ÀÔ
  
  µ¨¸¶´ç °ø½Ä ÀºÇà°èÁÂ
  ÇϳªÀºÇà 227-910235-83607
  ¿¹±ÝÁÖ ÀÌ»ó±¹(¿î¿µÁø)
ÇÁ·ÎÁ§Æ® °Ô½ÃÆÇ
ÅõÇ¥°Ô½ÃÆÇ
µ¨¸¶´ç¼Ò°³
±âÃʺÎÅÍ È°¿ë±îÁö! µ¨ÆÄÀÌ ±³À° - µ¥ºê±â¾î
°­ÁÂ, ÆÁ, Á¤º¸ °­ÁÂ, ÆÁ, Á¤º¸ ÀÔ´Ï´Ù.
±Û³»¿ë - °­ÁÂ, ÆÁ, Á¤º¸
 [angel] ³×Æ®¿÷ ÇÁ·Î±×·¡¹Ö - Nonblocking
Ÿ¶ôõ»ç
(±è¼ºÈÆ)
2015-01-18 ¿ÀÀü 10:29:46
Ä«Å×°í¸®: ÆÁ
3580ȸ Á¶È¸



µî·ÏµÈ ÆÄÀÏÀÌ ¾ø½À´Ï´Ù.
¾È³çÇϼ¼¿ä. Å¸¶ôõ»ç ÀÔ´Ï´Ù..

ÀϹÝÀûÀ¸·Î "³×Æ®¿÷ ÇÁ·Î±×·¥" Àº "TCP/IP ¼ÒÄÏ Åë½Å" ÇÁ·Î±×·¥À» ¸» ÇÕ´Ï´Ù.
Nonblocking ¹æ½ÄÀº °³¹ß Çϱ⠾î·ÆÁö¸¸, ¼º´ÉÀÌ Á»´õ ³ô½À´Ï´Ù.

¿¹Àü µ¨ÆÄÀÌÀÇ TServerSocket ÀÌ nonblocking ¹æ½Ä ÀÔ´Ï´Ù.
¶ÇÇÑ, IOCP µµ nonblocking ¹æ½Ä ÀÔ´Ï´Ù.


1. Àüü ±¸Á¶

³×Æ®¿÷Àº ³×Æ®¿÷ ¿¬°á Æ÷Æ® ºÒ·®, ¿¬°á Çãºê ºÒ·®, ¿¬°á ¶ó¿ìÅÍ ºÒ·®, ³«·Ú, Åë½Å¼± Àý´Ü, ¼­¹ö PC Àü¿ø ´ÜÀý µîÀ¸·Î ¾ðÁ¦µç ¾Æ¹«·± ÅëÁö ¾øÀÌ ¿¬°áÀÌ ²÷¾îÁú ¼ö ÀÖ½À´Ï´Ù.

±×·¡¼­, ÀÏÁ¤ ½Ã°£ ¸¶´Ù Å¬¶óÀ̾ðÆ®¿Í ¼­¹ö »çÀÌ¿¡ ¿¬°á È®Àο렸޼¼Áö¸¦ º¸³»¼­ ¿¬°áÀ» È®ÀΠÇؾߠÇÕ´Ï´Ù.
½Ã°£ °£°ÝÀº, ½Ç½Ã°£ À̸é 5ÃÊ ~ 15ÃÊ Á¤µµ, ½Ç½Ã°£ÀÌ ¾Æ´Ï¸é 15 ÃÊ ~ 30 ÃÊ Á¤µµ..

ÀÏÁ¤½Ã°£ ÀÀ´äÀÌ ¾øÀ¸¸é, ¿¬°áÀÌ ²÷¾îÁø °É·Î °£ÁÖ Çؾߠ°ÚÁö¿ä.
±¹³» & À¯¼± ÀÎÅͳݠ: ¾à 10 ÃÊ ~ 20 ÃÊ.
±¹³» & ¹«¼± ÀÎÅͳÝ(WIFE) : ¾à 20 ÃÊ ~ 1 ºÐ.
ÇØ¿Ü : ¾à 20 ÃÊ ~ 3ºÐ. (ÇØ´ç ±¹°¡ ¸¶´Ù ´Ù¸§. Áß±¹Àº 10ºÐ ~ 30ºÐ ÀÌ»ó)


2. Command

Ŭ¶óÀ̾ðÆ®¿Í ¼­¹ö°£¿¡ ¿À°¡´Â ¸Þ¼¼Áö¸¦ Çì´õ¸¦ ±¸¼º ÇսôÙ.
Á¦ °æ¿ì´Â "Command Code" + "DataType" + "Reserved" ½ÄÀ¸·Î ±¸¼º ÇÕ´Ï´Ù.

Command Code ´Â integer °ªÀ¸·Î 6 ÀÚ¸® ÀÌ»ó ÀΠ°ÍÀÌ ÁÁ½À´Ï´Ù.
¸í·É¿¡ µû¶ó Command Code °ªÀº ´Þ¶óÁ®¾ß ÇÕ´Ï´Ù.

¼­¹ö µ¥ÀÌÅÍ ¹Þ´Â ·çƾ¿¡¼­, Command Code ¿¡ µû¶ó ¸í·É Ã³¸® ÇÔ¼ö ÆĶó¹ÌÅͷΠµ¥ÀÌÅ͸¦ ³Ñ°Ü¼­ Ã³¸® ÇÕ´Ï´Ù.


3. µ¥ÀÌŸ Åë½Å

³×Æ®¿÷ ÆÐŶ ¼ö½Å À̺¥Æ®¿¡¼± µ¥ÀÌÅ͸¦ ¹Þ¾Æ¼­ µ¥ÀÌŸ Å¥¿¡ Áý¾î ³Ö±â¸¸ ÇÕ´Ï´Ù.

Thread ³ª Timer ³ª Loop µîÀ¸·Î µ¥ÀÌÅ͠ť¿¡ »õ·Î¿Â µ¥ÀÌŸ°¡ Àִ°¡ Ã¼Å© Çؼ­, ÀÖÀ¸¸é µ¥ÀÌÅ͸¦ Ã³¸®ÇØ ÁÝ´Ï´Ù.

À¯ÀÇ ÇÒ Á¡Àº, 
º¸³½ ÂÊ¿¡¼± 100 byte ¾¿ µÎ¹ø º¸³Â´Âµ¥, ¹ÞÀº ÂÊ¿¡¼± 50 byte ¹ÞÀº ÈÄ 150 byte ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. 
º¸³½ ÆÐŶÀÇ ÀϺθ¸ ¹Þ°Å³ª, º¸³½ ÆÐŶº¸´Ù ¸¹Àº ÆÐŶÀ» ¹Þ±âµµ ÇÕ´Ï´Ù.

µ¥ÀÌÅ͸¦ µ¥ÀÌŸ Å¥¿¡ ³ÖÀ» ¶§ ÂÉ°³ Áö°Å³ª ÇÕÃÄÁø ÆÐŶ Ã³¸® ·çƾÀÌ Æ÷ÇԵǾî¾ß ÇÕ´Ï´Ù.

ÀϹÝÀûÀ¸·Î "¾²·¹µåÇ®" À̳ª "µ¥ÀÌŸǮ" À̶ó°í ºÎ¸¨´Ï´Ù.


4. Object

¼­¹ö¿¡¼­ Å¬¶óÀ̾ðÆ®·Î ºÎÅÍ ¿¬°á µÇ¸é, ÇØ´ç Å¬¶óÀ̾ðÆ®¿¡ ´ëÇÑ Object ¸¦ »ý¼º ÇÏ¿© °ü¸® ÇÕ´Ï´Ù.
Object ¿¡´Â Å¬¶óÀ̾ðÆ® ¿¬°á ¿©ºÎ, ·Î±×ÀΠ¿©ºÎ, Server ¿¡¼­ Client ·Î º¸³¾ µ¥ÀÌÅÍ ¿©ºÎ, ¸¶Áö¸· µ¥ÀÌÅÍ ¹ÞÀº ½Ã°£, Å¬¶óÀ̾ðÆ® »óÅÂ, Å¬¶óÀ̾ðÆ® IP, Å¬¶óÀ̾ðÆ® name µîÀ» ±â·ÏÇØ µÓ´Ï´Ù.
Ŭ¶óÀ̾ðÆ® Object ·Î Å¬¶óÀ̾ðÆ® ¿¬°áÀ» °ü¸® ÇÕ´Ï´Ù.


5. ÃÖ´ë ¿¬°á¼ö.

µ¿½Ã Á¢¼ÓÇÒ ¼ö Àִ Ŭ¶óÀ̾ðÆ® ¼ö´Â ¼­¹ö °³¹ßÀÚÀÇ ½Ç·Â¿¡ µû¶ó Â÷ÀÌ°¡ Å®´Ï´Ù.

½Ç·ÂÀִ ¼­¹ö °³¹ßÀÚ¸é, Æ÷Æ® Çϳª´ç µ¿½Ã Á¢¼ÓÇÒ ¼ö Àִ Ŭ¶óÀ̾ðÆ®´Â 7õ ~ 9õ Á¤µµ·Î º¸¿©Áý´Ï´Ù.

·Îµåº§·±½Ì À¸·Î µ¿½Ã Á¢¼ÓÀÚ ¼ö¸¦ ´Ã¸± ¼ö ÀÖ½À´Ï´Ù.


6. ·Îµå ¹ë·±½Ì

°¢±â ´Ù¸¥ Æ÷Æ®·Î ¼­¹ö ÇÁ·Î±×·¥À» ¿©·¯°³ ¶ç¿ó´Ï´Ù. ÇÑ PC ¿¡ Æ÷Æ®¸¸ ´Ù¸£°Ô ¿©·¯°³ ¶ç¿öµµ µË´Ï´Ù.

Ŭ¶óÀ̾ðÆ®°¡ ·Î±×ÀΠÇϸé, ·Î±×ÀΠ¼­¹ö¿¡¼­ ·Î±×ÀΠÁ¤º¸¿Í ÇÔ²², Á¢¼ÓÇÒ ¼­¹öÀÇ IP ¿Í Portµµ ÁÝ´Ï´Ù.

Ŭ¶óÀ̾ðÆ®´Â ¹ÞÀº IP ¿Í Port ·Î ÇØ´ç ¼­¹ö¿¡ ºÙ½À´Ï´Ù.

¼­¹ö ÇÁ·Î±×·¥ Çϳª ´ç Ã³¸® ÇÒ ¼ö Àִ µ¿½ÃÁ¢¼ÓÀÚ ¼ö°¡ Ãµ¸í À̶ó°í °¡Á¤ Çϸé, ¼­¹ö ÇÁ·Î±×·¥À» 10°³ ¶ç¿ì¸é µ¿½ÃÁ¢¼ÓÀÚ ¼ö°¡ ¸¸¸í ÀÌ µË´Ï´Ù.

·Î±×ÀΠ¼­¹ö¸¦ "°ÔÀÌƮŰÆÛ" ¶ó°í ºÎ¸£°í, Àüü¸¦ "·Îµåº§·±½Ì" À̶ó°í ºÎ¸¨´Ï´Ù.