Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
dz̸·þÎñÖÎÀí¡¢Î¢·þÎñÓëService Mesh
 
×÷Õߣº²¤ÂܿƼ¼
  4166  次浏览      27
 2020-2-4
   
 
±à¼­ÍƼö:
±¾ÎĽ«ÒÔDubboΪÀý£¬¿ªÊ¼Îª´ó¼Ò½éÉÜSOA¡¢·þÎñÖÎÀíµÈ¸ÅÄÒÔ¼°DubboµÄ»ù´¡ÖªÊ¶ºÍ×îз¢Õ¹Çé¿ö¡£Ï£Íû¶Ô´ó¼ÒµÄѧϰÓÐËù°ïÖú¡£
±¾ÎÄÀ´×ÔÓÚcsdn£¬ÓÉ»ðÁú¹ûÈí¼þDelores±à¼­¡¢ÍƼö¡£

SOAÓë·þÎñÖÎÀí

SOA£¨ÃæÏò·þÎñµÄÌåϵ½á¹¹£©¸ÅÄîÓÉÀ´ÒѾã¬ÔÚ10¶àÄêǰ±ã¿ªÊ¼½øÈëµ½ÎÒÃǹã´óÈí¼þ¿ª·¢ÕßµÄÊÓÏßÖС£SOAÊÇÒ»ÖÖ´ÖÁ£¶È¡¢ËÉñîºÏ·þÎñ¼Ü¹¹£¬·þÎñÖ®¼äͨ¹ý¼òµ¥¡¢¾«È·¶¨Òå½Ó¿Ú½øÐÐͨѶ£¬²»Éæ¼°µ×²ã±à³Ì½Ó¿ÚºÍͨѶģÐÍ¡£SOA¿ÉÒÔ¿´×÷ÊÇB/SÄ£ÐÍ¡¢Web Service¼¼ÊõÖ®ºóµÄ×ÔÈ»ÑÓÉì¡£

·þÎñÖÎÀí£¬Ò²³ÆÎªSOAÖÎÀí£¬ÊÇÖ¸ÓÃÀ´¹ÜÀíSOAµÄ²ÉÓúÍʵÏֵĹý³Ì¡£ÒÔÏÂÊÇÔÚ2006ÄêʱIBM¶ÔÓÚ·þÎñÖÎÀíÒªµãµÄ×ܽ᣺

l ·þÎñ¶¨Ò壨·þÎñµÄ·¶Î§¡¢½Ó¿ÚºÍ±ß½ç£©

l ·þÎñ²¿ÊðÉúÃüÖÜÆÚ£¨¸÷¸öÉúÃüÖÜÆÚ½×¶Î£©

l ·þÎñ°æ±¾ÖÎÀí£¨°üÀ¨¼æÈÝÐÔ£©

l ·þÎñÇ¨ÒÆ£¨ÆôÓúÍÍËÒÛ£©

l ·þÎñ×¢²áÖÐÐÄ£¨ÒÀÀµ¹ØÏµ£©

l ·þÎñÏûϢģÐÍ£¨¹æ·¶Êý¾ÝÄ£ÐÍ£©

l ·þÎñ¼àÊÓ£¨½øÐÐÎÊÌâÈ·¶¨£©

l ·þÎñËùÓÐȨ£¨ÆóÒµ×éÖ¯£©

l ·þÎñ²âÊÔ£¨Öظ´²âÊÔ£©

l ·þÎñ°²È«£¨°üÀ¨¿É½ÓÊܵı£»¤·¶Î§£©

ÏÞÓÚµ±Ê±µÄ¼¼Êõ·¢Õ¹Ë®Æ½£¬¹ã´óÈí¼þÉè¼ÆÓ뿪·¢ÈËÔ±¶ÔÓÚSOAºÍ·þÎñÖÎÀíµÄ¼¼ÊõÈÏÖª»¹Ö÷ҪͣÁôÔÚWeb ServiceºÍESB×ÜÏߵȼ¼ÊõºÍ¹æ·¶ÉÏ£¬²¢Ã»ÓÐÕæÕýÔÚÈí¼þ¿ª·¢ÖеÃÒÔ³ä·ÖÂ䵨¡£

Dubbo¿ªÔ´

Ö±µ½2011Äê10ÔÂ27ÈÕ£¬°¢Àï°Í°Í¿ªÔ´ÁË×Ô¼ºµÄSOA·þÎñ»¯ÖÎÀí·½°¸µÄºËÐÄ¿ò¼ÜDubbo£¬·þÎñÖÎÀíºÍSOAµÄÉè¼ÆÀíÄʼÖð½¥ÔÚ¹úÄÚÈí¼þÐÐÒµÖÐÂ䵨£¬²¢±»¹ã·ºÓ¦Óá£

Dubbo×÷Ϊ°¢Àï°Í°ÍÄÚ²¿µÄSOA·þÎñ»¯ÖÎÀí·½°¸µÄºËÐÄ¿ò¼Ü£¬ÔÚ2012ÄêʱÒѾ­Ã¿ÌìΪ2000+¸ö·þÎñÌṩ3,000,000,000+´Î·ÃÎÊÁ¿Ö§³Ö£¬²¢±»¹ã·ºÓ¦ÓÃÓÚ°¢Àï°Í°Í¼¯Íŵĸ÷³ÉÔ±Õ¾µã¡£Dubbo×Ô2011Ä꿪Դºó£¬Òѱ»Ðí¶à·Ç°¢Àïϵ¹«Ë¾Ê¹Óã¬ÆäÖмÈÓе±µ±Íø¡¢ÍøÒ׿¼À­µÈ»¥ÁªÍø¹«Ë¾£¬Ò²ÓÐÖйúÈËÊÙ¡¢Çൺº£¶ûµÈ´«Í³ÆóÒµ¡£

Dubbo¼ò½é

DubboÊÇÒ»¸ö¸ßÐÔÄÜ·þÎñ¿ò¼Ü£¬ÖÂÁ¦ÓÚÌṩ¸ßÐÔÄܺÍ͸Ã÷»¯µÄRPCÔ¶³Ì·þÎñµ÷Ó÷½°¸£¬ÒÔ¼°SOA·þÎñÖÎÀí·½°¸£¬Ê¹µÃÓ¦ÓÿÉͨ¹ý¸ßÐÔÄÜRPCʵÏÖ·þÎñµÄÊä³öºÍÊäÈ빦ÄÜ£¬ºÍSpring¿ò¼Ü¿ÉÒÔÎ޷켯³É¡£

×÷Ϊһ¸ö·Ö²¼Ê½·þÎñ¿ò¼Ü£¬ÒÔ¼°SOAÖÎÀí·½°¸£¬DubboÆä¹¦ÄÜÖ÷Òª°üÀ¨£º¸ßÐÔÄÜNIOͨѶ¼°¶àЭÒ鼯³É£¬·þÎñ¶¯Ì¬Ñ°Ö·Óë·ÓÉ£¬Èí¸ºÔØ¾ùºâÓëÈÝ´í£¬ÒÀÀµ·ÖÎöÓë·þÎñ½µ¼¶µÈ¡£Dubbo×î´óµÄÌØµãÊǰ´ÕÕ·Ö²ãµÄ·½Ê½À´¼Ü¹¹£¬Ê¹ÓÃÕâÖÖ·½Ê½¿ÉÒÔʹ¸÷¸ö²ãÖ®¼ä½âñîºÏ£¨»òÕß×î´óÏ޶ȵØËÉñîºÏ£©¡£´Ó·þÎñÄ£Ð͵ĽǶÈÀ´¿´£¬Dubbo²ÉÓõÄÊÇÒ»Öַdz£¼òµ¥µÄÄ£ÐÍ£¬ÒªÃ´ÊÇÌṩ·½Ìṩ·þÎñ£¬ÒªÃ´ÊÇÏû·Ñ·½Ïû·Ñ·þÎñ£¬ËùÒÔ»ùÓÚÕâÒ»µã¿ÉÒÔ³éÏó³ö·þÎñÌṩ·½£¨Provider£©ºÍ·þÎñÏû·Ñ·½£¨Consumer£©Á½¸ö½ÇÉ«¡£

Dubbo°üº¬Ô¶³ÌͨѶ¡¢¼¯ÈºÈÝ´íºÍ×Ô¶¯·¢ÏÖÈý¸öºËÐIJ¿·Ö¡£Ìṩ͸Ã÷»¯µÄÔ¶³Ì·½·¨µ÷Óã¬ÊµÏÖÏñµ÷Óñ¾µØ·½·¨Ò»Ñùµ÷ÓÃÔ¶³Ì·½·¨£¬Ö»Ðè¼òµ¥ÅäÖã¬Ã»ÓÐÈκÎAPIÇÖÈ롣ͬʱ¾ß±¸Èí¸ºÔØ¾ùºâ¼°ÈÝ´í»úÖÆ£¬¿ÉÔÚÄÚÍøÌæ´úF5µÈÓ²¼þ¸ºÔؾùºâÆ÷£¬½µµÍ³É±¾£¬¼õÉÙµ¥µã¡£¿ÉÒÔʵÏÖ·þÎñ×Ô¶¯×¢²áÓë·¢ÏÖ£¬²»ÔÙÐèҪдËÀ·þÎñÌṩ·½µØÖ·£¬×¢²áÖÐÐÄ»ùÓÚ½Ó¿ÚÃû²éѯ·þÎñÌṩÕßµÄIPµØÖ·£¬²¢ÇÒÄܹ»Æ½»¬Ìí¼Ó»òɾ³ý·þÎñÌṩÕß¡£

ÏÂͼÀ´×ÔDubbo¹ÙÍø£¬ÃèÊöÁË·þÎñ×¢²áÖÐÐÄ¡¢·þÎñÌṩ·½¡¢·þÎñÏû·Ñ·½¡¢·þÎñ¼à¿ØÖÐÐÄÖ®¼äµÄµ÷ÓùØÏµ£¬¾ßÌåÈçÏÂͼËùʾ£º

½Úµã½Çɫ˵Ã÷£º

µ÷ÓùØÏµËµÃ÷£º

1. ·þÎñÈÝÆ÷¸ºÔðÆô¶¯£¬¼ÓÔØ£¬ÔËÐзþÎñÌṩÕß¡£

2. ·þÎñÌṩÕßÔÚÆô¶¯Ê±£¬Ïò×¢²áÖÐÐÄ×¢²á×Ô¼ºÌṩµÄ·þÎñ¡£

3. ·þÎñÏû·ÑÕßÔÚÆô¶¯Ê±£¬Ïò×¢²áÖÐÐĶ©ÔÄ×Ô¼ºËùÐèµÄ·þÎñ¡£

4. ×¢²áÖÐÐÄ·µ»Ø·þÎñÌṩÕßµØÖ·ÁÐ±í¸øÏû·ÑÕߣ¬Èç¹ûÓбä¸ü£¬×¢²áÖÐÐĽ«»ùÓÚ³¤Á¬½ÓÍÆËͱä¸üÊý¾Ý¸øÏû·ÑÕß¡£

5. ·þÎñÏû·ÑÕߣ¬´ÓÌṩÕßµØÖ·ÁбíÖУ¬»ùÓÚÈí¸ºÔØ¾ùºâËã·¨£¬Ñ¡Ò»Ì¨ÌṩÕß½øÐе÷Óã¬Èç¹ûµ÷ÓÃʧ°Ü£¬ÔÙÑ¡Áíһ̨µ÷Óá£

6. ·þÎñÏû·ÑÕߺÍÌṩÕߣ¬ÔÚÄÚ´æÖÐÀۼƵ÷ÓôÎÊýºÍµ÷ÓÃʱ¼ä£¬¶¨Ê±Ã¿·ÖÖÓ·¢ËÍÒ»´Îͳ¼ÆÊý¾Ýµ½¼à¿ØÖÐÐÄ¡£

Dubbo×ÜÌå¼Ü¹¹

Dubbo¿ò¼ÜÉè¼Æ¹²»®·ÖÁË10²ã£¬×îÉÏÃæµÄService²ãÊÇÁô¸øÊµ¼ÊʹÓÃDubbo¿ª·¢·Ö²¼Ê½·þÎñµÄ¿ª·¢ÕßʵÏÖÒµÎñÂß¼­µÄ½Ó¿Ú²ã¡£Í¼ÖÐ×ó±ßµ­À¶±³¾°µÄΪ·þÎñÏû·Ñ·½Ê¹ÓõĽӿڣ¬Óұߵ­ÂÌÉ«±³¾°µÄΪ·þÎñÌṩ·½Ê¹ÓõĽӿڣ¬Î»ÓÚÖÐÖáÏßÉϵÄΪ˫·½¶¼Óõ½µÄ½Ó¿Ú¡£

¸÷²ã˵Ã÷£º

l Config ÅäÖò㣺¶ÔÍâÅäÖýӿڣ¬ÒÔ ServiceConfig, ReferenceConfig ΪÖÐÐÄ£¬¿ÉÒÔÖ±½Ó³õʼ»¯ÅäÖÃÀ࣬Ҳ¿ÉÒÔͨ¹ý spring ½âÎöÅäÖÃÉú³ÉÅäÖÃÀà¡£

