Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ioframe socket io frameÉèÏëÖеÄCÍøÂç¿â


ÉèÏëÖеÄCÍøÂç¿âioframe is a simple base socket library using libevent.http://blog.csdn.net/Solstice/archive/2010/03/10/5364096.aspx
°´ÕÕ
µÄ˼ÏëÌá½»µÄÒ»·Ý´úÂë¡£
ÉèÏëÖÐµÄ C++ ÍøÂç¿âḬ̈߳²È«£¬Ö§³Ö¶àºË¶àÏß³ÌÔÚ²»Ôö¼Ó¸´ÔӶȵÄǰÌáÏ¿ÉÒÔÖ§³Ö FreeBSD/Darwin£¬·½±ã½«À´Óà Mac ×÷Ϊ¿ª·¢Óûú£¬µ«²»ÎªËü×öÐÔÄÜÓÅ»¯¡£Ò²¾ÍÊÇ˵ IO multiplexing ʹÓà poll ºÍ epoll¡£Ö÷ÒªÖ§³Ö x86-64£¬¼æ¹Ë IA32²»Ö§³Ö UDP£¬Ö»Ö§³Ö TCP²»Ö§³Ö IPv6£¬Ö»Ö§³Ö IPv4²»¿¼ÂǹãÓòÍøÓ¦Óã¬Ö»¿¼ÂǾÖÓòÍøÖ»Ö§³ÖÒ»ÖÖʹÓÃģʽ£ºnon-blocking IO + one event loop per thread£¬²»¿¼ÂÇ×èÈû IOAPI ¼òµ¥Ò×Óã¬Ö»±©Â¶¾ßÌåÀàºÍ±ê×¼¿âÀïµÄÀ࣬²»Ê¹Óà non-trivial templates£¬Ò²²»Ê¹ÓÃÐ麯ÊýÖ»Âú×ã³£ÓÃÐèÇóµÄ 90%£¬²»ÃæÃæ¾ãµ½£¬±ØÒªµÄʱºòÒÔ app À´ÊÊÓ¦ libÖ»×ö library£¬²»×ö³É frameworkÕùȡȫ²¿´úÂëÔÚ 5000 ÐÐÒÔÄÚ£¨²»º¬²âÊÔ£©ÒÔÉÏÌõ¼þ¶¼Âú×ãʱ£¬¿ÉÒÔ¿¼ÂÇ´îÅä Google Protocol Buffers RPC»¶Ó­ÅúÆÀsongbohr@gmail.com
¿ªÔ´µØÖ·https://code.google.com/p/ioframe/£¬¿Éͨ¹ýsvn checkout
»òͨ¹ýhttps://code.google.com/p/ioframe/source/browse/#svn/trunk²é¿´
̸ÁËÕâô¶à ACE µÄÓÅȱµã£¬ÄÇôÎÒÐÄÄ¿ÖÐÀíÏëµÄÍøÂç¿âÊÇʲôÑù×ÓµÄÄØ£¿


Ïà¹ØÎĵµ£º

»ªÎªC/C++±ÊÊÔÌâ ¸½´ð°¸

1.staticÓÐʲôÓÃ;£¿£¨ÇëÖÁÉÙ˵Ã÷Á½ÖÖ£©
    1)ÔÚº¯ÊýÌ壬һ¸ö±»ÉùÃ÷Ϊ¾²Ì¬µÄ±äÁ¿ÔÚÕâÒ»º¯Êý±»µ÷Óùý³ÌÖÐά³ÖÆäÖµ²»±ä¡£
    2) ÔÚÄ£¿éÄÚ£¨µ«ÔÚº¯ÊýÌåÍ⣩£¬Ò»¸ö±»ÉùÃ÷Ϊ¾²Ì¬µÄ±äÁ¿¿ÉÒÔ±»Ä£¿éÄÚËùÓú¯Êý·ÃÎÊ£¬µ«²»Äܱ»Ä£¿éÍâÆäËüº¯Êý·ÃÎÊ¡£ËüÊÇÒ»¸ö±¾µØµÄÈ«¾Ö±äÁ¿¡£
    ......

C/C++ÓïÑÔʵÏÖ¶¯Ì¬Êý×é


CÊý×éµÄСÎÊÌâ
     ÕâÀï˵µÄ¶¯Ì¬Êý×éÊÇ¿ÉÒÔ¸ù¾ÝÐèÒª¶¯Ì¬Ôö³¤Õ¼ÓÃÄÚ´æµÄÊý×飬±ÈÈç³ÌÐò³õʼ·ÖÅäÁË100¸öÔªËØ£¬¿ÉÊÇÔËÐÐÁËÒ»¶Îʱ¼äºóÇøÇø100¸ö¿Õ¼ä²»ÄÜÂú×ãÁË£¬ÏÖÔÚÐèÒª400¸ö£¬Ôõô°ìÄØ£»Äǿ϶¨ÐèÒªÔÙ¶îÍâ·ÖÅä300¸ö¡£
     CÓïÑÔÓÐrealloc()º¯ÊýÀ´½â¾ö¿Õ¼äÀ©³äµÄÎÊÌ⣬µ«ÊDz»ÒªÍ ......

ÈçºÎÔÚunixµÄc³ÌÐòÖеõ½system()µ÷Óõķµ»ØÖµ

½áÂÛ£º
char cmd[128];
...
int  status = system(cmd);
printf("%d == system(\"%s\");\n", WEXITSTATUS(status), cmd);  //´òÓ¡·µ»ØÖµ
 
ÍøÉÏËѵ½µÄ´ð°¸Óë½âÊÍ(1)£º
http://www.lslnet.com/linux/dosc1/38/linux-280268.htm
ÈçºÎÔÚunix c³ÌÐòÖеõ½systemµ÷Óõķµ»ØÖµ,ÇëÖ¸½Ì
¶Ô system µÄ·µ»ØÖµ ......

LinuxÏÂCÓïÑÔ±à³Ì ÎļþµÄ²Ù×÷

ǰÑÔ: 
    ÎÒÃÇÔÚÕâÒ»½Ú½«ÒªÌÖÂÛlinuxÏÂÎļþ²Ù×÷µÄ¸÷¸öº¯Êý. 
1.ÎļþµÄ´´½¨ºÍ¶Áд 
2.ÎļþµÄ¸÷¸öÊôÐÔ 
3.Ŀ¼ÎļþµÄ²Ù×÷ 
4.¹ÜµÀÎļþ 
--------------------------------------------------------------------------------
1¡£ÎļþµÄ´´½¨ºÍ¶Áд 
......

linuxÉÏcÓïÑÔ »ñµÃÍøÂç½Ó¿ÚµÄͳ¼ÆÖµ

Õâ¸ö¶«¶«£¬ÂùºÃÍæµÄ¡£Æäʵ¾ÍÊǶÁÈ¡ÁË/proc/net/dev Îļþ¡£
struct netdev_stats {
    unsigned long long rx_packets_m;    /* total packets received       */
    unsigned long long tx_packets_m;     &nbs ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