: ¿ÜȯÀºÇà ȯÀ²¼ö½Å½Ã½ºÅÛ ±¸Ãà
 
°³¹ß ±â°£
      ¡Ü 2006. 11 ~ 2007. 4
°³¹ß ¸ñÀû
     È¯À² ¼ö½Å ¼­¹ö ÇÁ·Î±×·¥ °³¼±
     - ±âÁ¸ ½Ã½ºÅÛÀ» ½Å±Ô ½Ã½ºÅÛÀ¸·Î ´ëü
ÁÖ¿ä ±â´É (ÇÁ·Î¼¼½º)
¡Ü ·ÎÀÌÅͽýºÅÛ°ú ¾÷¹«¼­¹ö°£ µ¥ÀÌÅÍ Åë½ÅÀ» ´ã´çÇÏ´Â G/W ¼­¹ö : ·ÎÀÌÅͽýºÅÛ°ú ·ÎÀÌÅͻ翡¼­ Á¦°ø
   ÇÏ´Â API ¸ðµâ¿¡ ÀÇÇØ¼­ Á¤ÇØÁø Çü½ÄÀ¸·Î ·ÎÀÌÅͽýºÅÛ¾Õ ÀڷḦ ¿äûÇϰí ÀÀ´ä¹ÞÀ½.
¡Ü ·ÎÀÌÅÍ ½Ã½ºÅÛ : ¼¼°è½ÃÀåÀÇ ±ÝÀ¶½ÃÀåÁ¤º¸¸¦ Á¦°øÇÏ´Â ¼­ºñ½º·Î ´ëÇ¥ÀûÀ¸·Î ȯÀ², ¼±¹°¿É¼ÇµîÀÇ ½ÃÀå
   Á¤º¸¸¦ ½Ç½Ã°£À¸·Î Á¦°øÇÔ.
¡Ü RMDS : Reuters Market Data System À¸·Î ȯÀ²¼ö½Å System
¡Ü RDF : ·ÎÀÌÅÍ Àü¿ë¼±À» ÅëÇØ¼­ Á¤º¸¸¦ ¹Þ´Â ÃÖ»óÀ§ ¼­¹ö
¡Ü MDH : SOURCE ¼­¹ö·Î SINK Distributer ÀÙÀ¸·Î Data(ȯÀ²¼ö½Å¼­¹ö)¸¦ Á¦°ø
¡Ü SINK Distributer : MDH ¿¡¼­ Data ¸¦ ¹Þ´Â ¿ªÇÒÀ» ÇÑ´Ù.
¡Ü P2PS : µô¸µ ´Ü¸» ¶Ç´Â ssl lib À» ÀÌ¿ëÇÑ APP ¿¡¼­ Á¢¼ÓÇØ¼­ DATA ¸¦ ¼ö½ÅÇϱâ À§ÇÑ ¼­¹ö
¡Ü R_Recv (·ÎÀÌÅÍ ¼ö½Å) : Reuter ¿¡¼­ ssl ¶óÀ̺귯¸®¸¦ ÀÌ¿ëÇØ¼­ µ¥ÀÌÅ͸¦ ¼ö½Å ÈÄ File ·Î ÀúÀåÇÏ´Â
   ÇÁ·Î¼¼½º
¡Ü R_SendRecv (·ÎÀÌÅÍ RIC º° ȯÀ² ¼ö½Å) : req ¿¡¼­ Queue ¸¦ ÀÌ¿ë µ¥ÀÌÅ͸¦ ¹Þ°í Reuter ¿¡¼­ ssl
   ¶óÀ̺귯¸®¸¦ ÀÌ¿ëÇØ¼­ µ¥ÀÌÅÍ ¼ö½Å ÈÄ req ¿¡ µ¥ÀÌÅÍ Àü´Þ, ÀúÀåÇÏ´Â ÇÁ·Î¼¼½º
¡Ü IEmem (¿Ü±¹È¯ °øÀ¯¸Þ¸ð¸®) : ÀÏÀÚ.dat ÆÄÀÏÀ» Àо DB ¿¡¼­ °øÀ¯¸Þ¸ð¸®·Î ÀúÀåÇÏ´Â ÇÁ·Î¼¼½º
¡Ü IEreq (¿Ü±¹È¯ ¿äûÀü¹® ó¸®) : ¼ö½Å µÈ Àü¹®À¸·Î °øÀ¯¸Þ¸ð¸®¿¡¼­ ÇÊ¿äÇÑ µ¥ÀÌÅ͸¦ Àü¹®À¸·Î Á¶¸³ÇÏ¿©
   ¼Û½ÅÇÏ´Â ÇÁ·Î¼¼½º