l Proxy ·þÎñ´úÀí²ã£º·þÎñ½Ó¿Ú͸Ã÷´úÀí£¬Éú³É·þÎñµÄ¿Í»§¶Ë Stub ºÍ·þÎñÆ÷¶Ë Skeleton, ÒÔ ServiceProxy ΪÖÐÐÄ£¬À©Õ¹½Ó¿ÚΪ ProxyFactory¡£

l Registry ×¢²áÖÐÐIJ㣺·â×°·þÎñµØÖ·µÄ×¢²áÓë·¢ÏÖ£¬ÒÔ·þÎñ URL ΪÖÐÐÄ£¬À©Õ¹½Ó¿ÚΪ RegistryFactory, Registry, RegistryService¡£

l Cluster ·Óɲ㣺·â×°¶à¸öÌṩÕߵķÓɼ°¸ºÔؾùºâ£¬²¢ÇŽÓ×¢²áÖÐÐÄ£¬ÒÔ Invoker ΪÖÐÐÄ£¬À©Õ¹½Ó¿ÚΪ Cluster, Directory, Router, LoadBalance¡£

l Monitor ¼à¿Ø²ã£ºRPC µ÷ÓôÎÊýºÍµ÷ÓÃʱ¼ä¼à¿Ø£¬ÒÔ Statistics ΪÖÐÐÄ£¬À©Õ¹½Ó¿ÚΪ MonitorFactory, Monitor, MonitorService¡£

l Protocol Ô¶³Ìµ÷Óò㣺·â½« RPC µ÷Óã¬ÒÔ Invocation, Result ΪÖÐÐÄ£¬À©Õ¹½Ó¿ÚΪ Protocol, Invoker, Exporter¡£

l Exchange ÐÅÏ¢½»»»²ã£º·â×°ÇëÇóÏìӦģʽ£¬Í¬²½×ªÒì²½£¬ÒÔ Request, Response ΪÖÐÐÄ£¬À©Õ¹½Ó¿ÚΪ Exchanger, ExchangeChannel, ExchangeClient, ExchangeServer¡£

l Transport ÍøÂç´«Êä²ã£º³éÏó mina ºÍ netty Ϊͳһ½Ó¿Ú£¬ÒÔ Message ΪÖÐÐÄ£¬À©Õ¹½Ó¿ÚΪ Channel, Transporter, Client, Server, Codec¡£

l Serialize Êý¾ÝÐòÁл¯²ã£º¿É¸´ÓõÄһЩ¹¤¾ß£¬À©Õ¹½Ó¿ÚΪ Serialization, ObjectInput, ObjectOutput, ThreadPool¡£

Ä£¿é·Ö°ü

¸÷Ä£¿é˵Ã÷£º

l dubbo-common¹«¹²Âß¼­Ä£¿é£º°üÀ¨ Util ÀàºÍͨÓÃÄ£ÐÍ¡£

l dubbo-remotingÔ¶³ÌͨѶģ¿é£ºÏ൱ÓÚ Dubbo ЭÒéµÄʵÏÖ£¬Èç¹û RPC Óà RMIЭÒéÔò²»ÐèҪʹÓô˰ü¡£

l dubbo-rpcÔ¶³Ìµ÷ÓÃÄ£¿é£º³éÏó¸÷ÖÖЭÒ飬ÒÔ¼°¶¯Ì¬´úÀí£¬Ö»°üº¬Ò»¶ÔÒ»µÄµ÷Ó㬲»¹ØÐļ¯ÈºµÄ¹ÜÀí¡£

l dubbo-cluster¼¯ÈºÄ£¿é£º½«¶à¸ö·þÎñÌṩ·½Î±×°ÎªÒ»¸öÌṩ·½£¬°üÀ¨£º¸ºÔؾùºâ, ÈÝ´í£¬Â·Óɵȣ¬¼¯ÈºµÄµØÖ·Áбí¿ÉÒÔÊǾ²Ì¬ÅäÖõģ¬Ò²¿ÉÒÔÊÇÓÉ×¢²áÖÐÐÄÏ·¢¡£

l dubbo-registry×¢²áÖÐÐÄÄ£¿é£º»ùÓÚ×¢²áÖÐÐÄÏ·¢µØÖ·µÄ¼¯Èº·½Ê½£¬ÒÔ¼°¶Ô¸÷ÖÖ×¢²áÖÐÐĵijéÏó¡£

l dubbo-monitor¼à¿ØÄ£¿é£ºÍ³¼Æ·þÎñµ÷ÓôÎÊý£¬µ÷ÓÃʱ¼äµÄ£¬µ÷ÓÃÁ´¸ú×ٵķþÎñ¡£

l dubbo-configÅäÖÃÄ£¿é£ºÊÇ Dubbo ¶ÔÍâµÄ API£¬Óû§Í¨¹ý Config ʹÓÃD ubbo£¬Òþ²Ø Dubbo ËùÓÐϸ½Ú¡£

l dubbo-containerÈÝÆ÷Ä£¿é£ºÊÇÒ»¸ö Standlone µÄÈÝÆ÷£¬ÒÔ¼òµ¥µÄ Main ¼ÓÔØ Spring Æô¶¯£¬ÒòΪ·þÎñͨ³£²»ÐèÒª Tomcat/JBoss µÈ Web ÈÝÆ÷µÄÌØÐÔ£¬Ã»±ØÒªÓà Web ÈÝÆ÷È¥¼ÓÔØ·þÎñ¡£

ЭÒéÖ§³Ö

l DubboЭÒ飨ĬÈÏЭÒ飩

l HessianЭÒé

l HTTPЭÒé

l RMIЭÒé

l WebServiceЭÒé

l ThriftЭÒé

l MemcachedЭÒé

l RedisЭÒé

×¢²áÖÐÐÄ

£¨1£©Multicast×¢²áÖÐÐÄ£º

Multicast×¢²áÖÐÐIJ»ÐèÒªÆô¶¯ÈκÎÖÐÐĽڵ㣬ֻҪ¹ã²¥µØÖ·Ò»Ñù£¬¾Í¿ÉÒÔ»¥Ïà·¢ÏÖ¡£×é²¥ÊÜÍøÂç½á¹¹ÏÞÖÆ£¬Ö»ÊʺÏС¹æÄ£Ó¦Óûò¿ª·¢½×¶ÎʹÓá£×é²¥µØÖ·¶Î: 224.0.0.0 - 239.255.255.255¡£

£¨2£©Zookeeper×¢²áÖÐÐÄ£¨ÍƼö£©£º

ZookeeperÊÇApacahe×ÓÏîÄ¿£¬ÊÇÒ»¸öÊ÷Ð͵ÄĿ¼·þÎñ£¬Ö§³Ö±ä¸üÍÆËÍ£¬ÊʺÏ×÷ΪDubbo·þÎñµÄ×¢²áÖÐÐÄ£¬¿ÉÓÃÓÚÉú²ú»·¾³¡£

¶ÔÉÏͼÁ÷³Ì˵Ã÷ÈçÏ£º

1. ·þÎñÌṩÕߣ¨Provider£©Æô¶¯Ê±£¬Ïò/dubbo/com.foo.BarService/providersĿ¼ÏÂдÈëURL¡£

2. ·þÎñÏû·ÑÕߣ¨Consumer£©Æô¶¯Ê±£¬¶©ÔÄ/dubbo/com.foo.BarService/providersĿ¼ÏµÄURL£¬Ïò/dubbo/com.foo.BarService/consumersĿ¼ÏÂдÈë×Ô¼ºµÄURL¡£

3. ¼à¿ØÖÐÐÄ£¨Monitor£©Æô¶¯Ê±£¬¶©ÔÄ/dubbo/com.foo.BarServiceĿ¼ÏµÄËùÓÐÌṩÕߺÍÏû·ÑÕßURL¡£

£¨3£©Redis×¢²áÖÐÐÄ£º

°¢ÀïÄÚ²¿²¢Ã»ÓвÉÓÃRedis×öΪע²áÖÐÐÄ£¬¶øÊÇʹÓÃ×Ô¼ºÊµÏֵĻùÓÚÊý¾Ý¿âµÄ×¢²áÖÐÐÄ£¬¼´£ºRedis×¢²áÖÐÐIJ¢Ã»ÓÐÔÚ°¢ÀïÄÚ²¿³¤Ê±¼äÔËÐеĿɿ¿ÐÔ±£ÕÏ£¬´ËRedisÇŽÓʵÏÖֻΪ¿ªÔ´°æ±¾Ìṩ£¬Æä¿É¿¿ÐÔÒÀÀµÓÚRedis±¾ÉíµÄ¿É¿¿ÐÔ¡£

£¨4£©Simple×¢²áÖÐÐÄ£º

Simple×¢²áÖÐÐı¾Éí¾ÍÊÇÒ»¸öÆÕͨµÄDubbo·þÎñ£¬¿ÉÒÔ¼õÉÙµÚÈý·½ÒÀÀµ£¬Ê¹ÕûÌåͨѶ·½Ê½Ò»Ö¡£Ö»ÊǼòµ¥ÊµÏÖ£¬²»Ö§³Ö¼¯Èº£¬¿É×÷Ϊ×Ô¶¨Òå×¢²áÖÐÐĵIJο¼£¬µ«²»ÊʺÏÖ±½ÓÓÃÓÚÉú²ú»·¾³¡£

Ô¶³ÌͨÐÅÓëÐÅÏ¢½»»»

Ô¶³ÌͨÐÅÐèÒªÖ¸¶¨Í¨ÐÅË«·½ËùÔ¼¶¨µÄЭÒ飬ÔÚ±£Ö¤Í¨ÐÅË«·½Àí½âЭÒéÓïÒåµÄ»ù´¡ÉÏ£¬»¹Òª±£Ö¤¸ßЧ¡¢Îȶ¨µÄÏûÏ¢´«Êä¡£Dubbo¼Ì³ÐÁ˵±Ç°Ö÷Á÷µÄÍøÂçͨÐÅ¿ò¼Ü£¬Ö÷Òª°üÀ¨Èçϼ¸¸ö£º

l Mina

l Netty£¨Ä¬ÈÏ£©

l Grizzly

ֹͣά»¤

´Ó2012Äê10ÔÂ23ÈÕDubbo 2.5.3·¢²¼ºó£¬ÔÚDubbo¿ªÔ´½«ÂúÒ»ÖÜÄêÖ®¼Ê£¬°¢Àï»ù±¾Í£Ö¹Á˶ÔDubboµÄÖ÷ÒªÉý¼¶¡£Ö»ÔÚÖ®ºóµÄ2013ÄêºÍ2014Äê¸üйý2´Î¶ÔDubbo 2.4µÄά»¤°æ±¾£¬È»ºóÍ£Ö¹ÁËËùÓÐά»¤¹¤×÷¡£Dubbo¶ÔSrpingµÄÖ§³ÖҲͣÁôÔÚÁËSpring 2.5.6°æ±¾ÉÏ¡£

·ÖÖ§³öÏÖ

ÔÚ°¢Àïֹͣά»¤ºÍÉý¼¶DubboÆÚ¼ä£¬µ±µ±Íø¿ªÊ¼Î¬»¤×Ô¼ºµÄDubbo·ÖÖ§°æ±¾Dubbox£¬Ö§³ÖÁËа汾µÄSpring£¬²¢¶ÔÍ⿪ԴÁËDubbox¡£Í¬Ê±£¬ÍøÒ׿¼À­Ò²Î¬»¤ÁË×Ô¼ºµÄ¶ÀÁ¢·ÖÖ§Dubbok£¬¿Éϧ²¢Î´¶ÔÍ⿪Դ¡£

ÖØ»ñÐÂÉú

¾­¹ý¶àÄêÂþ³¤µÄµÈ´ý£¬Ëæ×Å΢·þÎñµÄ»ðÈÈÐËÆð£¬ÔÚ¹úÄÚÍ⿪·¢Õß¶Ô°¢Àï²»ÔÙÉý¼¶Î¬»¤DubboµÄͲÛÉùÖУ¬°¢ÀïÖÕÓÚ¿ªÊ¼ÖØÐ¶ÔDubboµÄÉý¼¶ºÍά»¤¹¤×÷¡£ÔÚ2017Äê9ÔÂ7ÈÕ£¬°¢Àï·¢²¼ÁËDubboµÄ2.5.4°æ±¾£¬¾àÀëÉÏÒ»¸ö°æ±¾2.5.3·¢²¼ÒѾ­½Ó½ü¿ì5Äêʱ¼äÁË¡£ÔÚËæºóµÄ¼¸¸öÔÂÖУ¬°¢ÀïDubbo¿ª·¢ÍŶÓÒԲ¶àÿÔÂÒ»°æ±¾µÄËÙ¶È¿ªÊ¼¿ìËÙÉý¼¶µü´ú£¬ÐÞ²¹ÁËDubboÀϰ汾¶àÄêÀ´´æÔÚµÄÖî¶àbug£¬²¢¶ÔSpringµÈ×é¼þµÄÖ§³Ö½øÐÐÁËÈ«ÃæÉý¼¶¡£

·ÖÖ§ºÏ²¢

ÔÚ2018Äê1ÔÂ8ÈÕ£¬Dubbo 2.6.0°æ±¾·¢²¼£¬Ð°汾½«Ö®Ç°µ±µ±Íø¿ªÔ´µÄDubbo·ÖÖ§Dubbox½øÐÐÁ˺ϲ¢£¬ÊµÏÖÁËDubbo°æ±¾µÄͳһÕûºÏ¡£

DubboÓëSpring Cloud

°¢Àï°Í°Í¸ºÔðÖ÷µ¼ÁËDubboÖØÆôά»¤µÄÑз¢¹¤³ÌʦÁõ¾üÔÚ½ÓÊܲɷÃʱ±íʾ£ºµ±Ç°ÓÉÓÚRPCЭÒé¡¢×¢²áÖÐÐÄÔªÊý¾Ý²»Æ¥ÅäµÈÎÊÌ⣬ÔÚÃæÁÙ΢·þÎñ»ù´¡¿ò¼ÜÑ¡ÐÍʱDubboÓëSpring CloudÊÇÖ»Äܶþѡһ£¬ÕâÒ²ÊÇΪʲô´ó¼Ò×ÜÊÇÄÃDubboºÍSpring Cloud×ö¶Ô±ÈµÄÔ­ÒòÖ®Ò»¡£DubboÖ®ºó»á»ý¼«Ñ°ÇóÊÊÅäµ½Spring CloudÉú̬£¬±ÈÈç×÷ΪSpring CloudµÄ¶þ½øÖÆÍ¨ÐÅ·½°¸À´·¢»ÓDubboµÄÐÔÄÜÓÅÊÆ£¬»òÕßDubboͨ¹ýÄ£¿é»¯ÒÔ¼°¶ÔhttpµÄÖ§³ÖÊÊÅäµ½Spring Cloud¡£

δÀ´Õ¹Íû

2018Äê1ÔÂ8ÈÕ£¬Dubbo´´Ê¼ÈËÖ®Ò»Áº·ÉÔÚDubbo½»Á÷ȺÀï͸¶ÁËDubbo 3.0ÕýÔÚ¶¯¹¤µÄÏûÏ¢¡£Dubbo 3.0ÄÚºËÓëDubbo 2.0ÍêÈ«²»Í¬£¬µ«¼æÈÝDubbo 2.0¡£Dubbo 3.0½«ÒÔStreamingΪÄںˣ¬²»ÔÙÊÇDubbo ʱ´úµÄRPC£¬µ«ÊÇRPC»áÔÚDubbo 3.0Öбä³ÉÔ¶³ÌStreaming¶Ô½ÓµÄÒ»ÖÖ¿ÉÑ¡ÐÎ̬¡£Dubbo 3.0½«Ö§³Ö¿ÉÑ¡Service Mesh£¬¶à¼ÓÒ»²ãIPC£¬ÕâÖ÷ÒªÊÇΪÁ˼æÈÝÀÏϵͳ£¬¶øÄÚ²¿Ôò»áÓÅÏȳ¢ÊÔÄÚǶģʽ¡£´úÀíģʽOps¿É¶ÀÁ¢Éý¼¶¿ò¼Ü£¬¼õÉÙÒµÎñÇÖÈ룬¶øÄÚǶģʽ¿ÉÒÔ´øÒµÎñ²âÊÔ¡¢²¿Êð½ÚµãÉÙ¡¢Îȶ¨ÐÔ¼ì²â·½±ã¡£Í¬Ê±£¬¿ÉÒÔ½« Dubbo 3.0 Æô¶¯Îª¶ÀÁ¢½ø³Ì£¬ÓÉdubbo-mesh½øÐÐIPC£¬Â·ÓÉ¡¢¸ºÔؾùºâºÍÈÛ¶Ï»úÖÆ½«ÓɶÀÁ¢½ø³Ì¿ØÖÆ¡£

×ܽá

´ÓDubboа汾µÄ·Ï߹滮ÉÏ¿ÉÒÔ¿´³ö£¬Ð°汾µÄDubboÔÚÔ­ÓзþÎñÖÎÀíµÄ¹¦ÄÜ»ù´¡ÉÏ£¬½«È«ÃæÓµ±§Î¢·þÎñºÍService Mesh¡£Í¬Ê±£¬¿¼Âǵ½ÔÚ°¢ÀïÔÆÒѾ­ÓÐÁËDubboµÄÉÌÒµ°æ±¾£¬ÔÚδÀ´Ò»¶Îʱ¼äÄÚ£¬DubboµÄ¸üÐÂÓëά»¤Ó¦¸Ã²»»áÔÙ³¤Ê±¼äÖжϡ£ÔÚÎÒÃǽøÐзþÎñÖÎÀíÒÔ¼°Î¢·þÎñ¼Ü¹¹Éè¼ÆÊ±£¬Ð°汾Dubbo¶ÔÎÒÃǹã´ó¿ª·¢ÕßÀ´Ëµ¶¼½«»áÊÇÒ»¸ö²»´íµÄÑ¡Ôñ¡£

Spring Cloud Ö®¡°³öÉíÃûÃÅÍû×塱

×÷Ϊµ±ÏÂ×î»ðÈȵÄ΢·þÎñ¿ò¼Ü£¬Spring CloudµÄÃû×Ö¿ÉÒÔ˵ÊÇÎÞÈ˲»Öª¡¢ÎÞÈ˲»Ïþ£¬Æ¾½è֮ǰSpring FrameworkµÄÁ¼ºÃȺÖÚ»ù´¡ºÍCloudÕâ¸ö¾ßÓÐʱ´ú¸ÐµÄÃû×Ö£¬Spring CloudÒ»³öÏֱ㱻´ó¼ÒÈÏÖª¡£

Ìáµ½Spring Cloud£¬±ã»áÈÃÈËÏëÆð¸Õ¸Õ·¢²¼ÁË2.0°æ±¾µÄSpring Boot¡£Spring BootºÍSpring Cloud¶¼Êdzö×ÔPivotal¹«Ë¾£¬Spring BootºÍSpring CloudËäÈ»»ðÈÈ£¬µ«ÊÇÁ˽âPivotal¹«Ë¾µÄÈËÔÚ¹úÄÚÈ´ÊDz»¶à¡£Êµ¼ÊÉÏPivotal¹«Ë¾ÔÚÔÆ¼ÆËã¡¢´óÊý¾Ý¡¢ÐéÄ⻯µÈÁìÓò¶¼ÓÐËù½¨Ê÷£¬ÕâÀïÏȸø´ó¼Ò¼òµ¥°ËØÔÏÂPivotalµÄÇé¿ö¡£

Pivotal¹«Ë¾ÊÇÓÉEMCºÍVMwareÁªºÏ³ÉÁ¢µÄÒ»¼Ò¹«Ë¾£¬GE£¨Í¨ÓÃµçÆø£©Ò²¶ÔPivotal½øÐÐÁ˹ÉȨÊÕ¹º£¬Í¬Ê±GEÒ²ÊÇPivotalµÄÒ»¸öÖØÒª´ó¿Í»§¡£³ýÁËSpring Framework¡¢Spring BootºÍSpring CloudÖ®Í⣬ÎÒÃÇÈÕ³£¿ª·¢Öо­³£Ê¹ÓõÄReids¡¢RabbitMQ¡¢Greenplum¡¢Gemfire¡¢Cloud FoundryµÈ£¬Ä¿Ç°¶¼ÊǹéÊôÓÚPivotal¹«Ë¾µÄ²úÆ·¡£ÆäÖÐGemfireÒ²ÊDZ»ÖйúÌú·×ܹ«Ë¾12306ʹÓõķֲ¼Ê½ÄÚ´æÊý¾Ý¿â£¬Ò²¾ÍÊÇ˵Äã¹ýÄê»Ø¼ÒÂò²»µ½»ð³µÆ±£¬Õâ¸ö¹øPivotalµÄGemfireÒ²»á¸ú×ÅÒ»Æð±³£¨¿ª¸öÐ¡ÍæÐ¦£¬¹þ¹þ£©¡£

Spring Cloud Ö®¡°ÈëÃÅ¡±

Spring Cloud×÷Ϊһ¸ö΢·þÎñµÄ¿ª·¢¿ò¼Ü£¬Æä°üÀ¨Á˺ܶàµÄ×é¼þ£¬°üÀ¨£ºSpring Cloud Netflix£¨Eureka¡¢Hystrix¡¢Zuul¡¢Archaius£©¡¢Spring Cloud Config¡¢Spring Cloud Bus¡¢Spring Cloud Cluster¡¢Spring Cloud Consul¡¢Spring Cloud Security¡¢Spring Cloud Sleuth¡¢Spring Cloud Data Flow¡¢Spring Cloud Stream¡¢Spring Cloud Task¡¢Spring Cloud Zookeeper¡¢Spring Cloud Connectors¡¢Spring Cloud Starters¡¢Spring Cloud CLIµÈ¡£

ÔÚÉÏÊö×é¼þÖУ¬Spring Cloud NetflixÊÇÒ»Ì×΢·þÎñµÄºËÐÄ¿ò¼Ü£¬ÓÉ»¥ÁªÍøÁ÷ýÌå²¥·ÅÉÌNetflix¿ªÔ´ºó²¢ÈëSpring Cloud´ó¼ÒÍ¥£¬ËüÌṩÁ˵Ä΢·þÎñ×î»ù´¡µÄ¹¦ÄÜ£º·þÎñ·¢ÏÖ£¨Service Discovery£©¡¢¶¯Ì¬Â·ÓÉ£¨Dynamic Routing£©¡¢¸ºÔؾùºâ£¨Load Balancing£©£¬ºÍ±ßÔµ·þÎñÆ÷£¨Edge Server£©µÈ¡£

Spring BootÊÇSpringµÄÒ»Ì׿ìËÙÅäÖýÅÊּܣ¬¿ÉÒÔ»ùÓÚSpring Boot¿ìËÙ¿ª·¢µ¥¸ö΢·þÎñ¡£Spring Boot¼ò»¯ÁË»ùÓÚSpringµÄÓ¦Óÿª·¢£¬Í¨¹ýÉÙÁ¿µÄ´úÂë¾ÍÄÜ´´½¨Ò»¸ö¶ÀÁ¢µÄ¡¢Éú²ú¼¶±ðµÄSpringÓ¦Óá£ÓÉÓÚSpring CloudÊÇ»ùÓÚSpring Boot½øÐеĿª·¢£¬Òò´ËʹÓÃSpring Cloud¾Í±ØÐëʹÓõ½Spring Boot¡£

ÏÂͼÊÇÒ»¸ö³£¼ûµÄ¹ØÓÚSpring CloudµÄ¼Ü¹¹Í¼¡£ÏÂÃæ´ËͼΪÀý£¬¶ÔSpring Cloud×î³£Óõö×é¼þ×öÒ»¸ö¼òµ¥µÄ½éÉÜ£º

l Eureka£º·þÎñ×¢²áÖÐÐÄ£¬Ò»¸ö»ùÓÚRESTµÄ·þÎñ£¬ÓÃÓÚ¶¨Î»·þÎñ£¬ÒÔʵÏÖ΢·þÎñ¼Ü¹¹ÖзþÎñ·¢Ïֺ͹ÊÕÏ×ªÒÆ¡£

l Hystrix£ºÈÛ¶ÏÆ÷£¬ÈÝ´í¹ÜÀí¹¤¾ß£¬Ö¼ÔÚͨ¹ýÈÛ¶Ï»úÖÆ¿ØÖÆ·þÎñºÍµÚÈý·½¿âµÄ½Úµã,´Ó¶ø¶ÔÑӳٺ͹ÊÕÏÌṩ¸üÇ¿´óµÄÈÝ´íÄÜÁ¦¡£

l Turbine£ºTurbineÊǾۺϷþÎñÆ÷·¢ËÍʼþÁ÷Êý¾ÝµÄÒ»¸ö¹¤¾ß£¬ÓÃÀ´¼à¿Ø¼¯ÈºÏÂHystrixµÄMetricsÇé¿ö¡£

l Zuul£ºAPIÍø¹Ø£¬ZuulÊÇÔÚ΢·þÎñÖÐÌṩ¶¯Ì¬Â·ÓÉ¡¢¼à¿Ø¡¢µ¯ÐÔ¡¢°²È«µÈ±ßÔµ·þÎñµÄ¿ò¼Ü¡£

l Ribbon£ºÌṩ΢·þÎñÖеĸºÔؾùºâ¹¦ÄÜ£¬ÓжàÖÖ¸ºÔؾùºâ²ßÂԿɹ©Ñ¡Ôñ£¬¿ÉÅäºÏ·þÎñ·¢ÏֺͶÏ·Æ÷ʹÓá£

