当前位置: 首页 > >

¡¶Nettyѧ*´ò¿¨--´ÓС°×µ½·ÅÆú¡·----

发布时间:

´ò¿¨ÈÕÆÚ(2019-07-03)
ѧ*nettyµÄÒâÒå

????×÷Ϊһ¸öjava³ÌÐòÔ±£¬Èç¹ûûÓÐÑо¿¹ýnetty£¬Ö»¶ÔjavaÓïÑÔµÄʹÓúÍÀí½â½ö½öÍ£ÁôÔÚ±íÃæË®*£¬»áµãSSH¡¢SSM£¬»áд¼¸¸öMVC£¬·ÃÎÊÊý¾Ý¿âºÍ»º´æ£¬ÕâЩֻÊdzõµÈJava³ÌÐòÔ±¸ÉµÄÊ¡£Èç¹ûÏëÒª½ø½×£¬ÏëÁ˽âjava·þÎñÆ÷µÄÉî²ã¸ß½×֪ʶ£¬netty¾ø¶ÔÊÇÒ»¸ö±ØÐëÒª¹ýµÄÃż÷¡£
????ÓÐÁËnetty£¬¿ÉÒÔʵÏÖ×Ô¼ºµÄHTTP·þÎñÆ÷£¬FTP·þÎñÆ÷£¬UDP·þÎñÆ÷£¬RPC·þÎñÆ÷£¬WebScoket·þÎñÆ÷£¬RedisµÄProxy·þÎñÆ÷£¬MySqlµÄProxy·þÎñÆ÷µÈ¡£
????˳±ã˵һÏ£¬ÎÒÒ²ÊÇ´ÓдÕâ¸ö²©¿Í¿ªÊ¼Õýʽѧ*nettyµÄ£¬Ö®Ç°¶ÔnettyÒ»ÎÞËùÖª£¬´Ó0¿ªÊ¼£¬Îª×Ô¼º´ò¿¨£¬¼á³ÖÿÌì¸üÐÂ1~2ƪ£¬¼Ç¼×Ô¼ºµÄѧ*½ø¶È¡£ËùÒÔ²»Óüɻä×Ô¼º²»ÐУ¬ÎÒÒ²²»ÖªµÀ×Ô¼ºÐв»ÐУ¬¿´ÎÒѧ*³É¹û¡£


netty»ù±¾½éÉÜ

????²¿·ÖÄÚÈݲο¼