¡Ü FCmem (¿ÜÈ­ÀÚ±Ý °øÀ¯¸Þ¸ð¸®) : ÀÏÀÚ.dat ÆÄÀÏÀ» Àо DB ¿¡¼­ °øÀ¯¸Þ¸ð¸®·Î ÀúÀåÇÏ´Â ÇÁ·Î¼¼½º
¡Ü FCreq (¿ÜÈ­ÀÚ±Ý ¿äûÀü¹® ó¸®) : ¼ö½Å µÈ Àü¹®À¸·Î °øÀ¯¸Þ¸ð¸®¿¡¼­ ÇÊ¿äÇÑ µ¥ÀÌÅ͸¦ Àü¹®À¸·Î Á¶¸³
   ÇÏ¿© ¼Û½ÅÇÏ´Â ÇÁ·Î¼¼½º
¡Ü Fcreal (½Ç½Ã°£ ȯÀ² Àü¹® to DB): ÀÏÀÚ.dat¸¦ Àо ½Ç½Ã°£ Àü¹® to DB ¸¦ ¸¸µå´Â ¿ÜÈ­ÀÚ±Ý ÇÁ·Î¼¼½º
¡Ü Fcappraise (½Ã°£´ë º° Àü¹® to DB) : Æò°¡¿ëȯÀ²À» °øÀ¯ ¸Þ¸ð¸®¿¡¼­ Àо ¿ÜÈ­Àڱݿ¡ Àü¹® to DB·Î
   ¼Û½ÅÇÏ´Â ÇÁ·Î¼¼½º
¡Ü Fxmon (¸ð´ÏÅ͸µ) :ÇÁ·Î¼¼½º »óŸ¦ ¸ð´ÏÅ͸µ ÇÏ´Â ÇÁ·Î¼¼½º (¿À·ùÈ®ÀÎ)
 
ÇÁ·Î¼¼½º±¸¼ºµµ
  
ÀåÁ¡ ¹× Ư¡
  ¢º Åë½Å ÇÁ·Î¼¼½º¿Í SSL Interface ÇÁ·Î¼¼½º ºÐ¸®
  ¡Ý EAI µî°úÀÇ ÇÁ·Î¼¼½º¿Í RIC ó¸® ÇÁ·Î¼¼½º¸¦ ºÐ¸®
 ±âÁ¸ ÇÁ·Î¼¼¼­´Â Publisher, Requester µÎ°³ÀÇ ÇÁ·Î¼¼¼­·Î ÀÌ·ç¾îÁ³À¸³ª ½Å±Ô ÇÁ·Î¼¼¼­´Â Publisher ¸¦ R_Recv, FCmem, IEmem À¸·Î, Requester ¸¦ R_SendRecv, FCreq, IEreq ·Î º¯°æÇÏ¿´°í, FCreal, FCappraise ¸¦ ½Å±Ô·Î Ãß°¡ ÇÏ¿´´Ù. ÀÌ Áß FCreq, IEreq °¡ TCP/IP Socket À» ÀÌ¿ëÇÏ¿© EAI ä³Î°ú Åë½ÅÇÑ´Ù. ¾÷¹«º°·Î °¢°¢ ÇÁ·Î¼¼½º¸¦ ºÐ¸®ÇÏ¿© °íÈ¿À²ÀÇ ÇÁ·Î¼¼½º ±¸Á¶¸¦ °¡Áöµµ·Ï ÇÏ¿´´Ù.

  ¡Ý Åë½Å ¹æ½Ä º¯°æ½Ã Åë½Å ÇÁ·Î¼¼½º¸¸ º¯°æ
 ÇÁ·Î¼¼½º °£ÀÇ ¿ªÇÒÀ» ¼¼ºÐÈ­ÇÏ¿© Åë½Å ¹æ½ÄÀÌ º¯°æµÇ´õ¶óµµ ƯÁ¤ ÇÁ·Î¼¼½º(FCreq, IEreq) ¸¸ º¯°æÀ» ÇÏ¸é °¡´É Çϵµ·Ï ÇÏ¿©¼­ Àüü ÇÁ·Î¼¼½ºÀÇ ¾÷¹«¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê´Â´Ù. ±âÁ¸ÀÇ ÇÁ·Î¼¼½º ±¸Á¶ º¸´Ù ÈξÀ ÀûÀº ºÎºÐ¸¸ º¯°æÇÏ¸é µÉ ¼ö ÀÖµµ·Ï ÇÏ¿´´Ù.

  ¡Ý ÇÁ·Î¼¼½º°£ ÀڷᱳȯÀº UNIX IPC Tool À» ÀÌ¿ë

 ÇÁ·Î¼¼½º °£¿¡´Â Shared Memory ¸¦ ÀÌ¿ëÇÏ¿© µ¥ÀÌÅ͸¦ °øÀ¯ÇÏ¿´°í, ¼¼¸¶Æ÷¾î ¶ôÀ» ÀÌ¿ëÇÏ¿© ¿À·ù¸¦ ȸÇÇÇÏ¿´´Ù. ÇÁ·Î¼¼½º°£ÀÇ Åë½Å 󸮴 °¢ ÇÁ·Î¼¼½º º°·Î µ¶¸³ÀûÀ¸·Î Message Queue¸¦ ¼Û¼ö½ÅÇÏ¿© Åë½ÅÀ» ÇÒ ¼ö ÀÖµµ·Ï ÇÏ¿´´Ù.
  ¢º º´·Ä RIC ó¸®
   ¡Ý 800 °³ RIC ±âÁØ ÇöÀç 󸮽ð£ 4 ½Ã°£ -> 120 ÃÊ À̳»·Î ´ÜÃà
 (°³¹ß ÀÌÀü ¿ä°ÇÀº 30 ºÐ À̳»¿´À¸³ª °³¹ß°úÁ¤¿¡¼­ °³¼±)
