ÒýÑÔ£ºÉÏÆªÎÄÕ½éÉÜÁË΢·þÎñºÍµ¥Ìå¼Ü¹¹µÄÇø±ð¡¢Î¢·þÎñµÄÉè¼Æ¡¢ÏûÏ¢¡¢·þÎñ¼äͨÐÅ¡¢Êý¾ÝÈ¥ÖÐÐÄ»¯£¬±¾Æª»á¼ÌÐøÉîÈë΢·þÎñ£¬½éÉÜÆäËüÌØÐÔ¡£
ÖÎÀíÈ¥ÖÐÐÄ»¯
ͨ³£¡°ÖÎÀí¡±µÄÒâ˼Êǹ¹½¨·½°¸£¬²¢ÇÒÆÈʹÈËÃÇͨ¹ýŬÁ¦´ïµ½×éÖ¯µÄÄ¿±ê¡£SOAÖÎÀíÖ¸µ¼¿ª·¢Õß¿ª·¢¿ÉÖØÓõķþÎñ£¬ÒÔ¼°Ëæ×Åʱ¼äÍÆÒÆ£¬·þÎñÓ¦¸ÃÔõô±»Éè¼ÆºÍ¿ª·¢¡£ÖÎÀí½¨Á¢ÁË·þÎñÌṩÕߺÍÏû·ÑÕßÖ®¼ä¶ÔÓÚ·þÎñµÄж¨£¬¸æËßÏû·ÑÕßÄÜ´Ó·þÎñÌṩ»ñÈ¡µ½Ê²Ã´ÑùµÄÖ§³Ö¡£
SOAÖÐÓÐÁ½ÖÖ³£¼ûµÄÖÎÀí£º
Éè¼ÆÊ±µÄÖÎÀí-¶¨ÒåºÍ¿ØÖÆ·þÎñµÄ´´½¨¡¢Éè¼ÆºÍ·þÎñ²ßÂÔµÄʵʩ¡£
ÔËÐÐʱµÄÖÎÀí-È·±£Ö´Ðйý³ÌµÄ²ßÂÔ¡£
ÄÇô΢·þÎñÖеÄÖÎÀíÊÇʲôÒâË¼ÄØ?
ÔÚ΢·þÎñ¼Ü¹¹ÖУ¬²»Í¬µÄ΢·þÎñÖ®¼äÏ໥¶ÀÁ¢£¬²¢ÇÒ»ùÓÚ²»Í¬µÄƽ̨ºÍ¼¼Êõ¡£Òò´Ë£¬Ã»ÓбØÒªÎª·þÎñµÄÉè¼ÆºÍ¿ª·¢¶¨ÒåÒ»¸öͨÓõıê×¼¡£
×ܽá΢·þÎñµÄÖÎÀíÈ¥ÖÐÐÄ»¯ÈçÏ£º
΢·þÎñ¼Ü¹¹£¬ÔÚÉè¼ÆÊ±²»ÐèÒª¼¯Öп¼ÂÇÖÎÀí¡£
ÿ¸ö΢·þÎñ¿ÉÒÔÓжÀÁ¢µÄÉè¼Æ¡¢Ö´Ðоö²ß¡£
΢·þÎñ¼Ü¹¹×ÅÖØÅàÑøÍ¨ÓÃ/¿ÉÖØÓõķþÎñ¡£
ÔËÐÐʱµÄÖÎÀí£¬±ÈÈ簲ȫ¼¶±ð±£Ö¤(SLA)£¬ÏÞÖÆ£¬¼à¿Ø£¬°²È«ºÍ·þÎñ·¢ÏÖ£¬¿ÉÒÔÔÚAPIÍø¹Ø²ã´¦Àí¡£
·þÎñ×¢²áºÍ·¢ÏÖ
΢·þÎñ¼Ü¹¹Ï£¬ÓдóÁ¿µÄ΢·þÎñÐèÒª´¦Àí¡£ÓÉÓÚ΢·þÎñµÄ¿ìËÙºÍÃô½ÝÑз¢£¬ËûÃǵÄλÖÿÉÄܻᶯ̬±ä»¯¡£Òò´ËÔÚÔËÐÐʱÐèÒªÄܹ»·¢ÏÖ·þÎñËùÔÚµÄλÖ㬷þÎñ·¢ÏÖ¿ÉÒÔ½â¾öÕâ¸öÎÊÌâ¡£
·þÎñ×¢²á
×¢²áÖÐÐÄÓÐ΢·þÎñµÄʵÀýºÍλÖÃÐÅÏ¢£¬Î¢·þÎñÔÚÆô¶¯Ê±Ïò×¢²áÖÐÐÄ×¢²á×Ô¼ºµÄÐÅÏ¢£¬¹Ø±ÕʱעÏú¡£ÆäËüʹÓÃÕßÄܹ»Í¨¹ý×¢²áÖÐÐÄÕÒµ½¿ÉÓõÄ΢·þÎñºÍÏà¹ØÐÅÏ¢¡£
·þÎñ·¢ÏÖ
ΪÁËÄÜÕÒµ½¿ÉÓõķþÎñºÍËûÃǵÄλÖÃÐÅÏ¢£¬ÐèÒª·þÎñ·¢ÏÖ»úÖÆ¡£ÓÐÁ½ÖÖ·¢ÏÖ»úÖÆ£¬¿Í»§¶Ë·¢ÏֺͷþÎñ¶Ë·¢ÏÖ¡£
¿Í»§¶Ë·¢ÏÖ - ¿Í»§¶Ë»òÕßAPIÍø¹ØÍ¨¹ý²éѯ·þÎñ×¢²áÖÐÐÄ»òÕß·þÎñµÄλÖÃÐÅÏ¢¡£