ÓóµÀÔ´Âë(http://svip.iocoder.cn/categories/Netty/)
ѧ*Òªµã

- 1.nettyÊÇʲô£¿
- 2.nettyµÄÌØÐÔ
- 3.nettyµÄÓ¦Óó¡¾°
- 4.ΪʲôѡÔñnetty
- 5.ʲôÊÇBIO£¿
- 6.ʲôÊÇNIO£¿
- 7.ʲôÊÇAIO£¿
- 8.ʲôÊÇHTTP£¿

nettyÊÇʲô£¿

????nettyÊÇÒ»¿îÒ첽ʼþÇý¶¯µÄÍøÂçÓ¦Óÿò¼Ü£¬ÓÃÒÔ¿ìËٵĿª·¢¸ßÐÔÄÜ¡¢¸ß¿É¿¿ÐÔµÄÍøÂç·þÎñÆ÷ºÍ¿Í»§¶Ë³ÌÐò¡£
????Ò²¾ÍÊÇ˵£¬nettyÊÇÒ»¸ö»ùÓÚnioµÄ¿Í»§¡¢·þÎñÆ÷¶Ë±à³Ì¿ò¼Ü¡£Ê¹ÓÃnetty¿ÉÒÔÈ·±£¿ìËٺͼòµ¥µÄ¿ª·¢³öÒ»¿îÍøÂçÓ¦Óá£ÀýÈçʵÏÖijÖÖЭÒéµÄ¿Í»§£¬·þÎñ¶ËÓ¦Óá£nettyÏ൱¼ò»¯ºÍÁ÷Ïß»¯ÁËÍøÂçÓ¦Óõıà³Ì¿ª·¢¹ý³Ì£¬ÀýÈ磺tcpºÍudpµÄsockteµÄ·þÎñ¿ª·¢¡£


nettyµÄÌØÐÔ
·ÖÀàÌØÐÔ
Éè¼Æ- ͳһµÄAPI£¬ÊÊÓÃÓÚ²»Í¬µÄЭÒé(×èÈûºÍ·Ç×èÈû)

ʲôÊÇBIO£¿

????BIO£¬È«³ÆBlocking IO ÊÇÒ»ÖÖ×èÈû + ͬ²½µÄͨÐÅģʽ£¬ÊÇÒ»¸ö±È½Ï´«Í³µÄÃæÏòÁ÷(Stream)µÄͨÐÅ·½Ê½£¬Ä£Ê½¼òµ¥¡¢Ê¹Ó÷½±ã¡£µ«ÊÇ´¦Àí²¢·¢µÄÄÜÁ¦ºÜµÍ¡¢Í¨ÐźÄʱ¡¢ÒÀÀµÍøËÙ¡£·þÎñÆ÷ʵÏÖģʽÊÇÒ»¸öÁ¬½ÓÒ»¸öỊ̈߳¬¼´Óпͻ§¶ËÇëÇó·þÎñµÄʱºò£¬·þÎñ¶Ë¾ÍÐèÒªÆô¶¯Ò»¸öÏ߳̽øÐд¦Àí£¬Èç¹ûÕâ¸öÁ´½Ó²»×öÈκÎÊÂÇé»áÔì³É²»±ØÒªµÄÏ߳̿ªÏú£¬µ±È»¿ÉÒÔÀûÓÃÏ̳߳ػúÖ*øÐиÄÉÆ¡£


ʲôÊÇ×èÈû£¿

????×èÈû·ÖΪ½ÓÊÕ(Accept)¶ÂÈû¡¢¶Á(Read)×èÈû¡¢Ð´(Write)¶ÂÈû


AcceptÊÇ×èÈûµÄ£¬Ö»ÓÐÐÂÁ¬½Ó½øÀ´ÁË£¬Accept²Å»á·µ»Ø£¬Ö÷Ï̲߳ÅÄܼÌÐø´¦ÀíReadÊÇ×èÈûµÄ£¬Ö»ÓÐÇëÇóÏûÏ¢À´ÁË£¬Read²ÅÄÜ·µ»Ø£¬×ÓÏ̲߳ÅÄܼÌÐø´¦ÀíWriteÊÇ×èÈûµÄ£¬Ö»Óпͻ§°ÑÏûÏ¢½ÓÊÕÁË£¬Write²ÅÄÜ·µ»Ø£¬×ÓÏ̲߳ÅÄܼÌÐø¶ÁÈ¡ÏÂÒ»¸öÇëÇó

????ËùÒÔ´«Í³µÄ¶àÏ̷߳þÎñÆ÷ÊÇBIOģʽ£¬´ÓÍ·µ½Î²ËùÓеÄÏ̶߳¼ÊÇ×èÈûµÄ¡£ÕâЩÏ߳̾͸ɵÈÔÚÄÇÀռÓÃÂʲÙ×÷ϵͳµÄµ÷¶È×ÊÔ´£¬Ê²Ã´ÊÂÒµ²»¸É£¬ÊÇÀË·Ñ¿Õ¼äºÍʱ¼ä¡£¿ÉÒÔÀí½â³ÉÒ»¸ö¿Í»§¶Ë¸ú·þÎñÆ÷¶ËµÄÏß³ÌÊÇ1:1µÄ¹Øϵ¡£


BIOÓ¦Óó¡¾°

????ÊÊÓÃÓÚÁ¬½ÓÊý±È½ÏС£¬²¢ÇÒÒ»´Î·¢ËÍ´óÁ¿Êý¾ÝµÄ³¡¾°£¬ÕâÖÖ·²ÊǶԷþÎñÆ÷×ÊÔ´ÒªÇó±È½Ï¸ß£¬²¢·¢¾ÖÏÞÓÚÓ¦ÓÃÖС£


ʲôÊÇNIO

????NIO£¬È«³ÆNon Blocking IO,ÊÇÒ»ÖÖÃæÏò»º³åÇøµÄ·Ç×èÈû+ͬ²½µÄͨÐÅģʽ¡£


NIOÔ­Àí

????NIOÏà¶ÔÓÚBIOÀ´ËµÊÇÒ»´ó½ø²½£¬¿Í»§¶ËºÍ·þÎñÆ÷Ö®¼äͨ¹ý¹ÜµÀ(Channel)ͨÐÅ¡£NIO¿ÉÒÔÔڹܵÀ(Channel)Ö®¼ä½øÐжÁд²Ù×÷£¬ÕâЩ¹ÜµÀ(Channel)¶¼ÊÇ×¢²áÔڶ෸´ÔñÆ÷(Selector)ÉÏ£¬¶à·¸´ÓÃÆ÷(Selector)ͨ¹ýÒ»¸öÏ̲߳»Í£µÄÂÖѯÕâЩ¹ÜµÀ(Channel)£¬ÕÒµ½ÒѾ­×¼±¸¾ÍÐ÷µÄ¹ÜµÀ(Channel)Ö´ÐÐIO²Ù×÷¡£
????ͨ¹ýÒ»¸öÏß³ÌÂÖѯ£¬ÊµÏÖǧÍò¸ö¿Í»§¶ËµÄÇëÇó£¬Õâ¾ÍÊÇ·Ç×èÈûµÄÌص㡣


NIOµÄÖ÷Òª¹¹³É
»º³åÇøBuffer£ºËüÊÇNIOºÍBIOµÄÒ»¸öÖØÒªÇø±ð¡£BIOÊǽ«Êý¾ÝÖ±½ÓдÈëStream¶ÔÏóÖУ¬NIOµÄÊý¾Ý²Ù×÷¶¼ÊÇÔÚBufferÖнøÐеġ£Bufferʵ¼ÊÉÏÊÇÒ»¸öÊý×飬×î³£¼ûµÄÊÇByteBuffer£¬ÁíÍ⻹ÓÐCharBuffer,ShortBuffer,IntBuffer,LongBuffer,FloatBuffer,DoubleBuffer¹ÜµÀChannel£ººÍStreamÁ÷²»Í¬£¬¹ÜµÀÊÇË«ÏòµÄ£¬NIO¿ÉÒÔͨ¹ýChannel½øÐÐÊý¾Ý¶Á¡¢Ð´ºÍͬʱ¶Áд²Ù×÷¡£¶à·¸´ÓÃÆ÷Selector£ºNIO±à³ÌµÄ»ù´¡£¬¶à·¸´ÓÃÆ÷ÌṩһѡÔñ¾ÍÐ÷µÄÈÎÎñÄÜÁ¦¡£Selector»á²»¶ÏµÄÂÖѯע²áÔÚÆäÉÏÃæµÄChannel£¬Èç¹ûij¸öChannel´¦ÓÚ¾ÍÐ÷״̬£¬¾Í»á±»SelectorÂÖÐò³öÀ´£¬È»ºóͨ¹ýSelectorKey¿ÉÒÔÈ¡µÃ¾ÍÐ÷µÄChannel¼¯ºÏ£¬´Ó¶ø½øÐÐIO²Ù×÷·þÎñÆ÷Ìṩһ¸öÏ̸߳ºÔðSelectorµÄÂÖѯ¹¤×÷£¬¾Í¿ÉÒÔ½ÓÈë³ÉǧÉÏÍò¸ö¿Í»§¶Ë£¬Õâ¾ÍÊÇJDK NIO¿âµÄ¾Þ´ó½ø²½
AIOÊÇʲô£¿

????AIO£¬È«³ÆAsynchronous IO£¬Ò²½ÐNIO2£¬ÊÇÒ»ÖÖ·Ç×èÈû + Òì²½µÄͨÐÅģʽ£¬ÔÚNIOµÄ»ù´¡ÉÏ£¬ÒýÈëÁËеÄÒ첽ͨµÀ(Channel)µÄ¸ÅÄ²¢ÌṩÁËÒì²½ÎļþͨµÀºÍÒì²½Ì×½Ó×ÖͨµÀµÄʵÏÖ


AIOÔ­Àí

????AIO²¢Ã»ÓвÉÓÃNIOµÄ¶à·¸´ÓÃÆ÷£¬¶øÊÇͨ¹ýÒ첽ͨµÀµÄ¸ÅÄÆäRead¡¢Write·½·¨µÄ·µ»ØÀàÐͶ¼ÊÇFuture¶ÔÏ󣬶øFutureµÄÄ£ÐÍÊÇÒì²½µÄ£¬ÆäºËÐÄ˼ÏëÊÇ£ºÈ¥Ö÷º¯ÊýµÈ´ýʱ¼ä



ʲôÊÇHTTP£¿

????HttpÊÇÒ»ÖÖ³¬Îı¾´«ÊäЭÒ飬ÊÇÒ»ÖÖ½¨Á¢ÔÚTCPÉϵÄÎÞ״̬Á´½Ó£¬Õû¸ö»ù±¾µÄ¹¤×÷Á÷³ÌÊÇ¿Í»§¶Ë·¢ËÍÒ»¸öHttpÇëÇó£¬ËµÃ÷¿Í»§¶ËÏëÒª·ÃÎʵÄ×ÊÔ´ºÍÇëÇóµÄ¶¯×÷£¬·þÎñ¶ËÊÕµ½ÇëÇóÖ®ºó¿ªÊ¼´¦ÀíÇëÇ󣬲¢¸ù¾ÝÇëÇó×÷³öÏàÓ¦µÄ¶¯×÷·ÃÎÊ·þÎñÆ÷×ÊÔ´£¬×îºóͨ¹ý·¢ËÍHttpÏìÓ¦½á¹û·µ»Ø¿Í»§¶Ë¡£ÆäÖÐÒ»¸öÇëÇóµÄ¿ªÊ¼µ½Ò»¸öÏìÓ¦µÄ¼¼Êõ³ÆΪÊÂÎñ£¬µ±Ò»¸öÊÂÎñ½áÊøÖ®ºó»¹»áÔÚ·þÎñ¶ËÌí¼ÓÒ»ÌõÈÕÖ¾ÌõÄ¿¡£


HTTPÔ­Àí
1.´´½¨Ò»¸öServerScoket£¬¼àÌý²¢°ó¶¨Ò»¸ö¶Ë¿Ú(ÀýÈ磺80)2.һϵÁпͻ§¶ËÇëÇóÕâ¸ö¶Ë¿Ú(ÀýÈ磺80)3.·þÎñÆ÷ʹÓÃAccept£¬»ñµÃÒ»¸öÀ´×Ô¿Í»§¶ËµÄSocketÁ´½Ó¶ÔÏó4.Æô¶¯Ò»¸öеÄÏ̴߳¦ÀíÁ¬½Ó
1>.¶ÁÈ¡Socket£¬µÃµ½×Ö½ÚÁ÷
2>.½âÂëЭÒ飬µÃµ½httpÇëÇó¶ÔÏó
3>.´¦ÀíhttpÇëÇ󣬵õ½Ò»¸ö½á¹û£¬·â×°³ÉÒ»¸öHttpResponse¶ÔÏó
4>.±àÂëЭÒ飬½«½á¹ûÐòÁл¯³É×Ö½ÚÁ÷
5>.дÈëSocket£¬½«×Ö½ÚÁ÷·¢Ë͸ö¿Í»§¶Ë5.¼ÌÐøÑ­»·´¦Àí²½Öè3


相关推荐


友情链接: