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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÍøÒ×ÈÝÆ÷ÔÆÆ½Ì¨µÄ΢·þÎñ»¯Êµ¼ù
 
  3083  次浏览      27
 2018-5-2 
 
±à¼­ÍƼö:
±¾ÎÄÀ´×ÔÓÚcsdn£¬½éÉÜÁËÈÝÆ÷¼¼ÊõºÍ΢·þÎñ¼Ü¹¹µÄ¹ØÏµ£¬ÎÒÃÇ×öÈÝÆ÷ÔÆÆ½Ì¨µÄÄ¿µÄ£¬ÒÔ¼°¼òµ¥½éÉÜÁËÍøÒ×ÔÆÈÝÆ÷·þÎñ»ùÓÚ Kubernetes ºÍ Spring Cloud µÄ΢·þÎñ»¯Êµ¼ù¾­Ñé¡£

Ò»µ©¾ö¶¨×ö΢·þÎñ¼Ü¹¹£¬ÓкܶàÏÖʵÎÊÌâ°ÚÔÚÃæÇ°£¬±ÈÈç¼¼ÊõÑ¡ÐÍ¡¢ÒµÎñ²ð·ÖÎÊÌâ¡¢¸ß¿ÉÓᢷþÎñͨÐÅ¡¢·þÎñ·¢ÏÖºÍÖÎÀí¡¢¼¯ÈºÈÝ´í¡¢ÅäÖùÜÀí¡¢Êý¾ÝÒ»ÖÂÐÔÎÊÌâ¡¢¿µÍþ¶¨ÂÉ¡¢·Ö²¼Ê½µ÷Óøú×Ù¡¢CI/CD¡¢Î¢·þÎñ²âÊÔ£¬ÒÔ¼°µ÷¶ÈºÍ²¿ÊðµÈµÈ£¬Õâ²¢·ÇһЩ¼òµ¥ÕÐÊýÄܹ»»¯½â¡£Êµ¼ù΢·þÎñ¼Ü¹¹µÄ·½Ê½ÓÐǧÍòÖÖ£¬ÎÒÃÇ̽Ë÷²¢Êµ¼ùÁËÆäÖеÄÒ»ÖÖ¿ÉÄÜÐÔ£¬Ï£Íû¿ÉÒÔ¸ø´ó¼ÒÒ»¸ö²Î¿¼¡£±¾ÎÄÊÇ¡¶ÍøÒ×ÈÝÆ÷ÔÆÆ½Ì¨µÄ΢·þÎñ»¯Êµ¼ù¡·ÏµÁÐÎÄÕµĵÚһƪ¡£

Docker ÈÝÆ÷¼¼ÊõÒѾ­¹ýÁË×îÔçµÄÐúÏùÆÚ£¬Öð½¥ÔÚ¸÷´ó¹«Ë¾ºÍ¼¼ÊõÍŶÓÖÐÓ¦Ó᣾¡¹ÜÒÔ½ñÌìÀ´¿´£¬´ó¼Ò´Ó¹ÛÄîÉÏÒѾ­Öð½¥ÈÏ¿É ¡°½«¾µÏñ¶¨ÒåΪӦÓý»¸¶±ê×¼£¬½«ÈÝÆ÷×÷ΪӦÓÃÔËÐеıê×¼»·¾³¡± µÄ¹Ûµã£¬µ«»¹ÊÇÓÐÏ൱һ²¿·ÖÈËÔÚÃÔ»óÈÝÆ÷¼¼Êõ×÷Ϊһ¸ö±ê×¼£¬Ó¦¸ÃÔõôÂ䵨£¬ÔõÑù²ÅÄÜ´ó¹æÄ£ÏßÉÏÓ¦Óã¬ÔõÃ´Íæ²ÅÄÜÕæÕý½â·ÅÉú²úÁ¦£¬´Ù½øÈí¼þ½»¸¶Ð§ÂʺÍÖÊÁ¿£¿´ð°¸ÆäʵÔÚÓ¦Óõļܹ¹µ±ÖС£

΢·þÎñ¼Ü¹¹²»ÊÇÒò Docker ÈÝÆ÷¼¼Êõ¶øÉú£¬µ«È·ÊµÊÇÒòÈÝÆ÷¼¼Êõ¶ø»ð¡£ÈÝÆ÷¼¼ÊõÌṩÁËÒ»ÖÂÐԵķַ¢ÊֶκÍÔËÐл·¾³£¬Ê¹µÃÖ»ÓÐ΢·þÎñ»¯ºóµÄÓ¦Óüܹ¹£¬²ÅÄÜÅäºÏÈÝÆ÷·¢»ÓÆä×î´ó¼ÛÖµ¡£¶øÎ¢·þÎñ»¯¼Ü¹¹ÒýÈëÁ˺ܴóµÄ¸´ÔÓÐÔ£¬Ö»ÓÐÓ¦ÓÃÈÝÆ÷»¯ÒÔ¼°¹æÄ£»¯µÄÈÝÆ÷±àÅÅÓëµ÷¶È²ÅÄܱÜÃâÔËάЧÂÊϽµ¡£ÈÝÆ÷¼¼ÊõºÍ΢·þÎñ»¯¼Ü¹¹Ö®¼ä±¾ÊÇÒ»ÖÖÏศÏà³ÉµÄ»¥²¹¹ØÏµ¡£

