±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚÍøÂ磬½éÉÜÁËSpring
CloudºÍKubernetesµÄÓÅȱµã£¬²¢Ö¸³ö½áºÏ¶þÕßµÄÓŵãÀ´×éºÏʹÓ㬽«ÔÚ΢·þÎñÂóÌÉÏ»ñµÃ¸ü´ó³É¹¦¡£
|
|
µ±ÎÒÃÇÐèÒª²¿Êð΢·þÎñµÄʱºò£¬Äĸö¸üºÃ£¿Spring Cloud»¹ÊÇKubernetes£¿´ð°¸ÊǶ¼¿ÉÒÔ£¬Ö»ÊǸ÷×ÔÓÐÆäÓÅÊÆ¡£
Spring Cloud ºÍ Kubernetes ¶¼Ðû³Æ×Ô¼ºÊÇ¿ª·¢ºÍÔËÐÐ΢·þÎñµÄ×î¼Ñ»·¾³£¬µ«ÊÇËüÃǵı¾Öʷdz£²»Ò»Ñù£¬Ëù×·ÇóµÄÄ¿±êÒ²²»Í¬¡£±¾ÎÄÎÒÃÇ·ÖÎöÒ»ÏÂÁ½¸öƽ̨ÊÇÈçºÎÔÚÆäÉó¤µÄ¡¢ÊµÏÖ»ùÓÚ΢·þÎñµÄ¼Ü¹¹£¨MSA£©ÉÏÆðµ½×÷Óõ쬲¢ÅжÏÈçºÎÀûÓÃÁ½ÕßµÄÇ¿ÏÀ´°ïÖúÎÒÃÇÔÚ΢·þÎñÂóÌÉÏ»ñµÃ³É¹¦¡£
±³¾°¹ÊÊÂ
×î½üÎÒ¶ÁÁËA. LukyanchikovдµÄһƪ·Ç³£¾«²ÊµÄÎÄÕ£¬½²µÄÊÇÓÃSpring CloudºÍDockerÀ´¹¹½¨Î¢·þÎñ¼Ü¹¹¡£Èç¹ûÄ㻹û¶Á¹ý£¬ÄãÓ¦¸Ã¶Áһϣ¬ÒòΪËü¸ø³öÁËÒ»¸ö¹ØÓÚÈçºÎÀûÓÃSpring
CloudÀ´´´½¨Ò»¸ö¼òµ¥µÄ»ùÓÚ΢·þÎñµÄϵͳµÄ×ÛºÏÊӽǡ£ÎªÁ˹¹½¨Ò»¸öÄÜÀ©Õ¹µ½Êýǧ¸ö·þÎñµÄ¿ÉÀ©Õ¹ÇÒÓе¯ÐÔµÄ΢·þÎñϵͳ£¬Ëü¾Í±ØÐëÓÐÒ»Ì×ÓµÓй㷺µÄ¹¹½¨Ê±ºÍÔËÐÐʱÄÜÁ¦µÄ¹¤¾ß¼¯À´°ïÖú¹ÜÀíºÍ¿ØÖÆ¡£Ê¹ÓÃSpring
Cloud£¬¼ÈÄÜʵÏÖ¹¦ÄÜÐÍ·þÎñ£¨±ÈÈçͳ¼Æ·þÎñ£¬Õ˺ŷþÎñÒÔ¼°Í¨Öª·þÎñ£©£¬ÓÖÄÜʵÏÖ»ù´¡¼Ü¹¹·þÎñ£¨±ÈÈçÈÕÖ¾·ÖÎö£¬ÅäÖ÷þÎñÆ÷£¬·þÎñ·¢ÏÖ£¬ÈÏÖ¤·þÎñµÈ£©¡£ÃèÊöÕâÑùÒ»¸öʹÓÃSpring
Cloud¹¹ÔìµÄ΢·þÎñ¼Ü¹¹£¨MSA£©Í¼ÈçÏÂËùʾ£º