ͼ9£º¿Í»§¶Ë·¢ÏÖ
¿Í»§¶Ë/APIÍø¹Ø±ØÐëµ÷Ó÷þÎñ×¢²áÖÐÐÄ×é¼þ£¬ÊµÏÖ·þÎñ·¢ÏÖµÄÂß¼¡£
·þÎñ¶Ë·¢ÏÖ - ¿Í»§¶Ë/APIÍø¹Ø°ÑÇëÇó·¢Ë͵½ÒÑ֪λÖÃÐÅÏ¢µÄ×é¼þ(±ÈÈç¸ºÔØ¾ùºâÆ÷)¡£×é¼þÈ¥·ÃÎÊ×¢²áÖÐÐÄ£¬ÕÒµ½Î¢·þÎñµÄλÖÃÐÅÏ¢¡£

ͼ10£º·þÎñ¶Ë·¢ÏÖ
ÀàËÆKubernetes(http://kubernetes.io/v1.1/docs/user-guide/services.html
)ÕâÖÖ΢·þÎñ²¿Êð½â¾ö·½°¸£¬¾ÍÌṩÁË·þÎñÆ÷¶ËµÄ×Ô¶¯·¢ÏÖ»úÖÆ¡£
²¿Êð
΢·þÎñµÄ²¿Êð·½Ê½Ò²ÌرðÖØÒª£¬ÒÔÏÂÊǹؼü£º
Äܹ»¶ÀÁ¢ÓÚÆäËû΢·þÎñ·¢²¼»òÕßÈ¡Ïû·¢²¼
΢·þÎñ¿ÉÒÔˮƽÀ©Õ¹(ijһ¸ö·þÎñ±ÈÆäËûµÄÇëÇóÁ¿´ó)
¿ìËÙ¹¹½¨ºÍ·¢²¼
΢·þÎñÖ®¼äµÄ¹¦Äܲ»Ï໥ӰÏì
Docker(Ò»¸öÔËÐÐÔÚlinuxÉϲ¢ÇÒ¿ªÔ´µÄÓ¦Óã¬Äܹ»ÐÖú¿ª·¢ºÍÔËά°ÑÓ¦ÓÃÔËÐÐÔÚÈÝÆ÷ÖÐ)Äܹ»¿ìËÙ²¿Êð΢·þÎñ£¬°üÀ¨¹Ø¼ü¼¸µã£º
°Ñ΢·þÎñ´ò°ü³ÉDocker¾µÏñ
Æô¶¯ÈÝÆ÷ʵÀý
¸Ä±äʵÀýµÄÊýÁ¿´ïµ½À©ÈÝÐèÇó
Ïà¶ÔÓÚ´«Í³µÄÐéÄâ»úģʽ£¬ÀûÓÃdockerÈÝÆ÷£¬¹¹½¨¡¢·¢²¼¡¢Æô¶¯Î¢·þÎñ½«»á±äµÃÊ®·Ö¿ì½Ý¡£
ͨ¹ýKubernetesÄܹ»½øÒ»²½À©Õ¹DockerµÄÄÜÁ¦£¬Äܹ»´Óµ¥¸ölinuxÖ÷»úÀ©Õ¹µ½linux¼¯Èº£¬Ö§³Ö¶àÖ÷»ú£¬¹ÜÀíÈÝÆ÷λÖ㬷þÎñ·¢ÏÖ£¬¶àʵÀý¡£¶¼ÊÇ΢·þÎñÐèÇóµÄÖØÒªÌØÐÔ¡£Òò´Ë£¬ÀûÓÃKubernetes¹ÜÀí΢·þÎñºÍÈÝÆ÷µÄ·¢²¼£¬ÊÇÒ»¸ö·Ç³£ÓÐÁ¦µÄ·½°¸¡£