ÍøÒ×ÈÝÆ÷ÔÆÆ½Ì¨µÄǰÉíÊÇÍøÒ×Ó¦ÓÃ×Ô¶¯²¿Êðƽ̨ (OMAD)£¬ËüÄܹ»ÀûÓà IaaS ÔÆÌṩµÄ»ù´¡ÉèÊ©£¬ÊµÏÖ°üÀ¨¹¹½¨ºÍ²¿ÊðÒ»Ì廯ÔÚÄÚµÄÕû¸öÓ¦ÓÃÉúÃüÖÜÆÚ¹ÜÀí¡£2014 Ä꣬ÒÔ Docker Ϊ´ú±íµÄÈÝÆ÷¼¼Êõ½øÈë´óÖÚÊÓÒ°£¬ÎÒÃǾªÏ²µØ·¢ÏÖ£¬ÈÝÆ÷¼¼ÊõÊÇ×Ô¶¯²¿Êðƽ̨´Ó¹¤¾ßÐÍÓ¦Óýø»¯ÎªÆ½Ì¨ÐÍÓ¦Óùý³ÌÖÐ×îÖØÒªµÄÒ»¿éƴͼ¡£Ô­±¾Óû§ÐèÒª³õʼ»¯Ö÷»ú£¬È»ºó½èÖú×Ô¶¯²¿Êðƽ̨Íê³ÉÓ¦ÓõĹ¹½¨ºÍ²¿Êð¡£ÒýÈëÈÝÆ÷¼¼ÊõÖ®ºó£¬Óû§´Ó¹¦ÄÜ¿ª·¢µ½²âÊÔµ½Ò»¼ü²¿ÊðÉÏÏߣ¬Õû¸öÓ¦Óý»¸¶¹ý³ÌÖв»ÓùØÐÄÖ÷»ú³õʼ»¯¡¢Ö÷»ú¼äͨÐÅ¡¢ÊµÀýµ÷¶ÈµÈһϵÁÐÓ¦ÓÃÖ®ÍâµÄÎÊÌâ¡£Õâ¼òÖ±ÊÇÐÅÑö DevOps µÄÈ˵ĸ£Òô¡£

ÎÒÃÇ´Ó 2015 Ä꿪ʼ̽Ë÷ÈÝÆ÷¼¼ÊõµÄ×î¼Ñʵ¼ù·½Ê½£¬´Óµ±³õ ¡°ÅÖÈÝÆ÷¡± ÓëÈÝÆ÷¼¯ÈºµÄ²úÆ·ÐÎ̬£¬µ½ºóÀ´¹ØÓÚÓÐ״̬ºÍÎÞ״̬·þÎñµÄ¶¨Ò壬ÒÔ¼°Èç½ñµÄмÆËãÓë¸ßÐÔÄܼÆË㣬ÎÒÃÇÒ»Ö±ÔÚ˼¿¼²¢·á¸»×ÅÈÝÆ÷¼¼ÊõµÄÓ¦Óó¡¾°¡£ÎÞÂÛ²úÆ·ÐÎ̬ÈçºÎµ÷Õû£¬ÈÝÆ÷ÔÆÆ½Ì¨µÄºËÐĸÅÄîÒ»Ö±ÊÇ ¡°Î¢·þÎñ¡±£¬Í¨¹ý΢·þÎñÕâÒ»³éÏóÌṩ¸ßÐÔÄܵÄÈÝÆ÷¼¯Èº¹ÜÀí·½°¸£¬Ö§³Öµ¯ÐÔÉìËõ¡¢´¹Ö±À©ÈÝ¡¢»Ò¶ÈÉý¼¶¡¢·þÎñ·¢ÏÖ¡¢·þÎñ±àÅÅ¡¢´íÎó»Ö¸´¡¢ÐÔÄܼà²âµÈ¹¦ÄÜ£¬Âú×ãÓû§ÌáÉýÓ¦Óý»¸¶Ð§ÂʺͿìËÙÏìÓ¦ÒµÎñ±ä»¯µÄÐèÇó¡£ÍøÒ×ÔÆÈÝÆ÷ƽ̨ÆÚÍûÄܸøÊµÊ©ÁË΢·þÎñ¼Ü¹¹µÄÍŶÓÌṩÍêÕûµÄ½â¾ö·½°¸ºÍ±Õ»·µÄÓû§ÌåÑ飬Ϊ´Ë´Ó 2016 Ä꿪ʼ£¬ÎÒÃÇÈÝÆ÷·þÎñÍŶÓÄÚ²¿ÂÊÏÈ¿ªÊ¼½øÐÐ dogfooding ʵ¼ù£¬Ò»·½Ãæ¼ìÑéÈÝÆ÷ÔÆÆ½Ì¨Äܲ»ÄÜÖ§³ÅµÃÆðÈÝÆ÷·þÎñ±¾ÉíµÄ΢·þÎñ¼Ü¹¹£¬ÁíÒ»·½ÃæÍ¨¹ý΢·þÎñ»¯Êµ¼ù¾­Ñé·´²¸ÈÝÆ÷ÔÆÆ½Ì¨²úÆ·Éè¼Æ£¬ÕâÊÇÒ»´ÎºÜÓÐȤµÄ³¢ÊÔ£¬Ò²ÊÇÎÒÃÇ·ÖÏíÈÝÆ÷ÔÆÆ½Ì¨Î¢·þÎñ»¯¼Ü¹¹Êµ¼ùµÄ³õÖÔ¡£