l Feign£ºFeignÊÇÒ»ÖÖÉùÃ÷ʽ¡¢Ä£°å»¯µÄHTTP¿Í»§¶Ë¡£

l Spring Cloud Config£ºÅäÖùÜÀí¹¤¾ß°ü£¬ÈÃÄã¿ÉÒÔ°ÑÅäÖ÷ŵ½Ô¶³Ì·þÎñÆ÷£¬¼¯Öл¯¹ÜÀí¼¯ÈºÅäÖã¬Ä¿Ç°Ö§³Ö±¾µØ´æ´¢¡¢GitÒÔ¼°Subversion¡£

l Spring Cloud Security£º»ùÓÚSpring SecurityµÄ°²È«¹¤¾ß°ü£¬ÎªÎ¢·þÎñµÄÓ¦ÓóÌÐòÌí¼Ó°²È«¿ØÖÆ¡£

l Spring Cloud Sleuth£ºÈÕÖ¾ÊÕ¼¯¹¤¾ß°ü£¬·â×°ÁËDapperºÍlog-based×·×ÙÒÔ¼°ZipkinºÍHTrace²Ù×÷£¬ÎªSpringCloudÓ¦ÓÃʵÏÖÁËÒ»ÖÖ·Ö²¼Ê½×·×Ù½â¾ö·½°¸¡£

³ýÁËÉÏÃæ½éÉܵĻù´¡×é¼þÍ⣬³£¼ûµÄSpring Cloud×é¼þ»¹Óзdz£¶àÖÖ£¬Éæ¼°µ½ÁË΢·þÎñÒÔ¼°Ó¦Óÿª·¢µÄ·½·½ÃæÃ棺

l Spring Cloud Starters£ºSpring BootʽµÄÆô¶¯ÏîÄ¿£¬ÎªSpring CloudÌṩ¿ªÏä¼´ÓõÄÒÀÀµ¹ÜÀí¡£

l Archaius£ºÅäÖùÜÀíAPI£¬°üº¬Ò»ÏµÁÐÅäÖùÜÀíAPI£¬Ìṩ¶¯Ì¬ÀàÐÍ»¯ÊôÐÔ¡¢Ḭ̈߳²È«ÅäÖòÙ×÷¡¢ÂÖѯ¿ò¼Ü¡¢»Øµ÷»úÖÆµÈ¹¦ÄÜ¡£

l Consul£º·â×°ÁËConsul²Ù×÷£¬ConsulÊÇÒ»¸ö·þÎñ·¢ÏÖÓëÅäÖù¤¾ß£¬ÓëDockerÈÝÆ÷¿ÉÒÔÎ޷켯³É¡£

l Spring Cloud Stream£ºÊý¾ÝÁ÷²Ù×÷¿ª·¢°ü£¬·â×°ÁËÓëRedis,Rabbit¡¢KafkaµÈ·¢ËͽÓÊÕÏûÏ¢¡£

l Spring Cloud CLI£º»ùÓÚ Spring Boot CLI£¬¿ÉÒÔÈÃÄãÒÔÃüÁîÐз½Ê½¿ìËÙ½¨Á¢ÔÆ×é¼þ¡£

l Spring Cloud Task£ºÌá¹©ÔÆ¶Ë¼Æ»®ÈÎÎñ¹ÜÀí¡¢ÈÎÎñµ÷¶È¡£

l Spring Cloud Bus£ºÊ¼þ¡¢ÏûÏ¢×ÜÏߣ¬ÓÃÓÚÔÚ¼¯Èº£¨ÀýÈ磬ÅäÖñ仯ʼþ£©Öд«²¥×´Ì¬±ä»¯£¬¿ÉÓëSpring Cloud ConfigÁªºÏʵÏÖÈȲ¿Êð¡£

l Spring Cloud Data Flow£º´óÊý¾Ý²Ù×÷¹¤¾ß£¬×÷ΪSpring XDµÄÌæ´ú²úÆ·£¬ËüÊÇÒ»¸ö»ìºÏ¼ÆËãÄ£ÐÍ£¬½áºÏÁËÁ÷Êý¾ÝÓëÅúÁ¿Êý¾ÝµÄ´¦Àí·½Ê½¡£

l Spring Cloud Zookeeper£º²Ù×÷ZookeeperµÄ¹¤¾ß°ü£¬ÓÃÓÚʹÓÃzookeeper·½Ê½µÄ·þÎñ·¢ÏÖºÍÅäÖùÜÀí¡£

l Spring Cloud Connectors£º±ãÓÚÔÆ¶ËÓ¦ÓóÌÐòÔÚ¸÷ÖÖPaaSƽ̨Á¬½Óµ½ºó¶Ë£¬È磺Êý¾Ý¿âºÍÏûÏ¢´úÀí·þÎñ¡£

Spring Cloud Ö®¡°¾«Í¨¡±

Spring CloudËäÈ»¼¯³ÉÁËÖÚ¶à×é¼þ£¬¿ÉÒÔ¹¹½¨Ò»¸öÍêÕûµÄ΢·þÎñÓ¦Ó㬵«ÊÇÆäÖеĸ÷¸ö×é¼þÈ´²¢·ÇÍêÃÀÎÞȱ£¬ºÜ¶à×é¼þÔÚʵ¼ÊÓ¦ÓÃÖж¼´æÔÚÖî¶à²»×ãºÍȱÏÝ¡£Òò´Ë£¬ÐèÒªÎÒÃÇ¶ÔÆäÖеÄһЩ×é¼þ½øÐÐÌæ»»ºÍÐ޸쬷½Äܹ¹½¨Ò»¸öÇ¿´ó¡¢Áé»î¡¢½¡×³µÄ΢·þÎñ¼Ü¹¹Ó¦Óá£

l ÅäÖÃÖÐÐÄ£º

Spring Cloud Config¿ÉÒÔ˵ÊÇSpring Cloud¼Ò×åÖÐʵÏÖ×îLowµÄÒ»¸ö×é¼þ£¬Ö±½Ó²ÉÓÃÁ˱¾µØ´æ´¢/SVN/GitµÄ·½Ê½½øÐд洢¡£Í¬Ê±£¬Spring Cloud ConfigҲȱ·¦Ò»¸öÍêÕûµÄ¿ÉÊÓ»¯¹ÜÀí²éѯºǫ́£¬µ±´æÔڱȽϸ´ÔÓµÄȨÏÞ¹ÜÀíºÍ°æ±¾¹ÜÀíÐèÇóʱ£¬Spring Cloud Config»áÏԵ÷dz£Á¦²»´ÓÐÄ¡£Èç¹ûÐèÒªÔÚÅäÖÃÐ޸ĺó£¬ÄÜ×Ô¶¯½øÐÐÅäÖÃÐÅÏ¢ÍÆË͵ϰ£¬Ê¹ÓÃSpring Cloud ConfigÒ²ÎÞ·¨Âú×ãÒªÇó£¬ÐèÒª×ÔÐбàд´úÂë½øÐÐʵÏÖ¡£

Ŀǰ¿ªÔ´ÉçÇøÖУ¬ÒѾ­ÓÐÁ˺ܶàµÄ¿ªÔ´ÅäÖÃÖÐÐÄʵÏÖ·½°¸£¬Í¬Ê±ºÜ¶à¹«Ë¾Ò²×ÔÑÐÁË×Ô¼ºµÄÅäÖÃÖÐÐÄ·½°¸¡£°üÀ¨ÌÔ±¦µÄͳһÅäÖÃÖÐÐÄDiamond£¨ÒѾ­¶àÄêδ¸üУ©¡¢°Ù¶ÈµÄ·Ö²¼Ê½ÅäÖùÜÀíÆ½Ì¨Disconf¡¢Ð¯³ÌµÄ¿ªÔ´·Ö²¼Ê½ÅäÖÃÖÐÐÄApollo¡¢360µÄ·Ö²¼Ê½ÅäÖùÜÀí¹¤¾ßQConfµÈµÈ¡£Ä¿Ç°£¬±ÊÕß¹«Ë¾²ÉÓõÄÊÇ×Ô¼º¹«Ë¾×ÔÑеÄÅäÖÃÖÐÐÄ£¬Ã»ÓвÉÓÿªÔ´ÊµÏÖµÄÖ÷ÒªÔ­ÒòÊÇÒòΪÐèҪͬʱÊÊÅäSpring CloudºÍDubboµÈ¶àÖÖ³¡¾°µÄÓ¦Óá£

l×¢²áÖÐÐÄ

×÷ΪSpring CloudµÄ·þÎñ×¢²áÖÐÐÄ£¬´Ó·Ö²¼Ê½CAPÀíÂÛÀ´¿´£¬Eureka²ÉÓÃÊÇAPÐÍÉè¼Æ£¬Ç¿µ÷µÄÊÇ×¢²áÖÐÐĵĸ߿ÉÓÃÐÔ¡£ºÍDubbo³£ÓõķþÎñ×¢²áÖÐÐÄZookeeperÏà±È£¬ZookeeperÔòÊDzÉÓõÄCPÐÍÉè¼Æ£¬Ç¿µ÷µÄÊÇ×¢²áÖÐÐÄÊý¾ÝµÄÒ»ÖÂÐÔ¡£

EurekaµÄÉè¼ÆÈ·Êµ¼òµ¥Ò×Ó㬵«ÊÇĬÈÏûÓÐʵÏÖ¶Ô×¢²áÖÐÐÄÊý¾ÝµÄ³Ö¾Ã»¯¡£Í¬Ê±£¬ÔÚ¼«¶Ë³¡¾°Ï£¬Ò²»á³öÏÖ¶à¸öEureka×¢²áÖÐÐĽڵãÊý¾Ý²»Ò»Ö£¬ÉõÖÁ·þÎñ×¢²áÊý¾Ý¶ªÊ§µÄÇé¿ö¡£µ±È»£¬´Ó·Ö²¼Ê½CAPÀíÂÛÀ´¿´£¬ÀíÂÛÉÏÊÇû°ì·¨×öµ½Í¬Ê±¼æ¹ËCAPÈýµãµÄ¡£Ä¿Ç°Ò²ÓÐһЩ»¥ÁªÍø¹«Ë¾¶ÔEureka½øÐÐÁ˸ÄÔ죬֧³ÖÁËÊý¾ÝµÄ³Ö¾Ã»¯£¬µ«ÊÇÉв»ÄÜÍêÕûµÄÖ§³ÖCAPµÄÈ«²¿ÒªÇó¡£

lAPIÍø¹Ø

APIÍø¹Ø¿ÉÒÔ˵ÊÇ΢·þÎñÐèÇó×î¶à£¬Ò²ÊÇ×îÓÐÄѵãµÄÒ»¸ö×é¼þ¡£Spring CloudÖм¯³ÉµÄZuulÓ¦¸Ã˵¸ü¶àµÄÊÇʵÏÖÁË·þÎñµÄ·Óɹ¦ÄÜ£¬¶ÔÓÚ¸ºÔؾùºâµÈÆäËû¹¦ÄÜ£¬ÐèÒª½áºÏRibbonµÈ×é¼þÀ´ÊµÏÖ¡£¶ÔÓںܶà¸öÐÔ»¯µÄÐèÇó£¬ÐèÒª¿ª·¢Õß×Ô¼ºÀ´½øÐбàÂëʵÏÖ¡£

ºÍ´ó²¿·Ö»ùÓÚJavaµÄWebÓ¦ÓÃÀàËÆ£¬ZuulÒ²²ÉÓÃÁËServlet¼Ü¹¹£¬Òò´ËZuul´¦Àíÿ¸öÇëÇóµÄ·½Ê½ÊÇÕë¶Ôÿ¸öÇëÇóÊÇÓÃÒ»¸öÏß³ÌÀ´´¦Àí¡£Í¬Ê±£¬ÓÉÓÚZuulÊÇ»ùÓÚJVMµÄʵÏÖ£¬Òò´ËÐÔÄÜÒ²»áÔڸ߲¢·¢·ÃÎʳ¡¾°Ï³ÉΪƿ¾±¡£ËäÈ»ÍøÉÏһЩÎÄÕÂÆÀ²âZuulºÍNginxÐÔÄܽӽü£¬µ«ÊÇÔÚÐÔÄÜÒªÇó½Ï¸ßµÄ³¡¾°Ï£¬JVMµÄÄÚ´æ¹ÜÀíºÍÀ¬»ø»ØÊÕÎÊÌ⣬ÈÔÈ»ÊÇÒ»¸öºÜ´óµÄÎÊÌâ¡£ËùÒÔÔÚʵ¼ÊµÄÓ¦Óó¡¾°ÖУ¬Í¨³£»á²ÉÓÃÔÚ¶à¸öZuul¼¸µãÇ°ÃæÔÙÌí¼ÓÒ»²ãNginx»òÕßOpenRestyÀ´½øÐдúÀí¡£