MSA with Spring Cloud
(by A. Lukyanchikov)
¸Ãͼ°üº¬ÁËÔËÐÐʱÊӽǣ¬µ«ÊÇËü²»°üº¬´ò°ü£¬³ÖÐø¼¯³É£¬À©Õ¹ÐÔ£¬¸ß¿ÉÓã¬×ÔÓúµÈÔÚMSAÊÀ½çÖÐͬÑùÖØÒªµÄ¹¦ÄÜ¡£±¾ÎļÙÉè´ó²¿·ÖJava¿ª·¢Õß¶¼ÊìϤSpring
Cloud£¬ÎÒÃÇÀ´×ö¸ö¶Ô±È£¬¿´¿´KubernetesÊÇÈçºÎÌá³öÕâЩ¶îÍâµÄ¸ÅÄÒÔ¹ØÁªµ½Spring
CloudµÄ¡£
΢·þÎñ¸ÅÄî
ÎÒÃDz»»áÕë¶ÔÁ½ÕßÒ»¸öÒ»¸ö¸ÅÄîµÄ±È¶Ô£¬¶øÊǸù¾Ý¸ü¹ãÀ«µÄ΢·þÎñ¸ÅÄÀ´¿´¿´Spring CloudºÍKubernetes·Ö±ðÊÇÈçºÎʵÏÖËûÃǵġ£½ñÌìÓйØMSAµÄÒ»¸öºÃÊÂÊÇ£¬ËüÊÇÒ»¸öÓÐ×ÅÒ×ÓÚÀí½âµÄÓÅȱµãÆÀ¹ÀµÄ¼Ü¹¹·ç¸ñ¡£Î¢·þÎñÄܼÓǿģ¿é±ß½ç£¬¸÷Ä£¿é¿ÉÒÔÓжÀÁ¢µÄ²¿ÊðºÍ¼¼Êõ²îÒì¡£µ«ÊÇͬʱҲ´øÀ´ÁË´ú¼Û£¬ÐèÒª¿ª·¢·Ö²¼Ê½ÏµÍ³ÒÔ¼°Ã÷ÏÔÔö¼Ó²Ù×÷³É±¾¡£Ò»¸ö¹Ø¼üµÄ³É¹¦ÒòËØÊǾ۽¹ÓÚʹÓÃÒ»Ì×ÄܰïÖúÄãʵÏÖ¾¡¿ÉÄܶàµÄMSA¸ÅÄîµÄ¹¤¾ß¡£ÄÜʹµÃÆô¶¯¹ý³ÌѸËÙÇÒÈÝÒ×ÊǺÜÖØÒªµÄ£¬µ«ÊÇͨÏò²úÆ·»¯µÄÂóÌÊǺÜÂþ³¤µÄ£¬ÄãÐèÒª´ïµ½ÕâÑùµÄ¸ß¶È²ÅÄܵ½´ïÄÇÀï¡£

Microservices concerns
ÈçÉÏͼËùʾ£¬ÎÒÃÇ¿ÉÒÔ¿´µ½MSAÖбØÐëʵÏÖµÄÄÇЩ×îÆÕ±éµÄ¼¼Êõ¸ÅÄÎÒÃǽ«²»»á¹Ø×¢·Ç¼¼Êõ¸ÅÄ±ÈÈç×éÖ¯½á¹¹£¬ÎÄ»¯µÈ£©¡£
¼¼ÊõÆ¥Åä
Sping CloudºÍKubernetesÕâÁ½¸öƽ̨·Ç³£²»Ò»Ñù£¬²¢ÇÒËüÃÇÖ®¼äҲûÓÐÖ±½ÓµÄµÈ¼ÛÌØÐÔ¡£Èç¹ûÎÒÃǽ«Ã¿¸öMSA¸ÅÄîÆ¥Åäµ½ÕâÁ½¸öƽ̨ʹÓõÄʵÏÖÕâЩ¸ÅÄîµÄ¼¼Êõ/ÏîÄ¿£¬ÎÒÃÇÄܵóöÏÂ±í¡£