ÔÚ̸ÈÝÆ÷·þÎñµÄ΢·þÎñ¼Ü¹¹Êµ¼ù֮ǰ£¬ÓбØÒªÏȰÑÍøÒ×ÔÆÈÝÆ÷·þÎñ´óÖÂ×ö¸ö½éÉÜ¡£Ä¿Ç°ÍøÒ×ÔÆÈÝÆ÷·þÎñÍŶÓÒÔ DevOps µÄ·½Ê½¹ÜÀí×Å30+΢·þÎñ£¬Ã¿Öܹ¹½¨²¿Êð´ÎÊý 400+¡£ÍøÒ×ÔÆÈÝÆ÷·þÎñ¼Ü¹¹´ÓÂß¼­ÉÏ¿´ÓÉ 4 ¸ö²ã´Î×é³É£¬´Óϵ½ÉÏ·Ö±ðÊÇ»ù´¡ÉèÊ©²ã¡¢Docker ÈÝÆ÷ÒýÇæ²ã¡¢Kubernetes £¨ÒÔϼò³Æ K8S£©ÈÝÆ÷±àÅŲ㡢DevOps ºÍ×Ô¶¯»¯¹¤¾ß²ã£º

ÈÝÆ÷ÔÆÆ½Ì¨ÕûÌåÒµÎñ¼Ü¹¹ÈçÏ£º

Å׿ªÈÝÆ÷·þÎñ¾ßÌåÒµÎñ²»Ì¸£¬½ö´ÓÒµÎñÌØÕ÷À´Ëµ£¬¿ÉÒÔ·Ö³ÉÒÔ϶àÖÖÀàÐÍ£¨À¨ºÅÄÚΪ¾ÙÀýµÄ΢·þÎñ£©£º

1.ÃæÏòÖÕ¶ËÓû§ £¨OpenAPI ·þÎñÍø¹Ø£©¡¢ÃæÏò·þÎñ£¨Âã»ú·þÎñ£©

2.ͬ²½Í¨ÐÅ£¨Óû§ÖÐÐÄ£©¡¢Ò첽ͨÐÅ£¨¹¹½¨·þÎñ£©

3.Êý¾ÝǿһÖÂÐèÇó£¨etcd ͬ²½·þÎñ£©¡¢×îÖÕÒ»ÖÂÐèÇó£¨×ÊÔ´»ØÊÕ·þÎñ£©

4.ÍÌÍÂÁ¿Ãô¸ÐÐÍ£¨ÈÕÖ¾·þÎñ£©¡¢ÑÓʱÃô¸ÐÐÍ£¨ÊµÊ±·þÎñ£©

5.CPU ¼ÆËãÃܼ¯ÐÍ£¨Ç©ÃûÈÏÖ¤ÖÐÐÄ£©¡¢ÍøÂç IO Ãܼ¯ÐÍ£¨¾µÏñ²Ö¿â£©

6.ÔÚÏßÒµÎñ£¨Web ·þÎñ£©¡¢ÀëÏßÒµÎñ£¨¾µÏñ¼ì²é£©

7.Åú´¦ÀíÈÎÎñ£¨¼Æ·ÑÈÕÖ¾ÍÆËÍ£©¡¢¶¨Ê±ÈÎÎñ£¨·Ö²¼Ê½¶¨Ê±ÈÎÎñ£©

8.³¤Á¬½Ó£¨WebSocket ·þÎñÍø¹Ø£©¡¢¶ÌÁ¬½Ó£¨Hook ·þÎñ£©

¡­¡­