ΪÁ˽â¾öZuulµÄÐÔÄÜÎÊÌ⣬Netflix½«×Ô¼ºµÄÍø¹Ø·þÎñZuul½øÐÐÁËÉý¼¶£¬ÐµÄZuul 2½«HTTPÇëÇóµÄ´¦Àí·½Ê½´Óͬ²½±ä³ÉÁËÒì²½£¬²¢ÇÒÐÂÔöÖîÈçHTTP/2¡¢websocketµÈ¹¦ÄÜ¡£µ«ÊÇÒź¶µÄÊÇ£¬¿ªÔ´°æ±¾µÄZuul 2Ò»Ö±´¦ÓÚÄѲú״̬ÖУ¬Ê¼ÖÕûÓкʹó¼ÒÕýʽ¼ûÃæ¡£

lÈÛ¶ÏÆ÷

΢·þÎñÖжÔÓÚ·þÎñµÄÏÞÁ÷¡¢½µ¼¶¡¢È۶ϵÄÐèÇóÊǶàÖÖ¶àÑùµÄ£¬ÐèÒªÔÚAPIÍø¹ØºÍ¸÷¸ö¾ßÌå·þÎñ½Ó¿ÚÖзֱð½øÐпØÖÆ£¬²ÅÄÜÂú×㸴ÔÓ³¡¾°ÏÂ΢·þÎñ¼Ü¹¹µÄÓ¦ÓÃÐèÇó¡£

µ¥¶ÀʹÓÃSpring CloudÖеÄHystrixÎÞ·¨ÍêÕûµÄÂú×ãÉÏÊöµÄ¸´ÔÓÐèÇó£¬ÐèÒª½áºÏAPIÍø¹Ø£¬²¢Í¨¹ýKubernetes¶Ô×ÊÔ´¡¢½ø³ÌºÍÃüÃû¿Õ¼äÀ´Ìṩ¸ôÀ룬²¢Í¨¹ý²¿·Ö×Ô¶¨Òå±àÂë·½ÄÜʵÏÖ¶ÔÈ«²¿·þÎñµÄÏÞÁ÷¡¢½µ¼¶¡¢È۶ϵÈÐèÇó¡£

l¼à¿ØÏµÍ³

ÎÞÂÛÊÇSpring CloudÖм¯³ÉµÄSpring Cloud Sleuth£¬»¹ÊǼ¯³É¾­µäµÄELK£¬¶¼Ö»ÊǶÔÈÕÖ¾¼¶±ðµÄ×·×ÙºÍ¼à¿Ø¡£ÔÚ´óÖÐÐÍ΢·þÎñÓ¦Óüܹ¹ÖУ¬ÓÈÆäÊÇ»ùÓÚJVMµÄÏîÄ¿£¬»¹ÐèÒªÌí¼ÓAPMµÄ¼à¿Ø»úÖÆ£¬²ÅÄܱ£Ö¤¼°Ê±·¢ÏÖ¸÷ÖÖDZÔÚµÄÐÔÄÜÎÊÌâ¡£

APMÕûÌåÉÏÖ÷ÒªÍê³É3µã¹¦ÄÜ£º1.ÈÕÖ¾×·×Ù¡¢2.¼à¿Ø±¨¾¯¡¢3.ÐÔÄÜͳ¼Æ¡£Ä¿Ç°£¬¹úÄÚÍâÉÌÒµ°æ±¾µÄAPM·½°¸ÒѾ­Óкܶ࣬¿ªÔ´°æ±¾µÄAPM·½°¸Ò²¿ªÊ¼·á¸»ÆðÀ´¡£¹úÄÚ¿ªÔ´µÄAPM·½°¸Ö÷ÒªÓУº´óÖÚµãÆÀµÄCATºÍApache·õ»¯ÖеÄSkyWalking¡£ÕâÀï¸ø´ó¼ÒÖØµãÍÆ¼öÏÂSkyWalking£¬SkyWalkingÊÇÕë¶Ô·Ö²¼Ê½ÏµÍ³µÄÓ¦ÓÃÐÔÄÜ¼à¿ØÏµÍ³£¬ÌرðÕë¶Ô΢·þÎñ¡¢Cloud NativeºÍÈÝÆ÷»¯(Docker, Kubernetes, Mesos)¼Ü¹¹£¬ÏîÄ¿µÄ¹Ø×¢¶ÈºÍ·¢Õ¹Ëٶȶ¼ºÜ¿ì£¬ÖÐÎÄÎĵµ×ÊÁÏÒ²±È½ÏÆëÈ«¡£

Spring Cloud Ö®¡°·ÅÆú¡±

Spring Cloud¿ÉÒÔ˵ÊÇÒ»¸öÍêÃÀµÄ΢·þÎñÈëÃÅ¿ò¼Ü£¬Èç¹ûÄãÊÇÔÚÒ»¸öÖÐСÐÍÏîÄ¿ÖÐÓ¦ÓÃSpring Cloud£¬ÄÇôÄã²»ÐèҪ̫¶àµÄ¸ÄÔìºÍÊÊÅ䣬¾Í¿ÉÒÔʵÏÖ΢·þÎñµÄ»ù±¾¹¦ÄÜ¡£µ«ÊÇÈç¹ûÊÇÔÚ´óÐÍÏîÄ¿ÖÐʵ¼ù΢·þÎñ£¬¿ÉÄܻᷢÏÖÐèÒª´¦ÀíµÄÎÊÌ⻹ÊDZȽ϶࣬ÓÈÆäÊÇÏîÄ¿ÖÐÀÏ´úÂë±È½Ï¶à£¬Ã»°ì·¨È«²¿Ö±½ÓÉý¼¶µ½Spring Boot¿ò¼ÜÏ¿ª·¢µÄ»°£¬Äã»á·Ç³£Ï£ÍûÄÜÓÐÒ»¸öÇÖÈëÐÔ¸üµÍµÄ·½°¸À´ÊµÊ©Î¢·þÎñ¼Ü¹¹¡£ÔÚÕâÖÖ³¡¾°Ï£¬Service Mesh½«»á³ÉΪÄãµÄ×î¼ÑÑ¡Ôñ£¬¾­¹ýÒ»¶Îʱ¼äµÄ·¢Õ¹£¬Ä¿Ç°Service MeshÕâ¸ö¸ÅÄîÒѾ­¿ªÊ¼Öð²½±»´ó¼ÒÁ˽âºÍÈÏÖª¡£Í¬Ê±£¬Ò»Ð©Service MeshµÄʵÏÖ·½°¸Ò²Öð²½³ÉÊìºÍÂ䵨£¬ÀýÈçIstio¡¢Linkerd¡¢EnvoyµÈ¡£ÔÚ±¾ÏµÁÐÎÄÕµÄÏÂһƪÖУ¬½«Îª´ó¼Ò¶ÔService Mesh¸ÅÄî×öÒ»¸öϵͳµÄ½éÉÜ¡£µ«ÊÇÔÚÁ˽âService Mesh¸ÅÄî֮ǰ£¬»¹Êǽ¨Òé´ó¼ÒÏȶÔ΢·þÎñºÍSpring CloudÕâЩ¸ÅÄîºÍ¿ò¼ÜÓÐÒ»¸öÉîÈëµÄÁ˽⣬ÕâÑù²ÅÄÜÌå»áµ½Ó¦ÓÃService MeshµÄ¼ÛÖµºÍÒâÒå¡£

Spring Cloud ÓëDubbo

ÍøÉϹØÓÚSpring CloudºÍDubbo¶Ô±ÈµÄÎÄÕºܶ࣬´ó¶àÊý¶Ô±È½á¹û¶¼ÊÇSpring Cloudѹµ¹ÐÔÓÅÊÆÕ½Ê¤Dubbo£¬Ï±íÊǶÔDubboºÍSpring Cloud×öµÄÒ»¸ö»ù´¡¹¦ÄܵĶԱȣº

ʵ¼ÊÉÏ£¬DubboµÄ¹Ø×¢µãÔÚÓÚ·þÎñÖÎÀí£¬²¢²»ÄÜËãÊÇÒ»¸öÕæÕýµÄ΢·þÎñ¿ò¼Ü¡£°üÀ¨Ä¿Ç°ÔÚ¿ª·¢ÖеÄDubbo 3.0£¬Ò²²»ÄÜÍêÕû¸²¸Ç΢·þÎñµÄ¸÷ÏÄÜÐèÇó¡£¶øSpring CloudÒ»·½ÃæÊÇÕë¶Ô΢·þÎñ¶øÉè¼Æ£¬ÁíÍâÒ»·½ÃæSpring CloudÊÇͨ¹ý¼¯³É¸÷ÖÖ×é¼þµÄ·½Ê½À´ÊµÏÖ΢·þÎñ£¬Òò´ËÀíÂÛÉÏ¿ÉÒÔ¼¯³ÉĿǰҵÄڵľø´ó¶àÊýµÄ΢·þÎñÏà¹Ø×é¼þ£¬´Ó¶øÊµÏÖ΢·þÎñµÄÈ«²¿¹¦ÄÜ¡£

¶ø¶ÔDubbo¶øÑÔ£¬Èç¹ûÒ»¶¨ÒªÓ¦Óõ½Î¢·þÎñµÄʹÓó¡¾°Öеϰ£¬ÉϱíÖÐǷȱµÄ´ó¶àÊý¹¦Äܶ¼¿ÉÒÔͨ¹ý¼¯³ÉµÚÈý·½Ó¦ÓúÍ×é¼þµÄ·½Ê½À´ÊµÏÖ£¬¸úSpring CloudÏà±ÈÖ÷ÒªµÄȱÏÝÔÚÓÚ¼¯³É¹ý³ÌÖеıãÀûÐԺͼæÈÝÐÔµÈÎÊÌâ¡£

Spring Cloud ÓëDocker

ËäÈ»ÍøÉÏÒ²ÓкܶàÎÄÕÂдµ½ÈçºÎʹÓÃDockerÀ´ÊµÏÖ΢·þÎñ£¬µ«ÊÇÊÂʵÉϵ¥¶ÀʹÓÃDockerÊÇû°ì·¨ÍêÕûµÄʵÏÖ΢·þÎñµÄËùÓй¦Äܵġ£ÔÚʵ¼ÊÉÏ΢·þÎñ¼Ü¹¹ÖУ¬Spring CloudºÍDocker¸ü¶àµÄÊÇÒ»ÖÖЭ×÷µÄ¹ØÏµ£¬¶ø²»ÊÇÒ»ÖÖ¾ºÕùµÄ¹ØÏµ¡£Í¨¹ýDockerÈÝÆ÷»¯¼¼Êõ£¬¿ÉÒÔ¸üºÃµÄ½â¾öÒýÈëSpring Cloud΢·þÎñºó´øÀ´µÄ²¿ÊðºÍÔËάµÄ¸´ÔÓÐÔ¡£

Spring CloudÉú̬ȦÖеÄPivotal Cloud Foundry?(PCF)×÷Ϊ PAAS ʵÏÖ£¬Ò²ÌṩһЩÀàËÆÓÚDockerµÄ¹¦ÄÜÖ§³Ö£¬µ«ÊÇÎÞÂÛÉϹ¦ÄÜÉÏ»¹ÊÇÒ×ÓÃÐÔÉϺÍDocker»¹ÊÇ´æÔڱȽϴóµÄ²îÒì¡£Pivotal Cloud FoundryºÍDockerÖ®¼äµÄ¹ØÏµ¸ü¶àµÄÊÇÒ»ÖÖ¼æÈݹØÏµ£¬¶ø²»ÊǾºÕù¹ØÏµ£¬Pivotal Cloud FoundryµÄÖ÷Òª¾ºÕù¶ÔÊÖÊÇRed HatµÄOpenShift¡£Ä¿Ç°£¬Pivotal Cloud FoundryÖ§³ÖµÄIAAS°üÀ¨£ºAWS¡¢AZURE¡¢GCP¡¢vSphere¡¢OpenStackµÈ¡£

Spring Cloud ÓëKubernetes

ÍøÉÏÒ²ÓÐһЩ¡°Spring CloudÓëKubernetesÄĸö¸üºÃ¡±£¬¡°µ±ÒѾ­ÓÐÁËKubernetesÖ®ºó£¬»¹ÐèҪʹÓÃSpring Cloudô¡±Ö®ÀàµÄÎÄÕ¡£Ê×ÏÈ˵±ÊÕß²¢²»ÈÏΪSpring CloudÓëKubernetesÊǾºÕù¹ØÏµ£¬µ«ÊÇÒ²²»·ñÈ϶þÕßȷʵÔÚÖî¶à¹¦ÄÜÉÏ´æÔÚÒ»Ð©ÖØºÏ¡£ÏÂͼÊǶÔSpring CloudÓëKubernetesÔÚ΢·þÎñ¼Ü¹¹ÖеÄһЩ»ù´¡¹¦ÄÜÉϵĶԱȡ£