RIC Field ¸¦ ¸Þ½ÃÁö Å¥¸¦ ÀÌ¿ëÇÏ¿© R_Send_Recv ÇÁ·Î¼¼½º¿¡¼­ RIC Open ÇÏ¿© ·ÎÀÌÅÍ¿¡¼­ Á÷Á¢ Àаí Message Queue ¸¦ ÀÌ¿ëÇϵµ·Ï ÇÏ¿´´Ù. (´ë¿ë·® µ¥ÀÌÅÍ Àü¼Û °¡´É)
  ¢º ó¸® ÇÁ·Î±×·¥ °³¼±
  ¡Ý Reuter Library (SSL) ÀÇ »ç¿ë¹ý Áؼö
 Reuter ¿¡¼­ Á¦°øÇÏ´Â API ¸¦ »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» °³¹ßÇÏ¿© SSL »ç¿ë¹ýÀ» Áؼö ÇÏ¿´´Ù. °³¹ß ¿Ï·á ÈÄ¿¡ ¹ß»ýÇÏ´Â À¯Áö º¸¼ö¿¡ È¥¶õÀ» ¹æÁö ÇÏ¿´´Ù.

  ¡Ý ÀçÄÄÆÄÀÏ ¾ø´Â ·Î±× ·¹º§ º¯°æ

µ¿Àû ·Î±× ·¹º§ º¯°æÀ» µµÀÔÇÏ¿© ¸ð´ÏÅ͸µ ÇÁ·Î±×·¥(°ü¸®ÀÚ¿ë) ±âŸ Á¤º¸ Á¶È¸ ¹× °ü¸® ÅÇ¿¡¼­ ½Ç½Ã°£À¸·Î ·Î±× ·¹º§À» ¼³Á¤ ÇÒ ¼ö ÀÖµµ·Ï ÇÏ¿´´Ù. (·Î±× ·¹º§ ´Ü°è´Â 0 ~ 4 ±îÁö ´Ü°è·Î ÇÏ¿´À½)

  ¡Ý ÇÁ·Î¼¼½º º° 󸮻óȲÀ» IPC ¸¦ ÀÌ¿ëÇÏ¿© ÅëÇÕ ¸ð´ÏÅ͸µ

 ÁÖ¿ä ÇÁ·Î¼¼½º ¸ð´ÏÅ͸µÀ» ÇÏ´Â º°µµÀÇ ÇÁ·Î¼¼½º(FXmon) ¸¦ ÀÌ¿ëÇÏ¿´´Ù. FXmon ÇÁ·Î¼¼¼­´Â ¿ÜȯÀºÇà ȯÀ² ¼­¹ö ¸ð´ÏÅ͸µ ÇÁ·Î±×·¥ °ú ³»ºÎ Àü¹®À» ÀÌ¿ëÇÏ¿© Åë½ÅÇϵµ·Ï ÇÏ¿´´Ù.

  ¡Ý ºÒÇÊ¿äÇÑ Mutex ó¸® ¹èÁ¦ - 󸮽𣠴ÜÃà, ±³Âø Áõ»ó ÇØ¼Ò

 ¼¼¸¶Æ÷¾î¸¦ ÀÌ¿ëÇÑ ÇÁ·Î¼¼½º 󸮸¦ ÅëÇÏ¿© Shared Memory »ç¿ëÁß¿¡ ¹ß»ý ÇÒ ¼ö ÀÖ´Â ¿À·ù¸¦ ȸÇÇ ÇÏ¿´°í, fork() ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ ¸ÖƼ ÇÁ·Î¼¼½º ±â¼úÀ» Àû¿ëÇÏ¿© 󸮽ð£À» ´ÜÃà ÇÏ¿´´Ù.