Ò»µ©¾ö¶¨×ö΢·þÎñ¼Ü¹¹£¬ÓкܶàÏÖʵÎÊÌâ°ÚÔÚÃæÇ°£¬±ÈÈç¼¼ÊõÑ¡ÐÍ¡¢ÒµÎñ²ð·ÖÎÊÌâ¡¢¸ß¿ÉÓᢷþÎñͨÐÅ¡¢·þÎñ·¢ÏÖºÍÖÎÀí¡¢¼¯ÈºÈÝ´í¡¢ÅäÖùÜÀí¡¢Êý¾ÝÒ»ÖÂÐÔÎÊÌâ¡¢¿µÍþ¶¨ÂÉ¡¢·Ö²¼Ê½µ÷Óøú×Ù¡¢CI/CD¡¢Î¢·þÎñ²âÊÔ£¬ÒÔ¼°µ÷¶ÈºÍ²¿ÊðµÈµÈ......Õâ²¢·ÇһЩ¼òµ¥ÕÐÊýÄܹ»»¯½â¡£

×÷ΪÖ÷Òª±à³ÌÓïÑÔÊÇ Java µÄÈÝÆ÷·þÎñÀ´Ëµ£¬Ñ¡Ôñ Spring Cloud È¥´îÅä K8S ÊÇÒ»¸öºÜ×ÔÈ»µÄÊÂÇé¡£Spring Cloud ºÍ K8S ¶¼ÊǺܺõÄ΢·þÎñ¿ª·¢ºÍÔËÐпò¼Ü¡£´ÓÓ¦ÓõÄÉúÃüÖÜÆÚ½Ç¶ÈÀ´¿´£¬K8S ¸²¸ÇÁ˸ü¹ãµÄ·¶Î§£¬ÌرðÏñ×ÊÔ´¹ÜÀí£¬Ó¦ÓñàÅÅ¡¢²¿ÊðÓëµ÷¶ÈµÈ£¬Spring Cloud Ôò¶Ô´ËÎÞÄÜΪÁ¦¡£´Ó¹¦ÄÜÉÏ¿´£¬Á½Õß´æÔÚÒ»¶¨³Ì¶ÈµÄÖØµþ£¬±ÈÈç·þÎñ·¢ÏÖ¡¢¸ºÔؾùºâ¡¢ÅäÖùÜÀí¡¢¼¯ÈºÈÝ´íµÈ·½Ã棬µ«Á½Õß½â¾öÎÊÌâµÄ˼·ÍêÈ«²»Í¬£¬Spring Cloud ÃæÏòµÄ´¿´âÊÇ¿ª·¢Õߣ¬¿ª·¢ÕßÐèÒª´Ó´úÂë¼¶±ð¿¼ÂÇ΢·þÎñ¼Ü¹¹µÄ·½·½ÃæÃ棬¶ø K8S ÃæÏòµÄÊÇ DevOps ÈËÔ±£¬ÌṩµÄÊÇͨÓýâ¾ö·½°¸£¬ËüÊÔͼ½«Î¢·þÎñÏà¹ØµÄÎÊÌâ¶¼ÔÚÆ½Ì¨²ã½â¾ö£¬¶Ô¿ª·¢Õ߯Á±Î¸´ÔÓÐÔ¡£¾Ù¸ö¼òµ¥µÄÀý×Ó£¬¹ØÓÚ·þÎñ·¢ÏÖ£¬Spring Cloud ¸ø³öµÄÊÇ´«Í³µÄ´ø×¢²áÖÐÐÄ Eureka µÄ½â¾ö·½°¸£¬ÐèÒª¿ª·¢Õßά»¤ Eureka ·þÎñÆ÷µÄͬʱ£¬¸ÄÔì·þÎñµ÷Ó÷½Óë·þÎñÌṩ·½´úÂëÒÔ½ÓÈë·þÎñ×¢²áÖÐÐÄ£¬¿ª·¢ÕßÐè¹ØÐÄ»ùÓÚ Eureka ʵÏÖ·þÎñ·¢ÏÖµÄËùÓÐϸ½Ú¡£¶ø K8S ÌṩµÄÊÇÒ»ÖÖÈ¥ÖÐÐÄ»¯·½°¸£¬³éÏóÁË·þÎñ £¨Service£©£¬Í¨¹ý DNS + Cluster IP + iptables ½â¾ö·þÎñ±©Â¶ºÍ·¢ÏÖÎÊÌ⣬¶Ô·þÎñÌṩ·½ºÍ·þÎñµ÷Ó÷½¶øÑÔÍêȫûÓÐÇÖÈë¡£