Spring Cloud and Kubernetes
technologies
´ÓÉϱíÖÐÄÜ¿ìËٵóöµÄ½áÂÛÊÇ£º
1.Spring CloudÓÐÒ»¸ö·á¸»µÄ¼¯ºÏ£¬Í걸ÕûºÏÁËJava¿â£¬ÒÔʵÏÖ¸÷ÖÖÔËÐÐʱ¸ÅÄ×÷ΪӦÓÃÕ»µÄÒ»²¿·Ö¡£Òò´Ë£¬ÕâЩ΢·þÎñ×ÔÉíÓпâºÍÔËÐÐʱ´úÀí£¬À´×ö¿Í»§¶ËµÄ·þÎñ·¢ÏÖ£¬¸ºÔؾùºâ£¬ÅäÖøüУ¬¶ÈÁ¿¸ú×ٵȡ£¸÷ÖÖģʽ£¬±ÈÈçµ¥¼¯Èº·þÎñºÍÅúÁ¿ÈÎÎñ£¬Ò²ÊÇÓÉJVMÀ´¹ÜÀíµÄ¡£
2.Kubernetes¼æÈݶàÖÖÓïÑÔ£¬Ä¿±ê²»Ö¹Javaƽ̨£¬²¢ÇÒÒÔÒ»ÖÖͨÓ÷½Ê½ÎªËùÓÐÓïÑÔʵÏÖÁË·Ö²¼Ê½µÄ¼ÆËãÌôÕ½¡£ËüÌṩÁËÆ½Ì¨¼¶ÒÔ¼°Ó¦ÓÃÕ»Ö®ÍâµÄ·þÎñ£¬±ÈÈçÅäÖùÜÀí£¬·þÎñ·¢ÏÖ£¬¸ºÔؾùºâ£¬×·×Ù£¬¶ÈÁ¿£¬µ¥Àý£¬µ÷¶ÈÈÎÎñ¡£Ó¦Óò»ÐèÒªÈκοâ»òÕß´úÀíÀ´ÊµÏÖ¿Í»§¶ËÂß¼£¬ÇÒ¿ÉÓÃÈκÎÓïÑÔÀ´Ð´¡£
3.ÔÚijЩÁìÓò£¬Á½¸öƽ̨¶¼ÒÀÀµÏàËÆµÄµÚÈý·½¹¤¾ß¡£±ÈÈ磬ELKºÍEFKÕ»£¬×·×Ù¿âµÈ¡£Ä³Ð©¿â£¬±ÈÈçHystricºÍSpring
Boot£¬ÔÚÁ½¸ö»·¾³É϶¼·Ç³£ÓÐÓá£ÓÐЩÁìÓòÁ½¸öƽ̨ÊÇ»¥²¹µÄ£¬ÕûºÏµ½Ò»ÆðÄÜ´´Ôì³öÒ»¸ö¸üÇ¿´óµÄ½â¾ö·½°¸£¨KubeFlixºÍSpring
Cloud Kubernetes ¾ÍÊÇÕâÑùµÄÀý×Ó£©¡£
΢·þÎñÐèÇó
ΪÁË»³öÿ¸öÏîÄ¿µÄ·¶Î§£¬ÕâÀïÓÐÕűíÁгöÁ˼¸ºõÊǶ˵½¶ËµÄMSAÐèÇ󣬴Ó×îµ×²ãµÄÓ²¼þ£¬µ½×îÉϲãµÄDevOpsºÍ×Ô·þÎñ¾Ñ飬²¢ÇÒÁгöÁËÈçºÎ¹ØÁªµ½Spring
CloudºÍKubernetesƽ̨¡£

