Ëæ×Å»¥ÁªÍøµÄÆÕ¼°ºÍ¼ÆËã»ú¼¼ÊõµÄ²»¶Ï·¢Õ¹£¬Áª»úÓÎÏ·ÒѾ³ÉΪÁËÓÎÏ·ÐÐÒµµÄÒ»¸öÖØÒª×é³É²¿·Ö¡£¶øÅÁ˹¿¨ÆõÔ¼×÷ΪһÖÖ³ÌÐòÉè¼ÆÓïÑÔ£¬Ò²ÔÚÕâ¸ö¹ý³ÌÖаçÑÝ×ÅÖØÒªµÄ½ÇÉ«¡£±¾ÎľÍÒÔÅÁ˹¿¨ÆõԼΪ»ù´¡£¬½éÉÜÈçºÎʵÏÖÒ»¸öÁª»úÓÎÏ·£¬²¢´øÁì¶ÁÕßÖð²½Á˽âÁª»úÓÎÏ·µÄ¿ª·¢Á÷³Ì¡£
ÅÁ˹¿¨ÆõÔ¼½éÉÜ
ÅÁ˹¿¨ÆõÔ¼ÊÇÒ»ÖÖÇ¿ÀàÐ͵ijÌÐòÉè¼ÆÓïÑÔ£¬ÒÔÆä½á¹¹»¯±à³ÌºÍ¿ìËÙ±àÒëµÄÌصã¶ø¹ã·ºÓ¦ÓÃÓÚ¸÷ÖÖÈí¼þ¿ª·¢ÁìÓò¡£ËüÊÇÒ»Öַdz£ÊʺÏÓÃÀ´±àдÓÎÏ··þÎñÆ÷µÄÓïÑÔ£¬ÒòΪËü¿ÉÒÔÇáËɵؽâ¾ö¶àÏ̡߳¢Ò첽ͨÐźÍÊý¾Ý½»»»µÈÎÊÌâ¡£
Áª»úÓÎÏ·¿ª·¢¿ò¼Ü
ÔÚ¿ª·¢Áª»úÓÎϷʱ£¬ÎÒÃÇÐèҪѡÔñÒ»¸öÊʺÏÎÒÃǵĿª·¢¿ò¼Ü¡£Í¨³£Çé¿öÏ£¬ÎÒÃÇ¿ÉÒÔÑ¡ÔñһЩÁ÷ÐеÄÓÎÏ·ÒýÇ棬ÈçUnity¡¢UnrealEngineµÈ¡£µ«ÊÇ£¬±¾ÎĽ«ÒÔÅÁ˹¿¨ÆõԼΪ»ù´¡£¬½éÉÜÈçºÎʹÓÃIndy£¨InternetDirect£©½øÐÐÁª»úÓÎÏ·¿ª·¢¡£
Indy½éÉÜ
IndyÊÇÒ»¸ö»ùÓÚTCP/IPºÍUDPÐÒéµÄÍøÂçͨÐÅ¿ò¼Ü£¬ËüÌṩÁ˸÷ÖÖÍøÂç±à³Ì×é¼þ£¬ÈçTCP¿Í»§¶Ë¡¢TCP·þÎñÆ÷¡¢UDP¿Í»§¶Ë¡¢UDP·þÎñÆ÷µÈ¡£ÎÒÃÇ¿ÉÒÔʹÓÃIndyÀ´´´½¨Ò»¸ö×Ô¶¨ÒåµÄÍøÂçÐÒ飬²¢Í¨¹ý¸ÃÐÒé½øÐÐÊý¾Ý½»»»¡£
Áª»úÓÎÏ··þÎñÆ÷´î½¨
ÎÒÃÇÐèÒª´î½¨Ò»¸öÁª»úÓÎÏ··þÎñÆ÷£¬ÒÔ±ãÍæ¼Ò¿ÉÒÔͨ¹ýËü½øÐÐÓÎÏ·¡£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIdTCPServer×é¼þÀ´´´½¨Ò»¸öTCP·þÎñÆ÷¡£µ±Íæ¼ÒÁ¬½Óµ½·þÎñÆ÷ʱ£¬·þÎñÆ÷»áΪÆä·ÖÅäÒ»¸öΨһµÄ¿Í»§¶ËID£¬²¢½«Æä±£´æµ½Ò»¸ö¿Í»§¶ËÁбíÖС£
ÏûÏ¢ÐÒéÉè¼Æ
ÔÚ¿ª·¢Áª»úÓÎϷʱ£¬ÎÒÃÇÐèÒª¶¨ÒåÒ»¸öÏûÏ¢ÐÒéÀ´ÃèÊöÊý¾ÝµÄ½á¹¹ºÍÄÚÈÝ¡£ÏûÏ¢ÐÒé¿ÉÒÔ°üº¬¶à¸öÏûÏ¢ÀàÐÍ£¬Ã¿¸öÏûÏ¢ÀàÐÍÓÉÒ»¸ö¹Ì¶¨µÄ±êʶ·ûºÍÒ»×éÊý¾Ý×Ö¶Î×é³É¡£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIdBytesÀàÐÍÀ´±íʾÏûÏ¢Êý¾Ý¡£
ÏûÏ¢±àÂëÓë½âÂë
ÔÚʵ¼ÊʹÓÃÖУ¬ÎÒÃÇÐèÒª½«ÏûÏ¢Êý¾Ý±àÂë³É¶þ½øÖƸñʽ£¬²¢½«Æä·¢Ë͵½ÍøÂçÉÏ¡£ÔÚ½ÓÊÕµ½ÏûÏ¢ºó£¬ÎÒÃÇÐèÒª½«Æä½âÂë³ÉÏûÏ¢Êý¾Ý£¬²¢°´ÕÕÏûÏ¢ÀàÐͽøÐд¦Àí¡£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIdBytesºÍTIdStreamHelperÀ´½øÐÐÏûÏ¢±àÂëÓë½âÂë¡£
¿Í»§¶ËÁ¬½ÓÓë¶Ï¿ª
µ±Íæ¼ÒÁ¬½Óµ½·þÎñÆ÷ʱ£¬·þÎñÆ÷»áΪÆä·ÖÅäÒ»¸öΨһµÄ¿Í»§¶ËID£¬²¢½«Æä±£´æµ½Ò»¸ö¿Í»§¶ËÁбíÖС£µ±Íæ¼Ò¶Ï¿ªÁ¬½Óʱ£¬·þÎñÆ÷»á´Ó¿Í»§¶ËÁбíÖÐɾ³ý¸Ã¿Í»§¶ËID¡£ÎªÁ˱ÜÃâ¿Í»§¶ËÒì³£¶Ï¿ªÁ¬½Óµ¼Ö·þÎñÆ÷±ÀÀ££¬ÎÒÃÇ»¹ÐèҪΪÿ¸ö¿Í»§¶ËÉèÖÃÒ»¸ö³¬Ê±¼ì²â»úÖÆ¡£
Íæ¼ÒÊý¾Ýͬ²½
ÔÚÁª»úÓÎÏ·ÖУ¬Íæ¼ÒÖ®¼äÐèҪʵʱͬ²½¸÷ÖÖÓÎÏ·Êý¾Ý£¬Èç½ÇɫλÖá¢×´Ì¬¡¢¶¯×÷µÈ¡£ÎªÁËʵÏÖÕâÒ»¹¦ÄÜ£¬ÎÒÃÇÐèÒª¶ÔÍæ¼ÒÊý¾Ý½øÐж¨ÆÚ¸üУ¬²¢½«Æä·¢Ë͸øÆäËûÍæ¼Ò¡£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIdUDPClientºÍTIdUDPServerÀ´½øÐÐÊý¾Ý½»»»¡£
ÓÎÏ··¿¼ä¹ÜÀí
ΪÁË·½±ãÍæ¼ÒÖ®¼äµÄ»¥¶¯ºÍ¾º¼¼£¬ÎÒÃÇÐèÒªÉè¼ÆÒ»¸öÓÎÏ··¿¼ä¹ÜÀíϵͳ¡£ÔÚÓÎÏ··¿¼äÖУ¬Íæ¼Ò¿ÉÒÔ¼ÓÈë»òÍ˳öij¸öÓÎÏ·£¬²¢ÓëÆäËûÍæ¼Ò½øÐн»»¥¡£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIdContextÀ´±íʾһ¸ö¿Í»§¶ËÁ¬½Ó£¬Ê¹ÓÃTIdThreadMgrPoolÀ´¹ÜÀí¶à¸ö¿Í»§¶ËÁ¬½Ó¡£
ÓÎÏ·Âß¼´¦Àí
ÔÚÁª»úÓÎÏ·ÖУ¬ÓÎÏ·Âß¼ÊÇ×î¹Ø¼üµÄ²¿·Ö¡£ÎÒÃÇÐèÒª½«ËùÓÐÍæ¼ÒµÄ²Ù×÷½øÐÐͳһ´¦Àí£¬²¢¸ù¾ÝÓÎÏ·¹æÔò½øÐÐÅжϡ£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIdContext×Ô¶¨ÒåʼþÀ´´¦ÀíÍæ¼ÒµÄÊäÈëʼþ£¬²¢Ê¹ÓÃTThreadÀàÀ´ÊµÏÖÓÎÏ·Âß¼´¦Àí¡£
ÓÎÏ·AIʵÏÖ
ΪÁËÔö¼ÓÓÎÏ·µÄȤζÐԺͿÉÍæÐÔ£¬ÎÒÃÇ¿ÉÒÔΪÓÎÏ·Ìí¼ÓһЩAI£¨È˹¤ÖÇÄÜ£©Íæ¼Ò¡£AIÍæ¼Òͨ³£ÊÇÓÉ·þÎñÆ÷¿ØÖƵģ¬ËüÃÇ¿ÉÒÔÄ£ÄâÕæʵÍæ¼ÒµÄÐÐΪ£¬²¢ÓëÆäËûÍæ¼Ò½øÐн»»¥¡£
Êý¾Ý³Ö¾Ã»¯´¦Àí
ÔÚÁª»úÓÎÏ·ÖУ¬ÎÒÃÇ»¹ÐèÒª½«ÓÎÏ·Êý¾Ý½øÐг־û¯´¦Àí£¬ÒÔ±ãÔÚÏÂÒ»´ÎÆô¶¯Ê±¿ÉÒÔ»Ö¸´µ½Ö®Ç°µÄ״̬¡£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIniFileÀàÀ´±£´æºÍ¶ÁÈ¡ÓÎÏ·Êý¾Ý£¬Ò²¿ÉÒÔʹÓÃTIdHashMessageDigest5ÀàÀ´¶ÔÃô¸ÐÊý¾Ý½øÐмÓÃÜ¡£
°²È«ÐÔÓë·À×÷±×´¦Àí
ÔÚÁª»úÓÎÏ·ÖУ¬°²È«ÐԺͷÀ×÷±×ÊǷdz£ÖØÒªµÄÎÊÌâ¡£ÎÒÃÇÐèÒª¶ÔÍæ¼ÒÊäÈë½øÐÐÑéÖ¤£¬²¢¶Ô·þÎñÆ÷״̬½øÐмà¿ØºÍµ÷ÊÔ¡£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIdSASL×é¼þÀ´¶Ô¿Í»§¶Ë½øÐÐÉí·ÝÑéÖ¤£¬²¢Ê¹ÓÃTIdServerIOHandlerSSLOpenSSL×é¼þÀ´±£»¤ÍøÂçͨÐÅ°²È«¡£
ÓÅ»¯ºÍÐÔÄܵ÷Õû
ÔÚÁª»úÓÎÏ·¿ª·¢¹ý³ÌÖУ¬ÓÅ»¯ºÍÐÔÄܵ÷ÕûÊÇÓÀÔ¶µÄÖ÷Ìâ¡£ÎÒÃÇÐèÒª²»¶ÏµØÓÅ»¯·þÎñÆ÷´úÂ룬¼õÉÙÍøÂçͨÐŵÄÑӳٺʹø¿íÕ¼Óá£ÔÚIndyÖУ¬ÎÒÃÇ¿ÉÒÔʹÓÃTIdAntiFreeze×é¼þÀ´·ÀÖ¹½çÃ濨ËÀ£¬²¢Ê¹ÓÃTIdConnectionIntercept×é¼þÀ´À¹½ØÍøÂçͨÐÅ¡£
±¾ÎÄÒÔÅÁ˹¿¨ÆõԼΪ»ù´¡£¬½éÉÜÁËÈçºÎʹÓÃIndyʵÏÖÒ»¸öÁª»úÓÎÏ·£¬²¢½²½âÁËÁª»úÓÎÏ·¿ª·¢µÄ¸÷¸ö»·½Ú¡£Í¨¹ý±¾ÎĵÄѧϰ£¬¶ÁÕß¿ÉÒÔÁ˽⵽Áª»úÓÎÏ·µÄ¿ª·¢Á÷³ÌºÍ×¢ÒâÊÂÏҲ¿ÉÒÔ¶ÔÍøÂç±à³ÌºÍÓÎÏ··þÎñÆ÷µÄʵÏÖÓиüÉîÈëµÄÀí½â¡£