ͼ11£º¹¹½¨ºÍ²¿Êð·þÎñµÄÈÝÆ÷
ͼ11£¬Õ¹Ê¾ÁËÁãÊÛÓ¦ÓõÄ΢·þÎñ²¿Êð¡£Ã¿¸ö·þÎñ¶¼ÔÚ¶ÀÁ¢µÄÈÝÆ÷ÖУ¬Ã¿¸öÖ÷»úÓÐÁ½¸öÈÝÆ÷£¬Í¨¹ýkubernetes¿ÉÒÔËæÒâµ÷ÕûÈÝÆ÷µÄÊýÁ¿¡£
°²È«
ÔÚʵ¼ÊÔËÐл·¾³ÖУ¬Î¢·þÎñµÄ°²È«Ò²·Ç³£ÖØÒª¡£ÎÒÃÇÏÈ¿´Ïµ¥Ìå¼Ü¹¹Ï°²È«ÊÇÈçºÎʵÏֵġ£
Ò»¸öµäÐ͵ĵ¥ÌåÓ¦Ó㬰²È«ÎÊÌâÖ÷ÒªÊÇ¡°Ëµ÷Óá±£¬¡°µ÷ÓÃÕßÄÜ×öʲô¡±£¬¡°ÈçºÎ´¦Àí¡±¡£·þÎñÆ÷½ÓÊÕµ½ÇëÇóºó£¬Ò»°ã¶¼ÔÚ´¦ÀíÁ´ÌõµÄ×ʼ£¬Í¨¹ý°²È«×é¼þÀ´¶ÔÇëÇóµÄÐÅÏ¢½øÐа²È«´¦Àí¡£
ÎÒÃÇÄÜÖ±½Ó°ÑÕâÖÖ´¦Àí·½Ê½Ó¦ÓÃÔÚ΢·þÎñ¼Ü¹¹ÖÐÂð?´ð°¸ÊÇ¿ÉÒԵģ¬ÐèÒªÂò¸ö΢·þÎñ¶¼ÊµÏÖÒ»¸ö°²È«×é¼þ´Ó×ÊÔ´ÖÐÐÄ»ñÈ¡¶ÔÓ¦µÄÓû§ÐÅÏ¢£¬ÊµÏÖ°²È«¿ØÖÆ¡£ÕâÊDZȽϳõ¼¶µÄ´¦Àí·½Ê½¡£¿ÉÒÔ³¢ÊÔ²ÉÓÃһЩ±ê×¼µÄAPI·½Ê½£¬±ÈÈçOAuth2ºÍOpenID¡£ÉîÈëÑо¿Ö®Ç°£¬¿ÉÒÔÏȸÅÀ¨ÏÂÕâÁ½ÖÖ°²È«ÐÒéÒÔ¼°ÈçºÎʹÓá£
OAuth2-ÊÇÒ»¸ö·ÃÎÊίÍÐÐÒé¡£ÐèÒª»ñµÃȨÏ޵Ŀͻ§¶Ë£¬ÏòÊÚȨ·þÎñÉêÇëÒ»¸ö·ÃÎÊÁîÅÆ¡£·ÃÎÊÁîÅÆÃ»ÓÐÈκιØÓÚÓû§/¿Í»§¶ËµÄÐÅÏ¢£¬½ö½öÊÇÒ»¸ö¸øÊÚȨ·þÎñÆ÷ʹÓõÄÓû§ÒýÓÃÐÅÏ¢¡£Òò´Ë£¬Õâ¸ö¡°ÒýÓõÄÁîÅÆ¡±Ò²Ã»Óа²È«ÎÊÌâ¡£
OpenIDÀàËÆÓÚOAuth£¬²»¹ý³ýÁË·ÃÎÊÁîÅÆÒÔÍ⣬ÊÚȨ·þÎñÆ÷»¹»á°ä·¢Ò»¸öIDÁîÅÆ£¬°üº¬Óû§ÐÅÏ¢¡£Í¨³£ÓÉÊÚȨ·þÎñÆ÷ÒÔJWT(JSON
Web Token)µÄ·½Ê½ÊµÏÖ¡£Í¨¹ýÕâÖÖ·½Ê½È·±£¿Í»§ºÍ·þÎñÆ÷¶ËµÄ»¥ÐÅ¡£JWTÁîÅÆÊÇÒ»ÖÖ¡°ÓÐÄÚÈݵÄÁîÅÆ¡±£¬°üº¬Óû§µÄÉí·ÝÐÅÏ¢£¬ÔÚ¹«¹²»·¾³ÖÐʹÓò»°²È«¡£
ÏÖÔÚÎÒÃÇ¿´ÏÂÈçºÎÔÚÍøÂçÁãÊÛÍøÕ¾ÖÐÓ¦ÓÃÕâЩÐÒé±£ÕÏ΢·þÎñµÄ°²È«¡£