¶ÔÓÚ¼¼ÊõÑ¡ÐÍ£¬ÎÒÃÇÓÐ×Ô¼ºµÄ¿¼Á¿£¬ÓÅÏÈÑ¡Ôñ¸üÎȶ¨µÄ·½°¸£¬±Ï¾¹Îȶ¨ÐÔÊÇÔÆ¼ÆËãµÄÉúÃüÏß¡£ÎÒÃDz¢²»ÊÇ ¡°K8S Ô­½ÌÖ¼Ö÷ÒåÕß¡±£¬¶ÔÓÚÇ°ÃæÌáµ½µÄ΢·þÎñ¼Ü¹¹µÄ¸÷Òªµã£¬ÎÒÃÇÓÐÑ¡Ôñ»ùÓÚ K8S ʵÏÖ£¬±ÈÈç·þÎñ·¢ÏÖ¡¢¸ºÔؾùºâ¡¢¸ß¿ÉÓᢼ¯ÈºÈÝ´í¡¢µ÷¶ÈÓ벿ÊðµÈ¡£ÓÐÑ¡ÔñʹÓà Spring Cloud ÌṩµÄ·½°¸£¬±ÈÈçͬ²½µÄ·þÎñ¼äͨÐÅ£»Ò²ÓнáºÏÁ½ÕßµÄÓÅÊÆ¹²Í¬ÊµÏÖ£¬±ÈÈç·þÎñµÄ¹ÊÕϸôÀëºÍÈÛ¶Ï£»µ±È»£¬Ò²ÓлùÓÚһЩ³ÉÊìµÄµÚÈý·½·½°¸ºÍ×ÔÑÐϵͳʵÏÖ£¬±ÈÈçÅäÖùÜÀí¡¢ÈÕÖ¾²É¼¯¡¢·Ö²¼Ê½µ÷Óøú×Ù¡¢Á÷¿ØÏµÍ³µÈ¡£

ÎÒÃÇÀûÓà K8S ¹ÜÀí΢·þÎñ´øÀ´µÄ×î´ó¸ÄÉÆÌåÏÖÔÚµ÷¶ÈºÍ²¿ÊðЧÂÊÉÏ¡£ÒÔÎÒÃǵ±Ç°µÄÇé¿öÀ´¿´£¬²»Í¬µÄ·þÎñÒªÇó²¿ÊðÔÚ²»Í¬µÄ»ú·¿ºÍ¼¯Èº£¨Áªµ÷»·¾³¡¢²âÊÔ»·¾³¡¢Ô¤·¢²¼»·¾³¡¢Éú²ú»·¾³µÈ£©£¬ÓÐ×Ų»Í¬ÐèÇóµÄÈíÓ²¼þÅäÖã¨ÄÚ´æ¡¢SSD¡¢°²È«¡¢º£Íâ·ÃÎʼÓËٵȣ©£¬ÕâЩÐèÇóÒѾ­½ÏÄÑͨ¹ý´«Í³µÄ×Ô¶¯»¯¹¤¾ßʵÏÖ¡£K8S ͨ¹ý¶Ô Node Ö÷»ú½øÐÐ Label »¯¹ÜÀí£¬ÎÒÃÇÖ»ÒªÖ¸¶¨·þÎñÊôÐÔ £¨Pod label£©£¬K8S µ÷¶ÈÆ÷¸ù¾Ý Pod ºÍ Node Label µÄÆ¥Åä¹ØÏµ£¬×Ô¶¯½«·þÎñ²¿Êðµ½Âú×ãÐèÇóµÄ Node Ö÷»úÉÏ£¬¼òµ¥¶ø¸ßЧ¡£ÄÚÖùö¶¯Éý¼¶²ßÂÔ£¬ÅäºÏ½¡¿µ¼ì²é £¨liveness ºÍ readiness ̽Õ룩ºÍ lifecycle hook ¿ÉÒÔÍê³É·þÎñµÄ²»Í£·þ¸üкͻعö¡£´ËÍ⣬ͨ¹ýÅäÖÃÏà¹Ø²ÎÊý»¹¿ÉÒÔʵÏÖ·þÎñµÄÀ¶Â̲¿ÊðºÍ½ð˿ȸ²¿Êð¡£¼¯ÈºÈÝ´í·½Ãæ£¬K8S ͨ¹ý¸±±¾¿ØÖÆÆ÷ά³Ö·þÎñ¸±±¾Êý £¨replica£©£¬ÎÞÂÛÊÇ·þÎñʵÀý¹ÊÕÏ£¨½ø³ÌÒì³£Í˳ö¡¢oom-killed µÈ£©»¹ÊÇ Node Ö÷»ú¹ÊÕÏ£¨ÏµÍ³¹ÊÕÏ¡¢Ó²¼þ¹ÊÕÏ¡¢ÍøÂç¹ÊÕϵȣ©£¬·þÎñ¸±±¾ÊýÄܹ»Ê¼ÖÕ±£³ÖÔڹ̶¨ÊýÁ¿¡£