ͨ¹ý¶Ô±È¿ÉÒÔ¿´³ö£¬Spring CloudºÍKubernetesȷʵ´æÔÚһЩ¹¦ÄÜÉϵÄÖØºÏ£¬µ«ÊǶþÕߵĶ¨Î»Æäʵ²î±ðºÜ´ó¡£Spring CloudÊÇÒ»¸ö»ùÓÚJavaÓïÑÔµÄ΢·þÎñ¿ª·¢¿ò¼Ü£¬¶øKubernetesÊÇÒ»¸öÕë¶ÔÈÝÆ÷Ó¦ÓõÄ×Ô¶¯»¯²¿Êð¡¢ÉìËõºÍ¹ÜÀíµÄ¿ªÔ´ÏµÍ³£¬Ëü¼æÈݶàÖÖÓïÑÔÇÒÌṩÁË´´½¨¡¢ÔËÐС¢ÉìËõÒÔ¼°¹ÜÀí·Ö²¼Ê½ÏµÍ³µÄÔ­Óï¡£Spring Cloud¸ü¶àµÄÊÇÃæÏòÓÐSpring¿ª·¢¾­ÑéµÄJavaÓïÑÔ¿ª·¢Õߣ¬¶øKubernetes²»ÊÇÒ»¸öÕë¶Ô¿ª·¢Õߵį½Ì¨£¬ËüµÄÄ¿µÄÊǹ©ÓÐDevOps˼ÏëµÄITÈËԱʹÓá£

ΪÁËÇø·ÖSpring CloudºÍKubernetesÁ½¸öÏîÄ¿µÄ·¶Î§£¬ÏÂÃæÕâÕÅͼÁгöÁ˼¸ºõÊǶ˵½¶ËµÄ΢·þÎñ¼Ü¹¹ÐèÇ󣬴Ó×îµ×²ãµÄÓ²¼þ£¬µ½×îÉϲãµÄDevOpsºÍ×Ô·þÎñ¾­Ñ飬²¢ÇÒÁгöÁËÈçºÎ¹ØÁªµ½Spring CloudºÍKubernetesƽ̨¡£

×ܽá

ͨ¹ýSpring Cloud¡¢DockerºÍKubernetesµÄ×éºÏ£¬¿ÉÒÔ¹¹½¨¸ü¼ÓÍêÕûºÍÇ¿´óµÄ΢·þÎñ¼Ü¹¹³ÌÐò¡£Í¨¹ýÈýÕßµÄÕûºÏ£¬Ê¹ÓÃSpring BootÌṩӦÓõĴò°ü£¬DockerºÍKubernetesÌṩӦÓõIJ¿ÊðºÍµ÷¶È¡£Spring Cloudͨ¹ýHystrixÏ̳߳ØÌṩӦÓÃÄڵĸôÀ룬¶øKubernetesͨ¹ý×ÊÔ´¡¢½ø³ÌºÍÃüÃû¿Õ¼äÀ´Ìṩ¸ôÀë¡£Spring CloudΪÿ¸ö΢·þÎñÌṩ½¡¿µÖÕ¶Ë£¬¶øKubernetesÖ´Ðн¡¿µ¼ì²é£¬ÇÒ°ÑÁ÷Á¿µ¼µ½½¡¿µ·þÎñ¡£Spring CloudÍⲿ»¯ÅäÖò¢¸üÐÂËüÃÇ£¬¶øKubernetes·Ö·¢ÅäÖõ½Ã¿¸ö΢·þÎñ¡£

¶ÔÓÚÒ»Ãû¿ª·¢ÈËÔ±»òÕ߼ܹ¹Ê¦À´Ëµ£¬ÏëÒª¾«Í¨Î¢·þÎñÉè¼ÆÓ뿪·¢£¬Äܹ»ÔÚ´óÖÐÐÍÏîÄ¿ÖÐÓ¦ÓÃ΢·þÎñ¼Ü¹¹£¬µ¥´¿ÕÆÎÕSpring CloudÊÇÔ¶Ô¶²»¹»µÄ£¬DockerºÍKubernetesµÈ¶¼ÊÇÐèҪѧϰºÍÕÆÎÕµÄÄÚÈÝ¡£Í¬Ê±£¬ÓÉÓÚ²ÉÓÃ΢·þÎñ¼Ü¹¹ºó´øÀ´ÁË·Ö²¼Ê½µÄÏà¹ØÎÊÌ⣬¶ÔÓÚ·Ö²¼Ê½ÏµÍ³ÀíÂÛÒ²±ØÐëÓÐÒ»¶¨µÄÁ˽⡣µ±È»£¬×îÖØÒªµÄ»¹ÊǶÔϵͳҵÎñµÄÉîÈëÀí½â£¬¶ÔÕûÌåÒµÎñ½øÐкÏÀíµÄ¹æ»®ºÍ²ð·Ö£¬²ÅÄÜÕæÕýÐÐÖ®ÓÐЧµÄÓ¦ÓÃ΢·þÎñ¼Ü¹¹£¬¹¹½¨¸ßЧ¡¢½¡×³¡¢Áé»î¡¢¿ÉÀ©Õ¹µÄ΢·þÎñÓ¦Óá£

΢·þÎñ1.0ʱ´ú

Dubbo±¾ÖÊÉÏÖ»ÄÜËãÊÇÒ»¸ö·þÎñÖÎÀí¿ò¼Ü£¬¶ø²»ÄÜËãÊÇÒ»¸ö΢·þÎñ¿ò¼Ü¡£ËäÈ»ÔÚδÀ´µÄDubbo 3.0ÖлáÌṩ¶ÔSpring Cloud£¬ÒÔ¼°¶ÔService MeshµÄÖ§³Ö£¬µ«Êǵ¥Æ¾DubboÈÔÈ»ÊÇÎÞ·¨´î½¨Ò»¸öÍêÕûµÄ΢·þÎñÌåϵ½á¹¹¡£

Spring CloudÔòÊÇͨ¹ý¼¯³ÉÖÚ¶àµÄ×é¼þµÄÐÎʽʵÏÖÁËÏà¶ÔÍêÕûµÄ΢·þÎñ¼¼ÊõÕ»£¬µ«ÊÇSpring CloudµÄʵÏÖ·½Ê½´úÂëÇÖÈëÐÔ½ÏÇ¿£¬¶øÇÒÖ»Ö§³ÖJavaÓïÑÔ£¬ÎÞ·¨Ö§³ÖÆäËûÓïÑÔ¿ª·¢µÄϵͳ¡£Spring CloudÈ«¼ÒͰ°üÀ¨µÄÄÚÈݽ϶࣬ѧϰ³É±¾Ò²Ïà¶Ô½Ï¸ß£¬¶ÔÀÏϵͳ¶øÑÔ£¬¿ò¼ÜÉý¼¶»òÕßÌæ»»µÄ³É±¾½Ï¸ß£¬µ¼ÖÂһЩ¿ª·¢ÍŶӲ»Ô¸Òâµ£¸º¼¼ÊõºÍʱ¼äÉϵķçÏÕÓë³É±¾£¬Ê¹µÃ΢·þÎñ·½°¸ÔÚÂäµØÊ±Óöµ½ÁËÖî¶àµÄÀ§ÄÑ¡£

×ܽáһϣ¬Î¢·þÎñ1.0ʱ´úµÄÖ÷ÒªÎÊÌâÖ÷Òª°üÀ¨ÈçÏÂÈý·½Ã棺

¼¼ÊõÃż÷¸ß£º¿ª·¢ÍŶÓÔÚʵʩ΢·þÎñµÄ¹ý³ÌÖУ¬³ýÁË»ù´¡µÄ·þÎñ·¢ÏÖ¡¢ÅäÖÃÖÐÐĺͼøÈ¨¹ÜÀíÖ®Í⣬ÍŶÓÔÚ·þÎñÖÎÀí²ã̾̾ÁÙÁËÖî¶àµÄÌôÕ½£¬°üÀ¨¸ºÔؾùºâ¡¢È۶Ͻµ¼¶¡¢»Ò¶È·¢²¼¡¢¹ÊÕÏÇл»¡¢·Ö²¼Ê½¸ú×ٵȣ¬Õâ¶Ô¿ª·¢ÍŶÓÌá³öÁ˷dz£¸ßµÄ¼¼ÊõÒªÇó¡£

¶àÓïÑÔÖ§³Ö²»×㣺¶ÔÓÚ»¥ÁªÍø¹«Ë¾£¬ÓÈÆäÊÇ¿ìËÙ·¢Õ¹µÄ»¥ÁªÍø´´Òµ¹«Ë¾£¬¶àÓïÑԵļ¼ÊõÕ»¡¢¿çÓïÑԵķþÎñµ÷ÓÃÒ²Êdz£Ì¬£¬µ«Ä¿Ç°¿ªÔ´ÉçÇøÉϲ¢Ã»ÓÐÒ»Ì×ͳһµÄ¡¢¿çÓïÑÔµÄ΢·þÎñ¼¼ÊõÕ»£¬¶ø¿çÓïÑÔµ÷ÓÃǡǡÊÇ΢·þÎñ¸ÅÄîµ®ÉúÖ®³õµÄҪʵÏÖµÄÒ»¸öÖØÒªÌØÐÔÖ®Ò»¡£

´úÂëÇÖÈëÐÔÇ¿£ºSpring Cloud¡¢DubboµÈÖ÷Á÷µÄ΢·þÎñ¿ò¼Ü¶¼¶ÔÒµÎñ´úÂëÓÐÒ»¶¨µÄÇÖÈëÐÔ£¬¼¼ÊõÉý¼¶Ìæ»»³É±¾¸ß£¬µ¼Ö¿ª·¢ÍŶÓÅäºÏÒâÔ¸µÍ£¬Î¢·þÎñÂ䵨À§ÄÑ¡£

΢·þÎñ2.0ʱ´ú

ΪÁ˽â¾ö΢·þÎñ1.0ʱ´úµÄÖî¶àÎÊÌ⣬Service Mesh¸ÅÄʼ×ßÈëÁË¿ª·¢ÕßµÄÊÓÏßÖС£

ÔÚ½éÉÜService Mesh¸ÅÄî֮ǰ£¬ÎÒÃÇÏÈÀ´Á˽âÒ»ÏÂSidecar¡£SidecarÊÇÒÔµÚÒ»´ÎÊÀ½ç´óսʱ»îÔ¾ÔÚÕ½³¡ÉϵľüÓñ߶·³µÃüÃû£¨Ò²ÊÇÎÒÃÇÔÚ¿¹ÈÕÉñ¾çÖÐ×î³£¼ûµÄµÀ¾ßÖ®Ò»£©¡£SidecarÊÇService MeshÖеÄÖØÒª×é³É²¿·Ö£¬SidecarÔÚÈí¼þϵͳ¼Ü¹¹ÖÐÌØÖ¸±ß¶·³µÄ£Ê½£¬Õâ¸öģʽµÄ¾«ËèÔÚÓÚʵÏÖÁËÊý¾ÝÃæ£¨ÒµÎñÂß¼­£©ºÍ¿ØÖÆÃæµÄ½âñî¡£

ÔÚService Mesh¼Ü¹¹ÖУ¬¸øÃ¿Ò»¸ö΢·þÎñʵÀý²¿ÊðÒ»¸öSidecar Proxy¡£¸ÃSidecar Proxy¸ºÔð½Ó¹Ü¶ÔÓ¦·þÎñµÄÈëÁ÷Á¿ºÍ³öÁ÷Á¿£¬²¢½«Î¢·þÎñ¼Ü¹¹ÖеķþÎñ¶©ÔÄ¡¢·þÎñ·¢ÏÖ¡¢ÈÛ¶Ï¡¢ÏÞÁ÷¡¢½µ¼¶¡¢·Ö²¼Ê½¸ú×ٵȹ¦ÄÜ´Ó·þÎñÖгéÀëµ½¸ÃProxyÖС£

SidecarÒÔÒ»¸ö¶ÀÁ¢µÄ½ø³ÌÆô¶¯£¬¿ÉÒÔÿ̨ËÞÖ÷»ú¹²ÓÃͬһ¸öSidecar½ø³Ì£¬Ò²¿ÉÒÔÿ¸öÓ¦ÓöÀÕ¼Ò»¸öSidecar½ø³Ì¡£ËùÓеķþÎñÖÎÀí¹¦ÄÜ£¬¶¼ÓÉSidecar½Ó¹Ü£¬Ó¦ÓõĶÔÍâ·ÃÎʽöÐèÒª·ÃÎÊSidecar¼´¿É¡£µ±¸ÃSidecarÔÚ΢·þÎñÖдóÁ¿²¿Êðʱ£¬ÕâЩSidecar½Úµã×ÔÈ»¾ÍÐγÉÁËÒ»¸ö·þÎñÍø¸ñ¡£

΢·þÎñµÄ¸ÅÄîÔÚ2014Äê3ÔÂÓÉMartin FowlerÊ×´ÎÌá³ö£¬¶øService MeshµÄ¸ÅÄîÔòÊÇÔÚ2016Äê×óÓÒÌá³ö£¬Service MeshÖÁ½ñÒ²¾­ÀúÁ˵ڶþ´úµÄ·¢Õ¹¡£