ͼ12£ºÍ¨¹ýOAuth2ºÍOpenID½â¾ö°²È«ÎÊÌâ
ͼ12ÖÐËùʾ£¬ÊÇʵÏÖ΢·þÎñ°²È«µÄ¹Ø¼ü¼¸²½£º
ËùÓеÄÊÚȨÓÉÊÚȨ·þÎñÆ÷£¬Í¨¹ýOAuthºÍOpenID·½Ê½ÊµÏÖ£¬È·±£Óû§ÄÜ·ÃÎʵ½ÕýÈ·µÄÊý¾Ý¡£
²ÉÓÃAPIÍø¹Ø·½Ê½£¬ËùÓеĿͻ§¶ËÇëÇóÓÐΨһÈë¿Ú¡£
¿Í»§¶Ëͨ¹ýÊÚȨ·þÎñÆ÷»ñµÃ·ÃÎÊÁîÅÆ£¬°ÑÁîÅÆ·¢Ë͵½APIÍø¹Ø¡£
ÁîÅÆÔÚÍø¹ØµÄ´¦Àí - APIÍø¹ØµÃµ½ÁîÅÆºó£¬·¢Ë͵½ÊÚȨ·þÎñÆ÷»ñµÃJWT¡£
Íø¹Ø°ÑJWTºÍÇëÇóÒ»Æð·¢Ë͵½Î¢·þÎñÖС£
JWT°üº¬±ØÒªµÄÓû§ÐÅÏ¢£¬Èç¹ûÿ¸ö΢·þÎñ¶¼Äܹ»½âÎöJWT£¬ÄÇôÄãµÄϵͳÖÐÿ¸ö·þÎñ¶¼ÄÜ´¦ÀíÉí·ÝÏà¹ØµÄÒµÎñ¡£ÔÚÿ¸ö΢·þÎñÖУ¬¿ÉÒÔÓÐÒ»¸ö´¦ÀíJWTµÄÇáÁ¿¼¶µÄ×é¼þ¡£
ÊÂÎñ
ÔÚ΢·þÎñÖÐÔõô֧³ÖÊÂÎñÄØ?ÊÂʵÉÏ£¬¿ç¶à¸ö΢·þÎñµÄ·Ö²¼Ê½ÊÂÎñÖ§³Ö·Ç³£¸´ÔÓ£¬Î¢·þÎñµÄÉè¼ÆË¼Â·ÊǾ¡Á¿±ÜÃâ¶à¸ö·þÎñÖ®¼äµÄÊÂÎñ²Ù×÷¡£
½â¾ö°ì·¨ÊÇ΢·þÎñµÄÉè¼ÆÐèÒª×ñѹ¦ÄÜ×Ô°üº¬ºÍµ¥Ö°ÔðÔÔò¡£¿çÔ½¶à¸ö΢·þÎñÖ§³Ö·Ö²¼Ê½ÊÂÎñÔÚ΢·þÎñ¼Ü¹¹Öв»ÊÇÒ»¸öºÃµÄÉè¼ÆË¼Â·£¬Í¨³£ÐèÒªÖØÐ»®¶¨Î¢·þÎñµÄÖ°Ôð¡£Ä³Ð©³¡¾°Ï£¬±ØÐëÒª¿çÔ½·þÎñÖ§³Ö·Ö²¼Ê½ÊÂÎñ£¬¿ÉÒÔÔÚÿ¸ö΢·þÎñÄÚ²¿ÀûÓá°×éºÏ²Ù×÷¡±¡£
×î¹Ø¼üµÄÊÂÇéÊÇ£¬»ùÓÚµ¥Ö°ÔðÔÔòÉè¼ÆÎ¢·þÎñ£¬Èç¹ûij¸ö·þÎñ²»ÄÜÕý³£Ö´ÐÐijЩ²Ù×÷£¬ÄÇôÕâ¸ö·þÎñÊÇÓÐÎÊÌâµÄ¡£ÄÇôÉÏÓεIJÙ×÷£¬¶¼ÐèÒªÔÚ¸÷×ÔµÄ΢·þÎñÖÐÖ´Ðлعö²Ù×÷¡£
ÈÝ´íÉè¼Æ
΢·þÎñ¼Ü¹¹Ïà±È½Ïµ¥ÌåµÄÉè¼Æ¶øÑÔ£¬ÒýÈëÁ˸ü¶à·þÎñ£¬ÔÚÿ¸ö·þÎñ¼¶±ð»áÔö¼Ó·¢Éú´íÎóµÄ¿ÉÄÜÐÔ¡£Ò»¸ö·þÎñ¿ÉÄÜÓÉÓÚÍøÂçÎÊÌâ¡¢µ×²ã×ÊÔ´µÈ¸÷ÖÖÎÊÌâµ¼ÖÂʧ°Ü¡£Ä³¸ö·þÎñµÄ²»¿ÉÄܲ»Ó¦¸ÃÓ°ÏìÕû¸öÓ¦ÓõıÀÀ£¡£Òò´Ë£¬Î¢·þÎñϵͳ±ØÐëÈÝ´í£¬ÉõÖÁ×Ô¶¯»Ø¸´£¬¶Ô¿Í»§¶ËÎÞ¸ÐÖª¡£
ÈκηþÎñÔÚÈκÎʱ¼ä¶¼ÓпÉÄܳöÎÊÌ⣬¼à¿ØÏµÍ³ÐèÒªÄܹ»·¢ÏÖÎÊÌ⣬²¢ÇÒ×Ô¶¯»Ö¸´¡£Î¢·þÎñ»·¾³ÏÂÓв»ÉÙ³£ÓõÄģʽ¡£
Ïß·ÖжÏ
΢·þÎñÖÐÇëÇóµÄʧ°ÜÂÊ´ïµ½Ò»¶¨³Ì¶Èºó£¬ÏµÍ³ÖÐµÄ¼à¿Ø¿ÉÒÔ¼¤»îÏß·Öжϡ£µ±Õý³£ÇëÇóµÄÊýÁ¿»Ö¸´µ½Ò»¶¨³Ì¶Èºó£¬ÔٹرÕÏß·ÖжϵĿª¹Ø£¬Ê¹ÏµÍ³»Ø¸´µ½Õý³£×´Ì¬¡£
Õâ¸öģʽ¿ÉÒÔ±ÜÃâ²»±ØÒªµÄ×ÊÔ´ÏûºÄ£¬ÇëÇóµÄ´¦ÀíÑӳٻᵼÖ³¬Ê±£¬½è´Ë¿ÉÒÔ°Ñ¼à¿ØÏµÍ³×öµÄ¸üÍêÉÆ¡£
·À»ðǽ
Ò»¸öÓ¦ÓûáÓкܶà΢·þÎñ×â³µ£¬µ¥¸ö΢·þÎñµÄʧ°Ü²»Ó¦¸ÃÓ°ÏìÕû¸öϵͳ¡£·À»ðǽģʽǿµ÷·þÎñÖ±½ÓµÄ¸ôÀëÐÔ£¬Î¢·þÎñ²»»áÊܵ½ÆäËü΢·þÎñʧ°ÜµÄÓ°Ïì¡£
´¦Àí³¬Ê±
³¬Ê±»úÖÆÊÇÔÚÈ·¶¨²»»áÔÙÓÐÓ¦´ðµÄÇé¿öÏ£¬Ö÷¶¯·ÅÆúµÈ´ý΢·þÎñµÄÏìÓ¦¡£ÕâÖÖ³¬Ê±Ó¦¸ÃÊÇ¿ÉÅäÖõġ£
ÄÄЩÇé¿öÏ£¬ÈçºÎʹÓÃÕâÐ©Ä£Ê½ÄØ?´ó¶àÊýÇé¿ö£¬¶¼Ó¦¸ÃÔÚÍø¹Ø´¦Àí¡£µ±Î¢·þÎñ²»¿ÉÓûòÕßûÓлظ´Ê±£¬Íø¹ØÄܹ»¾ö¶¨ÊÇ·ñÖ´ÐÐÏß·ÖжϻòÕ߯ô¶¯³¬Ê±»úÖÆ¡£·À»ðǽ»úÖÆÍ¬ÑùÖØÒª£¬Íø¹ØÊÇËùÓÐÇëÇóµÄΨһÈë¿Ú£¬Ò»¸ö΢·þÎñµÄʧ°Ü²»Ó¦¸ÃÓ°Ïìµ½ÆäËü΢·þÎñ¡£Íø¹ØÒ²ÊÇ»ñµÃ΢·þÎñ״̬¡¢¼à¿ØÐÅÏ¢µÄÖÐÐÄ¡£
΢·þÎñ£¬ÆóÒµ¼¯³É£¬API¹ÜÀí
ÎÒÃÇÒѾÌÖÂÛÁË΢·þÎñµÄ¼Ü¹¹ºÍ¸÷ÖÖÌØÐÔ£¬ÒÔ¼°ÈçºÎÓ¦ÓÃÔÚÒ»¸öÏÖ´úµÄITϵͳÖС£Í¬Ê±Ò²ÐèÒªÒâʶµ½£¬Î¢·þÎñ²»Êǽâ¾öËùÓÐÎÊÌâµÄÁ鵤ÃîÒ©¡£Ã¤Ä¿×·ÇóÁ÷Ðеļ¼Êõ¸ÅÄî²¢²»Äܽâ¾öµôÆóÒµITϵͳµÄÎÊÌâ¡£
΢·þÎñÓкܶàÓÅÊÆ£¬µ«Êǽö¿¿Î¢·þÎñ²»Äܽâ¾öÆóÒµITÖеÄËùÓÐÎÊÌâ¡£ÀýÈ磬΢·þÎñÐèҪȥ³ýESB£¬µ«ÊÇÏÖʵµÄITϵͳÖУ¬´óÁ¿µÄÓ¦ÓúͷþÎñÊÇ»ùÓÚESB¶ø²»ÊÇ΢·þÎñ¡£¼¯³ÉÏÖÓеÄϵͳ£¬ÐèҪһЩ¼¯³É×ÜÏß¡£Êµ¼ÊÇé¿öÊÇ£¬Î¢·þÎñºÍÆäËüÆóÒµ¼Ü¹¹²¢´æ¡£
|