Docker ͨ¹ý·Ö²ã¾µÏñ´´ÔìÐԵؽâ¾öÁËÓ¦ÓúÍÔËÐл·¾³µÄÒ»ÖÂÐÔÎÊÌ⣬µ«ÊÇͨ³£À´½²£¬²»Í¬»·¾³ÏµķþÎñµÄÅäÖÃÊDz»Ò»ÑùµÄ¡£ÅäÖõIJ»Í¬Ê¹µÃ¿ª·¢»·¾³¹¹½¨µÄ¾µÏñÎÞ·¨Ö±½ÓÔÚ²âÊÔ»·¾³Ê¹Óã¬QA ÔÚ²âÊÔ»·¾³ÑéÖ¤¹ýµÄ¾µÏñÎÞ·¨Ö±½Ó²¿Êðµ½ÏßÉÏ¡­¡­µ¼ÖÂÿ¸ö»·¾³µÄ Docker ¾µÏñ¶¼ÒªÖØÐ¹¹½¨¡£½â¾öÕâ¸öÎÊÌâµÄ˼·ÎÞ·ÇÊǽ«ÅäÖÃÐÅÏ¢ÌáÈ¡³öÀ´£¬ÒÔ»·¾³±äÁ¿µÄ·½Ê½ÔÚ Docker ÈÝÆ÷Æô¶¯Ê±×¢È룬K8S Ò²¸ø³öÁË ConfigMap ÕâÑùµÄ½â¾ö·½°¸£¬µ«ÕâÖÖ·½Ê½ÓÐÒ»¸öÎÊÌ⣬ÅäÖÃÐÅÏ¢±ä¸üºóÎÞ·¨ÊµÊ±ÉúЧ¡£ÎÒÃDzÉÓõÄÊÇʹÓà Disconf ͳһÅäÖÃÖÐÐĽâ¾ö¡£ÅäÖÃͳһÍйܺ󣬴ӿª·¢»·¾³¹¹½¨µÄÈÝÆ÷¾µÏñ£¬¿ÉÒÔÖ±½ÓÌá½»µ½²âÊÔ»·¾³²âÊÔ£¬QA Ñé֤ͨ¹ýºó£¬Éϵ½ÑÝÁ·»·¾³¡¢Ô¤·¢²¼»·¾³ºÍÉú²ú»·¾³¡£Ò»·½Ãæ±ÜÃâÁËÖØ¸´µÄÓ¦Óôò°üºÍ Docker ¾µÏñ¹¹½¨£¬ÁíÒ»·½ÃæÕæÕýʵÏÖÁËÏßÉÏÏßÏÂÓ¦ÓõÄÒ»ÖÂÐÔ¡£

Spring Cloud Hystrix ÔÚÎÒÃǵÄ΢·þÎñÖÎÀíÖаçÑÝÁËÖØÒª½ÇÉ«£¬ÎÒÃǶÔËü×öÁ˶þ´Î¿ª·¢£¬Ìṩ¸üÁé»îµÄ¹ÊÕϸôÀë¡¢½µ¼¶ºÍÈ۶ϲßÂÔ£¬Âú×ã API Íø¹ØµÈ·þÎñµÄÌØÊâÒµÎñÐèÇó¡£½ø³ÌÄڵĹÊÕϸôÀë½öÊÇ·þÎñÖÎÀíµÄÒ»·½Ã棬ÁíÒ»·½Ã棬ÔÚÒ»¸öÓ¦Óû첿µÄÖ÷»úÉÏ£¬Ó¦ÓüäÓ¦¸Ã»¥Ïà¸ôÀ룬±ÜÃâ½ø³Ì¼ä»¥ÇÀ×ÊÔ´£¬Ó°ÏìÒµÎñ SLA¡£±ÈÈç¾ø¶ÔÒª±ÜÃâÒ»¸öÀëÏßÓ¦ÓÃʧ¿ØÕ¼ÓÃÁË´óÁ¿ CPU£¬Ê¹µÃͬÖ÷»úµÄÔÚÏßÓ¦ÓÃÊÜÓ°Ïì¡£ÎÒÃÇͨ¹ý K8S ÏÞÖÆÁËÈÝÆ÷ÔËÐÐʱµÄ×ÊÔ´Åä¶î£¨ÒÔ CPU ºÍÄÚ´æÏÞÖÆÎªÖ÷£©£¬ÊµÏÖÁ˽ø³Ì¼äµÄ¹ÊÕϺÍÒì³£¸ôÀë¡£K8S ÌṩµÄ¼¯ÈºÈÝ´í¡¢¸ß¿ÉÓᢽø³Ì¸ôÀ룬ÅäºÏ Spring Cloud Hystrix ÌṩµÄ¹ÊÕϸôÀëºÍÈÛ¶Ï£¬Äܹ»ºÜºÃµØÊµ¼ù ¡° Design for Failure¡± Éè¼ÆÕÜѧ.

·þÎñ²ð·ÖµÄºÃ»µÖ±½ÓÓ°ÏìÁËʵʩ΢·þÎñ¼Ü¹¹µÄÊÕÒæ´óС¡£·þÎñ²ð·ÖµÄÄѵãÍùÍùÔÚÓÚÒµÎñ±ß½ç²»ÇåÎú¡¢ÀúÊ·ÒÅÁôϵͳ¸ÄÔìÄÑ¡¢Êý¾ÝÒ»ÖÂÐÔÎÊÌâ¡¢¿µÍþ¶¨Âɵȡ£´ÓÎÒÃǾ­ÑéÀ´¿´£¬¶ÔÓÚǰÁ½¸öÎÊÌâ½â¾ö˼·ÊÇÒ»ÑùµÄ£º1£©Ö»²ðÓÐÈ·¶¨±ß½çÄܶÀÁ¢µÄÒµÎñ¡£2£©·þÎñ²ð·Ö±¾ÖÊÉÏÊÇÊý¾ÝÄ£Ð͵IJð·Ö£¬ÉϲãÓ¦Óþ­µÃÆðµ¹ÌÚ£¬µ×²ãÊý¾ÝÄ£Ð;­²»Æðµ¹ÌÚ¡£¶ÔÓڱ߽çÄ£ºýµÄÒµÎñ£¬¼´Ê¹Òª²ð£¬Ö»²ðÓ¦Óò»²ðÊý¾Ý¿â¡£