µÚÒ»´úService MeshµÄ´ú±íΪLinkerdºÍEnvoy¡£Linkerd»ùÓÚTwitterµÄFingle£¬Ê¹ÓÃScala±àд£¬ÊÇÒµ½çµÚÒ»¸ö¿ªÔ´µÄService Mesh·½°¸£¬ÔÚ³¤ÆÚµÄʵ¼ÊÉú²ú»·¾³ÖлñµÃÑéÖ¤¡£Envoyµ×²ã»ùÓÚC++£¬ÐÔÄÜÉÏÓÅÓÚʹÓÃScalaµÄLinkrd¡£Í¬Ê±£¬EnvoyÉçÇø³ÉÊì¶È½Ï¸ß£¬ÉÌÓÃÎȶ¨°æ±¾ÃæÊÀʱ¼äÒ²½Ï³¤¡£ÕâÁ½¸ö¿ªÔ´ÊµÏÖ¶¼ÊÇÒÔSidecarΪºËÐÄ£¬¾ø´ó²¿·Ö¹Ø×¢µã¶¼ÊÇÈçºÎ×öºÃProxy£¬²¢Íê³ÉһЩͨÓÿØÖÆÃæµÄ¹¦ÄÜ¡£µ«Êǵ±ÄãÔÚÈÝÆ÷ÖдóÁ¿²¿ÊðSidecarÒÔºó£¬ÈçºÎ¹ÜÀíºÍ¿ØÖÆÕâЩSidecar±¾Éí¾ÍÊÇÒ»¸ö²»Ð¡µÄÌôÕ½¡£

µÚ¶þ´úService MeshÖ÷Òª¸Ä½ø¼¯ÖÐÔÚ¸ü¼ÓÇ¿´óµÄ¿ØÖÆÃ湦ÄÜ£¨ÓëÖ®¶ÔÓ¦µÄSidecar Proxy±»³ÆÖ®ÎªÊý¾ÝÃæ£©£¬µäÐÍ´ú±íÓÐIstioºÍConduit¡£IstioÊÇGoogle¡¢IBMºÍLyftºÏ×÷µÄ¿ªÔ´ÏîÄ¿£¬ÊÇĿǰ×îÖ÷Á÷µÄService Mesh·½°¸£¬Ò²ÊÇÊÂʵÉϵĵڶþ´úService Mesh±ê×¼¡£ÔÚIstioÖУ¬Ö±½Ó°ÑEnvoy×÷ΪSidecar¡£³ýÁËSidecar£¬IstioÖеĿØÖÆÃæ×é¼þ¶¼ÊÇʹÓÃGoÓïÑÔ±àд¡£

Istio¼ò½é

¸ù¾ÝIstio¹Ù·½ÎĵµµÄ½éÉÜ£¬IstioÔÚ·þÎñÍøÂçÖÐÖ÷ÒªÌṩÁËÒÔϹؼü¹¦ÄÜ£º

Á÷Á¿¹ÜÀí£º¿ØÖÆ·þÎñÖ®¼äµÄÁ÷Á¿ºÍAPIµ÷ÓõÄÁ÷Ïò£¬Ê¹µÃµ÷Óøü¿É¿¿£¬²¢Ê¹ÍøÂçÔÚ¶ñÁÓÇé¿öϸü¼Ó½¡×³¡£

¿É¹Û²ìÐÔ£ºÁ˽â·þÎñÖ®¼äµÄÒÀÀµ¹ØÏµ£¬ÒÔ¼°ËüÃÇÖ®¼äÁ÷Á¿µÄ±¾ÖʺÍÁ÷Ïò£¬´Ó¶øÌṩ¿ìËÙʶ±ðÎÊÌâµÄÄÜÁ¦¡£

²ßÂÔÖ´ÐУº½«×éÖ¯²ßÂÔÓ¦ÓÃÓÚ·þÎñÖ®¼äµÄ»¥¶¯£¬È·±£·ÃÎʲßÂÔµÃÒÔÖ´ÐУ¬×ÊÔ´ÔÚÏû·ÑÕßÖ®¼äÁ¼ºÃ·ÖÅä¡£²ßÂԵĸü¸ÄÊÇͨ¹ýÅäÖÃÍø¸ñ¶ø²»ÊÇÐÞ¸ÄÓ¦ÓóÌÐò´úÂë¡£

·þÎñÉí·ÝºÍ°²È«£ºÎªÍø¸ñÖеķþÎñÌṩ¿ÉÑéÖ¤Éí·Ý£¬²¢Ìṩ±£»¤·þÎñÁ÷Á¿µÄÄÜÁ¦£¬Ê¹Æä¿ÉÒÔÔÚ²»Í¬¿ÉÐŶȵÄÍøÂçÉÏÁ÷ת¡£

ƽ̨֧³Ö£ºIstioÖ¼ÔÚÔÚ¸÷ÖÖ»·¾³ÖÐÔËÐУ¬°üÀ¨¿çÔÆ¡¢Kubernetes¡¢MesosµÈ¡£×î³õרעÓÚKubernetes£¬µ«ºÜ¿ì½«Ö§³ÖÆäËû»·¾³¡£

¼¯³ÉºÍ¶¨ÖÆ£º²ßÂÔÖ´ÐÐ×é¼þ¿ÉÒÔÀ©Õ¹ºÍ¶¨ÖÆ£¬ÒÔ±ãÓëÏÖÓеÄACL¡¢ÈÕÖ¾¡¢¼à¿Ø¡¢Åä¶î¡¢ÉóºËµÈ½â¾ö·½°¸¼¯³É¡£

IstioÕë¶Ô¿ÉÀ©Õ¹ÐÔ½øÐÐÁËÉè¼Æ£¬ÒÔÂú×㲻ͬµÄ²¿ÊðÐèÒª¡£ÕâЩ¹¦Äܼ«´óµÄ¼õÉÙÁËÓ¦ÓóÌÐò´úÂë¡¢µ×²ãƽ̨ºÍ²ßÂÔÖ®¼äµÄñîºÏ£¬Ê¹µÃ΢·þÎñ¸ü¼ÓÈÝÒ×ʵÏÖ¡£

ÏÂͼΪIstioµÄ¼Ü¹¹Éè¼ÆÍ¼£¬Ö÷Òª°üÀ¨ÁËEnvoy¡¢Pilot¡¢MixerºÍIstio-AuthµÈ¡£

Envoy: °çÑÝSidecarµÄ¹¦ÄÜ£¬Ð­µ÷·þÎñÍø¸ñÖÐËùÓзþÎñµÄ³öÈëÕ¾Á÷Á¿£¬²¢Ìṩ·þÎñ·¢ÏÖ¡¢¸ºÔؾùºâ¡¢ÏÞÁ÷È۶ϵÈÄÜÁ¦£¬»¹¿ÉÒÔÊÕ¼¯ÓëÁ÷Á¿Ïà¹ØµÄÐÔÄÜÖ¸±ê¡£

Pilot: ¸ºÔð²¿ÊðÔÚService MeshÖеÄEnvoyʵÀýµÄÉúÃüÖÜÆÚ¹ÜÀí¡£±¾ÖÊÉÏÊǸºÔðÁ÷Á¿¹ÜÀíºÍ¿ØÖÆ£¬½«Á÷Á¿ºÍ»ù´¡ÉèÊ©À©Õ¹½âñÕâÊÇIstioµÄºËÐÄ¡£¿ÉÒÔ°ÑPilot¿´×öÊǹÜÀíSidecarµÄSidecar, µ«ÊÇÕâ¸öÌØÊâµÄSidacar²¢²»³ÐÔØÈκÎÒµÎñÁ÷Á¿¡£PilotÈÃÔËάÈËԱͨ¹ýPilotÖ¸¶¨ËüÃÇÏ£ÍûÁ÷Á¿×ñѭʲô¹æÔò£¬¶ø²»ÊÇÄÄÐ©ÌØ¶¨µÄpod/VMÓ¦¸Ã½ÓÊÕÁ÷Á¿¡£ÓÐÁËPilotÕâ¸ö×é¼þ£¬ÎÒÃÇ¿ÉÒԷdz£ÈÝÒ×µÄʵÏÖ A/B ²âÊԺͽð˿ȸCanary²âÊÔ¡£

Mixer: MixerÔÚÓ¦ÓóÌÐò´úÂëºÍ»ù´¡¼Ü¹¹ºó¶ËÖ®¼äÌṩͨÓÃÖнé²ã¡£ËüµÄÉè¼Æ½«²ßÂÔ¾ö²ßÒÆ³öÓ¦Óò㣬ÓÃÔËάÈËÔ±Äܹ»¿ØÖƵÄÅäÖÃÈ¡¶ø´úÖ®¡£Ó¦ÓóÌÐò´úÂë²»ÔÙ½«Ó¦ÓóÌÐò´úÂëÓëÌØ¶¨ºó¶Ë¼¯³ÉÔÚÒ»Æð£¬¶øÊÇÓëMixer½øÐÐÏ൱¼òµ¥µÄ¼¯³É£¬È»ºóMixer¸ºÔðÓëºó¶ËϵͳÁ¬½Ó¡£Mixer¿ÉÒÔÈÏΪÊÇÆäËûºó¶Ë»ù´¡ÉèÊ©£¨ÈçÊý¾Ý¿â¡¢¼à¿Ø¡¢ÈÕÖ¾¡¢Åä¶îµÈ£©µÄSidecar Proxy¡£

Istio-Auth: Ìṩǿ´óµÄ·þÎñ¼äÈÏÖ¤ºÍÖÕ¶ËÓû§ÈÏÖ¤£¬Ê¹Óý»»¥TLS£¬ÄÚÖÃÉí·ÝºÍÖ¤Êé¹ÜÀí¡£¿ÉÒÔÉý¼¶·þÎñÍø¸ñÖеÄδ¼ÓÃÜÁ÷Á¿£¬²¢ÎªÔËάÈËÔ±Ìṩ»ùÓÚ·þÎñÉí·Ý¶ø²»ÊÇÍøÂç¿ØÖÆÀ´Ö´ÐвßÂÔµÄÄÜÁ¦¡£IstioµÄδÀ´°æ±¾½«Ôö¼ÓϸÁ£¶ÈµÄ·ÃÎÊ¿ØÖƺÍÉ󼯣¬ÒÔʹÓø÷ÖÖ·ÃÎÊ¿ØÖÆ»úÖÆ£¨°üÀ¨»ùÓÚÊôÐԺͽÇÉ«µÄ·ÃÎÊ¿ØÖÆÒÔ¼°ÊÚȨ¹³×Ó£©À´¿ØÖƺͼàÊÓ·ÃÎÊ·þÎñ¡¢API»ò×ÊÔ´µÄ·ÃÎÊÕß¡£

IstioµÄÉè¼ÆÀíÄîÏȽø£¬¹¦ÄÜÒ²±È½ÏÇ¿´ó£¬¼ÓÖ®Google¡¢IBMµÄÓ°ÏìÁ¦ÈÃIstioѸËÙ´«²¥£¬Èùã´ó¿ª·¢ÕßÈÏʶµ½ÁËIstioÏîÄ¿ÔÚService MeshÁìÓòµÄÖØÒªÐÔ¡£µ«ÊÇIstioĿǰ°æ±¾Ò²´æÔÚÁËһЩ²»×㣺

ĿǰµÄIstio´ó²¿·ÖÄÜÁ¦ÓëKubernetesÊÇÇ¿¹ØÁªµÄ¡£¶øÎÒÃÇÔÚ¹¹½¨Î¢·þÎñµÄʱºòÍùÍùÊÇÏ£Íû·þÎñ²ãÓëÈÝÆ÷²ãÊǽâñîµÄ£¬·þÎñ²ãÔÚÉè¼ÆÉÏÐèÒªÄܹ»¶Ô½Ó¶àÖÖÈÝÆ÷²ãƽ̨¡£ IstioÖÁ½ñδÓÐÎȶ¨°æ±¾£¬½ØÖÁ±¾ÎıàдʱΪֹ£¬IstioµÄ×îа汾Ϊ0.8°æ±¾£¬Ô¤¼ÆÔÚ2018ÄêÄڻᷢ²¼1.0°æ±¾¡£

Conduit¼ò½é

ÎÒÃÇÔÙÀ´¿´Ò»ÏÂConduitµÄʵÏÖ£¬ÏÂͼÊÇConduitµÄ¼Ü¹¹Éè¼ÆÍ¼£¬ÆäÖÐÖØµãÓÉConduit Data PlaneºÍConduit Control PlaneÁ½²¿·Ö×é³É£º

Conduit¸÷·½ÃæµÄÉè¼ÆÀíÄîÓëIstio·Ç³£ÀàËÆ£¬×÷ÕßʹÓÃRustÓïÑÔÖØÐ±àдÁËSidecar, ½Ð×öConduit Data Plane, ¿ØÖÆÃæÔòÓÉGoÓïÑÔ±àдµÄConduit Control Plane½Ó¹Ü¡£´ÓConduitµÄ¼Ü¹¹¿´£¬×÷ÕߺųÆConduitÎüÈ¡Á˺ܶàLinkerdµÄ½Ìѵ£¬±ÈLinkerd¸ü¿ì¡¢¸üÇá¡¢¸ü¼òµ¥£¬¿ØÖÆÃ湦ÄܸüÇ¿¡£ÓëIstio±È½Ï£¬ConduitµÄ¼Ü¹¹Ò»·½Ãæ±È½Ï¼òµ¥£¬ÁíÒ»·½Ãæ¶ÔÓÚÒª½â¾öµÄÎÊÌâ×ã¹»¾Û½¹¡£