Microservices requirements
ÔÚijЩ³¡¾°Ï£¬Á½¸öÏîĿʹÓò»Í¬µÄ·½·¨´ï³ÉÁËÏàͬµÄÐèÇó£¬ÔÚijЩÁìÓò£¬Ò»¸öÏîÄ¿¿ÉÄÜ»áÇ¿ÓÚÁíÒ»¸ö¡£µ«ÊÇÔÚijЩÇé¿öÏ£¬Á½¸öÏîÄ¿ÊÇ»¥²¹µÄ£¬¿ÉÒÔ×éºÏÆðÀ´´ï³É¸ß¼¶µÄ΢·þÎñ¾Ñé¡£ÀýÈ磬Spring
BootÌṩÁËMaven²å¼þÀ´¹¹½¨µ¥¸öJARÓ¦Óðü¡£ÕâÑù¾Í¿ÉÒÔ½áºÏDockerºÍKubernetesµÄÉùÃ÷ʽ²¿ÊðºÍµ÷¶ÈÄÜÁ¦£¬Ê¹µÃÔËÐÐ΢·þÎñ±äµÃÇá¶øÒ×¾Ù¡£Í¬ÑùµÄ£¬Spring
CloudÓиöÄÚǶµÄÓ¦Óÿ⣬¿ÉÒÔÀûÓÃHystric£¨×Ô´ø¸ôÀëºÍÈÛ¶Ïģʽ£©ºÍRibbon£¨ÓÃÀ´¸ºÔؾùºâ£©À´´´½¨Óе¯ÐԵģ¬ÈÝ´íµÄ΢·þÎñ¡£µ«Êǹ⿿Õâ¸ö»¹²»¹»£¬µ±Õâ¸öÄÜÁ¦ºÍKubernetesµÄ½¡¿µ¼ì²é£¬½ø³ÌÖØÆô£¬ÒÔ¼°×Ô¶¯ÉìËõÄÜÁ¦½áºÏÔÚÒ»Æðʱ£¬Î¢·þÎñ²ÅÄܳÉΪһ¸ö·´´àÈõϵͳ¡£
ÓŵãºÍȱµã
ÒòΪÁ½¸öƽ̨²»ÄÜÖ±½ÓÓÃÿ¸öÌØÐÔÀ´±È½Ï£¬ÎÒÃÇÒ²²»´òËãÕë¶Ôÿ¸öƽ̨¶¼ÉîÈëÿ¸öÌØÐÔ£¬Òò´ËÕâÀï¾ÍÒÔ×ܽáÐÔ·½Ê½À´ËµÃ÷Ò»ÏÂÁ½¸öƽ̨µÄÓÅȱµã¡£
Spring Cloud
Spring Cloud¸ø¿ª·¢ÕßÌṩÁËÒ»¸ö¹¤¾ß£¬ÄÜÔÚ·Ö²¼Ê½ÏµÍ³ÖпìËÙ¹¹½¨ÀýÈçÅäÖùÜÀí£¬·þÎñ·¢ÏÖ£¬ÈÛ¶Ï£¬Â·ÓɵÈͨÓÃģʽ¡£ÕâÊÇ»ùÓÚNetflixµÄOSS¿â£¬ËüÃÇÊÇÓÃJavaдµÄ£¬ÃæÏòJava¿ª·¢Õß¡£
ÓÅÊÆ
1.ÓÉSpringƽ̨×ÔÉíÀ´ÌṩͳһµÄ±à³ÌÄ£ÐÍ£¬¼ÓÉÏSpring
BootµÄ¿ìËÙ´´½¨Ó¦ÓõÄÄÜÁ¦£¬¿ÉÒÔ¸ø¿ª·¢Õß´óÁ¿µÄ΢·þÎñ¿ª·¢¾Ñé¡£ÀýÈ磬ֻҪ¼«ÉÙÁ¿µÄ±êÇ©£¬Äã¾Í¿ÉÒÔ´´½¨Ò»¸öÅäÖ÷þÎñÆ÷£¬ÔÙ¼ÓһЩ±êÇ©£¬Äã¾Í¿ÉÒԵõ½Ò»¸ö¿Í»§¶Ë¿âÀ´ÅäÖÃÄãµÄ·þÎñ¡£
2.ÓдóÁ¿µÄ¸²¸ÇÁË´ó¶àÊýÔËÐÐʱ¸ÅÄîµÄ¿â¿É¹©Ñ¡Ôñ¡£ÒòΪËùÓеĿⶼÊÇÓÃJavaдµÄ£¬ËüÄÜÌṩ¸ü¶àµÄÌØÐÔ£¬¸üÇ¿µÄ¿ØÖÆ£¬ÒÔ¼°¸üºÃµÄÒ»ÖÂÐÔÑ¡Ïî¡£
3.²»Í¬µÄSpring Cloud¿â¶¼¿ÉÒԺܺõÄÕûºÏÔÚÒ»Æð¡£ÀýÈ磬Feign¿Í»§¶ËÒ²¿ÉÒÔʹÓÃHystrix×÷ΪÈÛ¶ÏÆ÷£¬ÒÔ¼°Ribbon×÷ΪÇëÇó¸ºÔؾùºâÆ÷¡£Ã¿Ò»¸ö¶¼ÊDZêÇ©Çý¶¯µÄ£¬ÕâÑù¶ÔJava¿ª·¢ÕßÀ´Ëµ¾ÍºÜÈÝÒ׿ª·¢¡£
ȱµã
1.Spring CloudÆäÖÐÒ»¸ö×îÖ÷ÒªµÄÓŵãÒ²ÊÇËüµÄȱµã£¬¼´ËüÖ»Õë¶ÔJava¡£MSA
µÄÇ¿ÁÒµÄÄ¿±êÊǾ߱¸»¥»»¼¼ÊõÕ»£¬¿â£¬±ØÒªµÄʱºòÉõÖÁÊÇÓïÑÔµÄÄÜÁ¦¡£¶øÕâ¶ÔSpring CloudÀ´Ëµ²»¿ÉÄÜ¡£Èç¹ûÄãÏëÒªÏû·ÑSpring
Cloud/Netflix OSS»ù´¡·þÎñ£¬±ÈÈçÅäÖùÜÀí£¬·þÎñ·¢ÏÖ£¬»òÕ߸ºÔؾùºâ£¬½â¾ö·½°¸²»ÊǺÜÓÅÑÅ¡£Netflix
Prana ÏîĿʵÏÖÁËsidecarģʽ£¬ÈÃJava¿Í»§¶Ë¿â»ùÓÚHTTPÐÒ飬ʹµÃÄÇЩ·ÇJVMÓïÑÔдµÄÓ¦ÓÃÒ²¿ÉÒÔ´æÔÚÓÚNetflixOSSϵͳÖУ¬µ«ÊÇÕâÖÖ·½Ê½²»ÊǺÜÓÅÑÅ¡£
2.Java¿ª·¢ÕßÐèÒª¹Ø×¢·Ç³£¶àµÄÊÂÇ飬JavaÓ¦ÓÃÐèÒª´¦Àí·Ç³£¶àµÄÊÂÇ顣ÿ¸ö΢·þÎñ¶¼ÐèÒªÔËÐи÷ÖÖ¿Í»§¶ËÀ´»ñµÃÅäÖûָ´¡¢·þÎñ·¢ÏÖ¡¢¸ºÔؾùºâµÈ¹¦ÄÜ¡£ÕâЩ¿Í»§¶ËºÜÈÝÒ×½¨Á¢£¬µ«ÊÇËüÃÇûÓÐÒþ²Ø»·¾³µÄ¹¹½¨Ê±ºÍÔËÐÐʱÒÀÀµ¡£ÀýÈ磬¿ª·¢Õß¿ÉÒÔÓÃ@EnableConfigServer±êÇ©´´½¨Ò»¸öÅäÖ÷þÎñÆ÷£¬µ«ÊÇÕâÒ²ÊÇΨһ·¾¶¡£Ã¿´Î¿ª·¢ÕßÏëÒªÔËÐÐÒ»¸öµ¥Ò»µÄ΢·þÎñ£¬ËûÃÇÐèҪʹÅäÖ÷þÎñÆ÷Õý³£ÔËÐС£¶ÔÒ»¸öÊܿػ·¾³£¬¿ª·¢Õß²»µÃ²»¿¼ÂÇÈÃÅäÖ÷þÎñÆ÷¸ß¿ÉÓã¬ÇÒÒòΪËü¿ÉÒÔÓÉGit»òÕßSvnÀ´Ö§³Ö£¬ËûÃÇ»¹ÐèÒªÒ»¸ö¹²ÏíµÄÎļþϵͳ¡£Í¬ÑùµÄ£¬¶Ô·þÎñ·¢ÏÖÀ´Ëµ£¬¿ª·¢ÕßÊ×ÏÈÐèÒªÆô¶¯Ò»¸öEureka·þÎñÆ÷¡£¶ÔÒ»¸öÊܿػ·¾³£¬ËûÃÇÐèÒªÔÚÿ¸öAZÉ϶¼Óöà¸öʵÀýÀ´ÊµÏÖ¼¯Èº¡£ÕâÓеãÀàËÆÓÚ£¬³ýÁËʵÏÖËùÓеŦÄÜÐÔ·þÎñÍ⣬Java¿ª·¢Õß»¹ÐèÒª¹¹½¨ºÍ¹ÜÀíÒ»¸ö·ÇÊÔÓÃÐ͵Ä΢·þÎñƽ̨¡£
3.µ¥¶ÀʹÓÃSpring CloudÔÚ΢·þÎñÂóÌÉÏÎÞ·¨×ߵúܳ¤Ô¶£¬ÔÚÒ»¸öÍêÕûµÄ΢·þÎñ¾ÀúÖУ¬¿ª·¢Õß»¹ÐèÒª¿¼ÂÇ×Ô¶¯»¯²¿Ê𣬵÷¶È£¬×ÊÔ´¹ÜÀí£¬½ø³Ì¸ôÀ룬×ÔÓú£¬¹¹½¨Á÷Ë®Ïߵȹ¦ÄÜ¡£ÔÚÕâµãÉÏ£¬ÎÒ¾õµÃµ¥¶ÀÄÃSpring
CloudºÍKubernetesÀ´±È½Ï²»Ì«¹«Æ½£¬¸ü¹«ÕýµÄ±È½ÏÓ¦¸ÃÊÇSpring Cloud + Cloud
Foundry£¨»òÕß Docker Swarm£©ºÍKubernetesÀ´±È½Ï¡£µ«ÊÇÄÇҲ˵Ã÷£¬¶ÔÒ»¸öÍêÕûµÄ¶Ëµ½¶ËµÄ΢·þÎñ¾Àú£¬Spring
Cloud»¹ÐèÒª²¹³äÒ»¸öÓ¦ÓÃÆ½Ì¨£¬¾ÍÏñKubernetesÄÇÑù¡£
Kubernetes
Kubernetes ÊÇÒ»¸öÕë¶ÔÈÝÆ÷Ó¦ÓõÄ×Ô¶¯»¯²¿Êð£¬ÉìËõºÍ¹ÜÀíµÄ¿ªÔ´ÏµÍ³¡£Ëü¼æÈݶàÖÖÓïÑÔÇÒÌṩÁË´´½¨£¬ÔËÐУ¬ÉìËõÒÔ¼°¹ÜÀí·Ö²¼Ê½ÏµÍ³µÄÔÓï¡£
ÓÅÊÆ
1.KubernetesÊÇÓïÑÔ²»¸ÐÖªµÄÈÝÆ÷¹ÜÀíÆ½Ì¨£¬ÄܼæÈÝÔËÐÐÔÉúÔÆÓ¦Óúʹ«Í³µÄÈÝÆ÷»¯Ó¦Óá£ËüÌṩµÄ·þÎñ£¬±ÈÈçÅäÖùÜÀí£¬·þÎñ·¢ÏÖ£¬¸ºÔؾùºâ£¬¶ÈÁ¿ÊÕ¼¯£¬ÒÔ¼°ÈÕÖ¾¾ÛºÏ£¬Äܱ»¸÷ÖÖÓïÑÔʹÓá£ÕâʹµÃ×éÖ¯¿ÉÒÔÖ»Ìṩһ¸öƽ̨¹©¶à¸öÏîÄ¿×éʹÓ㨰üÀ¨Ê¹ÓÃSpringµÄJava¿ª·¢Õߣ©£¬²¢ÇÒÌṩ¶àÖÖÄ¿µÄ£ºÓ¦Óÿª·¢£¬²âÊÔ»·¾³£¬¹¹½¨»·¾³£¨ÔËÐÐ×ÊÔ´¿ØÖÆÏµÍ³£¬¹¹½¨·þÎñÆ÷£¬È˹¤²Ö¿â£©µÈ¡£
2.ºÍSpring CloudÏà±È£¬KubernetesʵÏÖÁ˸ü¹ãÀ«µÄMSA¸ÅÄºÏ¡£³ýÁËÌṩÔËÐÐʱ·þÎñ£¬KubernetesÒ²ÔÊÐíÎÒÃÇÌṩ»·¾³±äÁ¿£¬ÉèÖÃ×ÊÔ´ÏÞÖÆ£¬RBAC£¬¹ÜÀíÓ¦ÓÃÉúÃüÖÜÆÚ£¬Ê¹ÄÜ×Ô¶¯ÉìËõºÍ×ÔÓú£¨±íÏÖΪ¾ÍÏñÒ»¸ö·´´àÈõƽ̨£©¡£
3.KubernetesµÄ¼¼ÊõÊÇ»ùÓÚGoogle 15ÄêµÄ¹ÜÀíÈÝÆ÷µÄÑо¿ºÍ¿ª·¢¾Ñé¡£³ý´ËÒÔÍ⣬»¹Óн«½ü1000¸ö
committer£¬Ëü¼¸ºõÊÇGitHubÉÏ¿ªÔ´ÉçÇø×î»îÔ¾µÄÏîÄ¿¡£
ȱµã
1.KubernetesÊǼæÈݶàÖÖÓïÑԵģ¬Òò´ËËüµÄ·þÎñºÍÔÓïÊÇͨÓõ쬲»ÏñSpring
Cloud¶ÔJVMÄÇÑù£¬Ã»ÓÐÕë¶Ô²»Í¬µÄƽ̨×öÓÅ»¯¡£ÀýÈ磬ÅäÖÃÊÇͨ¹ý»·¾³±äÁ¿»òÕß¹ÒÔØÎļþϵͳ´«µÝ¸øÓ¦Óõġ£ËüûÓÐSpring
CloudÅäÖÃÌṩµÄÄÇÑù¾«ÃîµÄÅäÖøüÐÂÄÜÁ¦¡£
2.Kubernetes²»ÊÇÒ»¸öÕë¶Ô¿ª·¢Õߵį½Ì¨¡£ËüµÄÄ¿µÄÊǹ©ÓÐDevOps˼ÏëµÄITÈËԱʹÓá£Òò´Ë£¬Java¿ª·¢ÕßÐèҪѧϰһЩеĸÅÄ²¢¸ü¿ª·ÅµÃѧϰеĽâ¾öÎÊÌâµÄ·½Ê½¡£²»¹ÜʹÓÃMiniKubeÀ´²¿ÊðÒ»¸öKubernetes¿ª·¢ÊµÀýÊǶàôµÃÈÝÒ×£¬ÊÖ¹¤°²×°Ò»¸ö¸ß¿ÉÓõÄKubernetes¼¯ÈºÊÇÓÐÃ÷ÏԵIJÙ×÷³É±¾µÄ¡£
3.KubernetesÈÔÊÇÒ»¸öÏà¶Ô½ÏÐÂµÄÆ½Ì¨£¨2Ä꣩£¬ËüÒ²»¹ÔÚ»îÔ¾µÃ¿ª·¢ºÍÉú³¤ÖС£Òò´Ëÿ¸ö°æ±¾¶¼»áÓÐÐí¶àеÄÌØÐÔ£¬Ê¹µÃÎÒÃǺÜÄÑÈ¥Ò»Ö±¸ú×Ù¡£ºÃÏûÏ¢ÊÇÕâ¸öÎÊÌâÒѾ±»ÕýÊÓ£¬API×ö³ÉÁË¿ÉÀ©Õ¹ÇÒÊǺóÏò¼æÈݵġ£
Á½¸öƽ̨µÄ×î¼Ñʵ¼ù
ÕýÈçÄãËù¿´µ½µÄ£¬Á½¸öƽ̨¶¼Óи÷×ÔµÄÇ¿ÏҲÓÐÐèÒªÌá¸ßµÄµØ·½¡£Spring Cloud ÊÇÒ»¸öÈÝÒ×ÉÏÊֵģ¬¿ª·¢ÕßÓÑºÃµÄÆ½Ì¨¡£¶øKubernetesÊÇDevOpsÓѺõģ¬ÓÐ×Ŷ¸Ç͵ÄѧϰÇúÏߣ¬µ«Êǰüº¬Á˸ü¹ã·ºµÄ΢·þÎñ¸ÅÄî¡£ÕâÀïÊÇÕë¶ÔÕ⼸µãµÄ×ܽᡣ