ÒÔÏÂÊÇÎÒÃÇ´ÓÖ÷¹¤³ÌÀïÆ½»¬²ð³öÓû§·þÎñµÄʾÀý²½Ö裺

1.½«Óû§Ïà¹ØµÄ UserService¡¢UserDAO ·ÖÀë³öÖ÷¹¤³Ì£¬¼ÓÉÏ UserController ¡¢UserDTO µÈ£¬ÐγÉÓû§·þÎñ£¬¶ÔÍⱩ¶ HTTP RESTful API¡£

2.½«Ö÷¹¤³ÌÓû§Ïà¹ØµÄ UserService ÀàÌæ»»³É UserFa?ade À࣬²ÉÓà Spring Cloud Feign µÄ×¢½â£¬µ÷ÓÃÓû§·þÎñ API¡£

3.Ö÷¹¤³ÌËùÓÐÒÀÀµ UserServce ½Ó¿ÚµÄµØ·½£¬¸ÄΪÒÀÀµ UserFa?ade ½Ó¿Ú£¬Æ½»¬¹ý¶É¡£

¾­¹ýÒÔÉÏÈý¸ö²½Öè, Óû§·þÎñ¶ÀÁ¢³ÉÒ»¸ö΢·þÎñ£¬¶øÕû¸öϵͳ´úÂëµÄ¸´ÔÓÐÔ¼¸ºõûÓÐÔö¼Ó¡£

Êý¾ÝÒ»ÖÂÐÔÎÊÌâÔÚ·Ö²¼Ê½ÏµÍ³ÖÐÆÕ±é´æÔÚ£¬Î¢·þÎñ¼Ü¹¹Ï»ὫÎÊÌâ·Å´ó£¬ÕâÒ²´ÓÁíÒ»¸ö½Ç¶È˵Ã÷ºÏÀí²ð·ÖÒµÎñµÄÖØÒªÐÔ¡£ÎÒÃÇÅöµ½µÄ´ó²¿·ÖÊý¾ÝÒ»ÖÂÐÔ³¡¾°¶¼ÊÇ¿ÉÒÔ½ÓÊÜ×îÖÕÒ»Öµġ£¡°¶¨Ê±ÈÎÎñÖØÊÔ+Ãݵȡ± Êǽâ¾öÕâÀàÎÊÌâµÄÒ»°ÑÈðÊ¿¾üµ¶£¬Îª´ËÎÒÃÇ¿ª·¢ÁËÒ»Ì×¶ÀÁ¢ÓÚ¾ßÌåÒµÎñµÄ ¡°·Ö²¼Ê½¶¨Ê±ÈÎÎñ+¿É¿¿Ê¼þ¡± ´¦Àí¿ò¼Ü£¬½«ÈκÎÐè±£Ö¤Êý¾Ý×îÖÕÒ»ÖµIJÙ×÷¶¨ÒåΪһÖÖʼþ£¬±ÈÈçÓû§³õʼ»¯¡¢ÊµÀýÖØ½¨¡¢×ÊÔ´»ØÊÕ¡¢ÈÕÖ¾Ë÷ÒýµÈÒµÎñ³¡¾°¡£ÒÔÓû§³õʼ»¯ÎªÀý£¬×¢²áÒ»¸öÓû§ºó£¬±ØÐë¶ÔÆä½øÐгõʼ»¯£¬³õʼ»¯¹ý³ÌÊÇÒ»¸öºÄʱµÄÒì²½²Ù×÷£¬°üº¬×â»§³õʼ»¯¡¢ÍøÂç³õʼ»¯¡¢Åä¶î³õʼ»¯µÈµÈ£¬ÕâÐèҪЭµ÷²»Í¬µÄϵͳÀ´Íê³É¡£ÎÒÃǽ«³õʼ»¯¶¨ÒåΪһÖÖ initTenant ʼþ£¬½« initTenant ʼþ¼°ÉÏÏÂÎÄ´æÈë¿É¿¿Ê¼þ±í£¬ÓÉ·Ö²¼Ê½¶¨Ê±ÈÎÎñ´¥·¢Ê¼þÖ´ÐУ¬Ö´Ðгɹ¦ºó£¬Çå³ý¸Ãʼþ¼Ç¼£»Èç¹ûÖ´ÐÐʧ°Ü£¬Ôò¶¨Ê±ÈÎÎñϵͳ»áÔٴδ¥·¢Ö´ÐС£¶ÔÓÚijЩʵʱÐÔÒªÇó½Ï¸ßµÄ³¡¾°£¬Ôò¿ÉÒÔÏÈ´¥·¢Ò»´Îʼþ´¦Àí£¬ÔÙ½«Ê¼þ´æÈë¿É¿¿Ê¼þ±í¡£¶ÔÓÚÿ¸öʼþ´¦ÀíÆ÷À´Ëµ£¬ÒªÔÚʵÏÖÉÏÈ·±£Ö§³ÖÃݵÈÖ´ÐУ¬ÊµÏÖÃݵÈÖ´ÐÐÓжàÖÖ·½Ê½£¬ÎÒÃÇÓÐÓõ½²¼¶ûÐÍ״̬룬ÓÐÓõ½ UUID ×öÈ¥ÖØ´¦Àí£¬Ò²ÓÐÓõ½»ùÓÚ°æ±¾ºÅ×ö CAS¡£ÕâÀï²»Õ¹¿ªËµÁË¡£