Serverless¼ò½é

Serverless±»·­ÒëΪ¡°ÎÞ·þÎñÆ÷¼Ü¹¹¡±£¬Õâ¸ö¸ÅÄîÔÚ2012Äêʱ±ãÒѾ­´æÔÚ£¬±È΢·þÎñºÍService MeshµÄ¸ÅÄî³öÏÖ¶¼ÒªÔ磬µ«ÊÇÖ±µ½Î¢·þÎñ¸ÅÄî´óºì´ó×ÏÖ®ºó£¬Serverless²ÅÖØÐÂÓÖ±»ÈËÃÇËù¹Ø×¢¡£

Serverless£¨ÎÞ·þÎñÆ÷¼Ü¹¹£©²¢²»Òâζ×ÅûÓÐÈκηþÎñÆ÷È¥ÔËÐдúÂ룬ServerlessÊÇÎÞÐè¹ÜÀí·þÎñÆ÷£¬Ö»ÐèÒª¹Ø×¢´úÂ룬¶øÌṩÕß½«´¦ÀíÆäÓಿ·Ö¹¤×÷¡£¡°ÎÞ·þÎñÆ÷¼Ü¹¹¡±Ò²¿ÉÒÔÖ¸²¿·Ö·þÎñÆ÷¶ËÂß¼­ÒÀÈ»ÓÉÓ¦ÓóÌÐò¿ª·¢ÕßÀ´±àдµÄÓ¦ÓóÌÐò£¬µ«Ó봫ͳ¼Ü¹¹µÄ²»Í¬Ö®´¦ÔÚÓÚ£¬ÕâЩÂß¼­ÔËÐÐÔÚÍêÈ«ÓɵÚÈý·½¹ÜÀí£¬ÓÉʼþ´¥·¢µÄÎÞ״̬£¨Stateless£©ÔÝ´æÓÚ¼ÆËãÈÝÆ÷ÄÚ¡£

¶ÔÓÚ¿ª·¢ÕßÀ´Ëµ£¬Serverless¼Ü¹¹¿ÉÒÔ½«Æä·þÎñÆ÷¶ËÓ¦ÓóÌÐò·Ö½â³É¶à¸öÖ´Ðв»Í¬ÈÎÎñµÄº¯Êý£¬Õû¸öÓ¦Ó÷ÖΪ¼¸¸ö¶ÀÁ¢¡¢ËÉÉ¢ñîºÏµÄ×é¼þ£¬ÕâЩ×é¼þ¿ÉÒÔÔÚÈκιæÄ£ÉÏÔËÐС£

ÏÂͼΪһÖÖ³£¼ûµÄServerless¼Ü¹¹Í¼£¬ËùÓеķþÎñ¶¼ÒÔFaaS£¨º¯Êý¼´·þÎñ£©µÄ·½Ê½¶ÔÍâ½øÐÐÌṩ¡£ÔÚÓïÑԺͻ·¾³·½Ã棬FaaS º¯Êý¾ÍÊdz£¹æµÄÓ¦ÓóÌÐò£¬ÀýÈçʹÓÃJavaScript¡¢PythonÒÔ¼° JavaµÈÓïÑÔʵÏÖ¡£

Serverless¼Ü¹¹ÓÅÊÆ

Ëõ¶Ì½»¸¶Ê±¼ä£ºServerless¼Ü¹¹ÔÊÐí¿ª·¢ÈËÔ±ÔÚ¼«¶Ìʱ¼äÄÚ£¨¼¸Ð¡Ê±¡¢¼¸Ì죩½»¸¶ÐµÄÓ¦ÓóÌÐò£¬¶ø²»ÊÇÏñÒÔǰһÑùÐèÒª¼¸¸öÐÇÆÚ»ò¼¸¸öÔ¡£ÔÚеÄÓ¦ÓóÌÐòÖУ¬ÒÀÀµÓÚµÚÈý·½APIÌṩ·þÎñµÄÀý×Ӻܶ࣬ÈçÈÏÖ¤(OAuth)¡¢Éç½»¡¢µØÍ¼¡¢È˹¤ÖÇÄܵȡ£

ÔöÇ¿¿ÉÉìËõÐÔ£ºËùÓÐÈ˶¼Ï£Íû×Ô¼º¿ª·¢µÄÓ¦ÓÃÄܹ»¿ìËÙ»ñÈ¡´óÁ¿µÄÐÂÔöÓû§£¬µ«Êǵ±»îÔ¾Óû§¿ìËÙÔö³¤µÄʱºò£¬·þÎñÆ÷µÄѹÁ¦Ò²»á¼¤Ôö¡£Ê¹ÓÃServerless¼Ü¹¹µÄÌåϵ²»ÔÙÓÐÉÏÊöµ£ÓÇ£¬¿ÉÒÔ¼°Ê±¡¢Áé»î½øÐÐÀ©Õ¹À´Ó¦¶Ô¿ìËÙÔö³¤µÄ»îÔ¾Óû§´øÀ´µÄ·ÃÎÊѹÁ¦¡£

½µµÍ³É±¾£ºServerless¼Ü¹¹Ä£Ê½¿ÉÒÔ½µµÍ¼ÆËãÄÜÁ¦ºÍÈËÁ¦×ÊÔ´·½ÃæµÄ³É±¾£¬Èç¹û²»ÐèÒª·þÎñÆ÷£¬¾Í²»Óû¨·Ñʱ¼äÖØÐÂÔìÂÖ×Ó¡¢·çÏÕ¼à²â¡¢Í¼Ïñ´¦Àí£¬ÒÔ¼°»ù´¡ÉèÊ©¹ÜÀí£¬²Ù×÷³É±¾»áÖ±ÏßϽµ¡£

¸ÄÉÆÓû§ÌåÑ飺Óû§Í¨³£²»Ì«¹ØÐÄ»ù´¡ÉèÊ©£¬¶ø¸ü×¢ÖØÓÚ¹¦ÄܺÍÓû§ÌåÑé¡£Serverless¼Ü¹¹ÔÊÐíÍŶӽ«×ÊÔ´¼¯ÖÐÔÚÓû§ÌåÑéÉÏ¡£

¼õÉÙÑÓ³Ù¼°ÓÅ»¯µØÀíλÖÃÐÅÏ¢£ºÓ¦ÓùæÄ£ÄÜÁ¦È¡¾öÓÚÈý¸ö·½Ã棺Óû§ÊýÁ¿¡¢ËùÔÚλÖü°ÍøÂçÑÓ³Ù¡£µ±Ó¦ÓÃÒªÃæÏòÈ«¹úÉõÖÁÈ«ÇòÓû§µÄʱºò£¬Í¨³£»á²úÉú½Ï¸ßµÄÑÓ³Ù£¬´Ó¶ø½µµÍÓû§ÌåÑé¡£ÔÚServerless¼Ü¹¹Ï£¬¹©Ó¦ÉÌÔÚÿ¸öÓû§¸½½ü¶¼Óнڵ㣬´ó·ù¶È½µµÍÁË·ÃÎÊÑÓ³Ù£¬Òò´ËËùÓÐÓû§µÄÌåÑé¶¼¿ÉÒԵõ½ÌáÉý¡£

×ܽá

¶ÔÓÚ´ó¹æÄ£²¿Êð΢·þÎñ£¬ÄÚ²¿·þÎñÒì¹¹³Ì¶È¸ßµÄ³¡¾°£¬Ê¹ÓÃService Mesh·½°¸ÊÇÒ»¸ö²»´íµÄÑ¡Ôñ¡£Service MeshʵÏÖÁËÒµÎñÂß¼­ºÍ¿ØÖƵĽâñµ«ÊÇÒ²´øÀ´Á˶îÍâµÄ¿ªÏú£¬ÓÉÓÚÍøÂçÖжàÁËÒ»Ìø£¬Ôö¼ÓÁËÐÔÄܵÄËðºÄºÍ·ÃÎʵÄÑÓ³Ù¡£Í¬Ê±£¬ÓÉÓÚÿ¸ö·þÎñ¶¼ÐèÒª²¿ÊðSidecar, ÕâÒ²»áʹ±¾À´¾Í¾ßÓÐÒ»¶¨¸´ÔӶȵķֲ¼Ê½ÏµÍ³±äµÃ¸ü¼Ó¸´ÔÓ¡£ÓÈÆäÊÇÔÚʵʩ³õÆÚ£¬¶ÔService MeshµÄ¹ÜÀíºÍÔËά»áÊÇÒ»¸ö¼¬ÊÖµÄÎÊÌâ¡£Òò´Ë£¬µ±ÎÒÃÇÑ¡ÔñʹÓÃService Mesh¼Ü¹¹µÄʱºò£¬ÐèÒª¶Ô¾ßÌåµÄService MeshʵÏÖ·½°¸£¨ÀýÈ磺Istio£©×öºÃ³ä·ÖµÄ¼¼Êõ×¼±¸ºÍ¾­Ñé»ýÀÛ¹¤×÷£¬·½ÄÜÈ·±£·½°¸µÄ˳Àûʵʩ¡£

ÔÚ΢·þÎñÓëÈÝÆ÷¼¼Êõ»ðÈÈÖ®ºó£¬Serverless£¨ÎÞ·þÎñÆ÷¼Ü¹¹£©³ÉΪеÄÈȵ㣬ÎÞ·þÎñÆ÷ÔÆº¯Êý¿ÉÒÔÈÃÓû§ÎÞÐè¹ØÐÄ·þÎñÆ÷µÄ²¿ÊðÔËÓª£¬Ö»Ð迪·¢×îºËÐĵÄÒµÎñÂß¼­£¬¼´¿ÉʵÏÖÉÏÏßÔËÓª£¬¾ß±¸·Ö²¼ÈÝÔÖÄÜÁ¦£¬¿ÉÒÔÒÀ¾Ý¸ºÔØ×Ô¶¯À©ËõÈÝ£¬²¢°´ÕÕʵ¼Êµ÷ÓôÎÊýÓëʱ³¤¼Æ·Ñ¡£

ʹÓÃServerless¼Ü¹¹¿ÉÒÔÃâ³ýËùÓÐÔËάÐÔ²Ù×÷£¬¿ª·¢ÈËÔ±¿ÉÒÔ¸ü¼ÓרעÓÚºËÐÄÒµÎñµÄ¿ª·¢£¬ÊµÏÖ¿ìËÙÉÏÏߺ͵ü´ú£¬°ÑÎÕÒµÎñ·¢Õ¹µÄ½Ú×à¡£Serverless¼Ü¹¹¿ÉÒÔÈÏΪÊǶÔ΢·þÎñºÍÈÝÆ÷»¯µÄÒ»ÖÖ²¹³ä£¬ÎªÓû§ÌṩÁËÒ»ÖÖеÄÑ¡Ôñ£¬À´Ó¦¶Ô¸´ÔÓ¶à±äµÄÐèÇó£¬ÓÈÆäÊʺϿìËÙ·¢Õ¹µÄ³õ´´Ð͹«Ë¾¡£

 
   
4166 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

ÆóÒµ¼Ü¹¹¡¢TOGAFÓëArchiMate¸ÅÀÀ
¼Ü¹¹Ê¦Ö®Â·-ÈçºÎ×öºÃÒµÎñ½¨Ä££¿
´óÐÍÍøÕ¾µçÉÌÍøÕ¾¼Ü¹¹°¸ÀýºÍ¼¼Êõ¼Ü¹¹µÄʾÀý
ÍêÕûµÄArchimateÊÓµãÖ¸ÄÏ£¨°üÀ¨Ê¾Àý£©
Ïà¹ØÎĵµ

Êý¾ÝÖÐ̨¼¼Êõ¼Ü¹¹·½·¨ÂÛÓëʵ¼ù
ÊÊÓÃArchiMate¡¢EA ºÍ iSpace½øÐÐÆóÒµ¼Ü¹¹½¨Ä£
ZachmanÆóÒµ¼Ü¹¹¿ò¼Ü¼ò½é
ÆóÒµ¼Ü¹¹ÈÃSOAÂ䵨
Ïà¹Ø¿Î³Ì

ÔÆÆ½Ì¨Óë΢·þÎñ¼Ü¹¹Éè¼Æ
ÖÐ̨սÂÔ¡¢ÖÐ̨½¨ÉèÓëÊý×ÖÉÌÒµ
ÒÚ¼¶Óû§¸ß²¢·¢¡¢¸ß¿ÉÓÃϵͳ¼Ü¹¹
¸ß¿ÉÓ÷ֲ¼Ê½¼Ü¹¹Éè¼ÆÓëʵ¼ù