Strengths and weaknesses
Á½¸ö¿ò¼ÜʵÏÖÁ˲»Í¬·¶Î§µÄMSA¸ÅÄʹÓõÄÊÇ´Ó¸ùÔ´ÉϾÍÓÐÇø±ðµÄ·½Ê½¡£Spring Cloud·½Ê½ÊǾ¡Á¦ÔÚJVM·¶³ëÄÚÀ´½â¾öÿ¸öMSAµÄÌôÕ½£¬¶øKubernetesµÄ·½Ê½ÊǾ¡Á¦Îª¿ª·¢ÕßÔÚÆ½Ì¨²ãÃæÏû³ýÕâЩÎÊÌâ¡£Spring
CloudÔÚJVMÄڷdz£Ç¿´ó£¬KubernetesÔÚ¹ÜÀíÕâЩJVMÉϷdz£Ç¿´ó¡£Òò´Ë£¬ÕûºÏÕâÁ½ÕßÈ¡ËüÃǵÄ×î¼Ñ²¿·Ö£¬ÊÇÒ»¸öºÜ×ÔÈ»µÄ½ø²½¹ý³Ì¡£

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

My favorite microservices
stack
ÎÒ×îϲ»¶µÄ΢·þÎñƽ̨ÊÇÄĸö£¿ÎÒÁ½¸ö¶¼Ï²»¶¡£ÎÒϲ»¶Spring ¿ò¼ÜÌṩµÄ¿ª·¢Õß¾Ñé¡£ËüÊDZêÇ©Çý¶¯µÄ£¬²¢ÇÒÓµÓаüº¬Á˸÷ÖÖ¹¦ÄÜÐèÇóµÄ¿â¡£¸úÈκÎÕûºÏÏà¹ØµÄ£¬ÎÒϲ»¶Apache
Camel£¨¶ø²»ÊÇSpring Integration£©£¬ËüÄÜÌṩӦÓü¶±ðµÄÁ¬½ÓÆ÷£¬ÏûÏ¢£¬Â·ÓÉ£¬¿É¿¿ÐÔºÍÈÝ´í¹¦ÄÜ¡£¶ø¶Ô¸ú¼¯ÈººÍ¹ÜÀí¶àÓ¦ÓÃʵÀýÏà¹ØµÄ£¬ÎÒ¸üϲ»¶Ä§·¨°ãµÄKubernetesÄÜÁ¦¡£²»ÂÛºÎʱ£¬ÓÐÖØ¸´¹¦ÄÜ£¬±ÈÈç·þÎñ·¢ÏÖ£¬¸ºÔؾùºâ£¬ÅäÖùÜÀí£¬ÎÒ¾¡Á¿Ê¹ÓÃKubernetesÌṩµÄ¸úÓïÑÔÎ޹صÄÔÓï¡£
|