´ÓÎÒÃǵÄʵ¼ù¾­ÑéÀ´¿´£¬µ±ÒµÎñ±ß½çÓë×éÖ¯¼Ü¹¹³åͻʱ£¬ÄþԸѡÔñ¸ü¼Ó·ûºÏ×éÖ¯¼Ü¹¹µÄ·þÎñ²ð·Ö±ß½ç¡£ÕâÒ²ÊÇÒ»ÖÖ·ûºÏ¿µÍþ¶¨ÂɵÄ×ö·¨¡£¿µÍþ¶¨ÂÉ˵£¬ÏµÍ³¼Ü¹¹µÈͬÓÚ×éÖ¯µÄ¹µÍ¨½á¹¹¡£×éÖ¯¼Ü¹¹»áÔÚÇ±ÒÆÄ¬»¯ÖÐÔ¼ÊøÈí¼þϵͳ¼Ü¹¹µÄÐÎ̬¡£Î¥±³¿µÍþ¶¨ÂÉ£¬·Ç³£ÈÝÒ׳öÏÖϵͳÉè¼ÆÃ¤Çø£¬³öÏÖ ¡°Á½²»¹Ü¡± »¥ÏàÍÆÍѵľÖÃæ£¬ÎÒÃÇÔÚÍŶӼ䡢ÍŶÓÄÚ¶¼Åöµ½¹ýÕâÖÖÇé¿ö¡£

±¾ÎÄÊÇ¡¶ÍøÒ×ÈÝÆ÷ÔÆÆ½Ì¨µÄ΢·þÎñ»¯Êµ¼ù¡·ÏµÁÐÎÄÕµĵÚһƪ£¬ÏÞÓÚÆª·ù£¬ÓÐЩ΢·þÎñ¼Ü¹¹Òªµã²¢Î´Õ¹¿ª£¬±ÈÈç·þÎñͨÐÅ¡¢·þÎñ·¢ÏÖºÍÖÎÀí¡¢ÅäÖùÜÀíµÈ»°Ì⣻ÓÐЩδÌá¼°£¬±ÈÈç·Ö²¼Ê½µ÷Óøú×Ù¡¢CI/CD¡¢Î¢·þÎñ²âÊԵȻ°Ì⣬ÕâЩ·½ÃæµÄʵ¼ù¾­Ñé»áÔÚºóÐøµÄϵÁÐÎÄÕÂÖÐÔÙ×ö·ÖÏí¡£Êµ¼ù΢·þÎñ¼Ü¹¹µÄ·½Ê½ÓÐǧÍòÖÖ£¬ÎÒÃÇ̽Ë÷²¢Êµ¼ùÁËÆäÖеÄÒ»ÖÖ¿ÉÄÜÐÔ£¬Ï£Íû¿ÉÒÔ¸ø´ó¼ÒÒ»¸ö²Î¿¼¡£

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

ÔÆ¼ÆËãµÄ¼Ü¹¹
¶ÔÔÆ¼ÆËã·þÎñÄ£ÐÍ
ÔÆ¼ÆËãºËÐļ¼ÊõÆÊÎö
Á˽âÔÆ¼ÆËãµÄ©¶´
Ïà¹ØÎĵµ

ÔÆ¼ÆËã¼ò½é
ÔÆ¼ÆËã¼ò½éÓëÔÆ°²È«
ÏÂÒ»´úÍøÂç¼ÆËã--ÔÆ¼ÆËã
ÈídzÎöÔÆ¼ÆËã
Ïà¹Ø¿Î³Ì

ÔÆ¼ÆËãÔ­ÀíÓëÓ¦ÓÃ
ÔÆ¼ÆËãÓ¦ÓÃÓ뿪·¢
CMMIÌåϵÓëʵ¼ù
»ùÓÚCMMI±ê×¼µÄÈí¼þÖÊÁ¿±£Ö¤