1 SOAÊÇʲô
SOAµÄÈ«³ÆÊÇService-Oriented Architecture£¬ÃæÏò·þÎñ¼Ü¹¹¡£ÊÇÒ»Öּܹ¹£¬²»ÊÇÒ»ÖÖ¾ßÌåµÄ¿ª·¢¼¼Êõ¡£
SOAµÄ³öÏÖ£¬Ô¤Ê¾×ÅÒ»¸öÒÔ·þÎñΪµ¼ÏòµÄÐÂIT£¨Information Technology£©Ê±´úµÄµ½À´¡£
SOA·þÎñµÄÀíÄî˼Ï룬±¾ÖÊÉÏÊÇÒ»ÖÖÒµÎñºÍ¼¼ÊõÍêÈ«·ÖÀ룬ҵÎñÓÖÄܺͼ¼Êõ×ÔÓÉ×éºÏµÄ˼Ï룬Ëü´ïµ½ÁËÈí¼þÉè¼ÆµÄ×î¸ß¾³½ç¡£
SOAÊÇΪÈí¼þ¼¯³É¶ø·þÎñµÄ£¬ËüʵÏÖÁ˼¼ÊõºÍ¼Ü¹¹µÄÍêÈ«·ÖÀ룬Ïû³ýÁËÈí¼þ·þÎñ¼¯³ÉµÄËùÓÐÕϰ¡£
SOA³¬Ô½ÁËËùÓеľßÌå¼¼Êõ£¨ÈçWebService£©£¬Ò²³¬Ô½ÁËËùÓоßÌåµÄ¼Ü¹¹£¨ESB£©£¬Í¬Ê±£¬SOAÒ²°üº¬ÕâЩ¾ßÌåµÄ¼¼ÊõºÍ¼Ü¹¹¡£
SOAÔÚJavaÁìÓòÓÐÁ½Ì×±ê×¼£ºÒ»¸öÊÇSUNÍÆ³öµÄJBI£¨Ã»Óеõ½BEAºÍIBMµÄ³ÐÈÏ£©£¬ÁíÍâÒ»¸öÊÇ£ºIBMºÍBEAµÈ¹«Ë¾ÍƳöµÄSCAºÍSDO±ê×¼¡£
ÒªÕæÕýÀí½âʲôÊÇSOAÐèÒª´ÓÈí¼þ¿ª·¢µÄ¼¼Êõ·¢Õ¹Ê·Ì¸Æð¡£ÕæÕýµÄÈí¼þ¿ª·¢´Ó¿ªÊ¼µ½ÏÖÔÚ¾ÀúÁËËĸö½×¶Î£¬Ò²¿ÉÒÔ˵³ÉÊÇËÄ´ú£º
»ã±àÓïÑÔ¿ª·¢£» ÃæÏò¹ý³ÌµÄÈí¼þ£» ÃæÏò¶ÔÏóµÄ×é¼þ¿ª·¢£» ÃæÏò·þÎñµÄ¼Ü¹¹¿ª·¢£¬Ò²ÊǽñÌìҪ̸ÂÛµÄSOA¼Ü¹¹£»
SOAÓëÇ°ÃæÈý´úµÄÈí¼þ¿ª·¢¼¼Êõ¶Ô±È£¬²»Í¬µãÊÇSOA³¬Ô½ÁËÈí¼þ¿ª·¢ÓïÑÔ±¾Éí¡£ÊÇÒ»ÖÖÃæÏò·þÎñµÄ¼Ü¹¹£¬ÓëÈí¼þ¿ª·¢ÓïÑÔÎ޹ء£
µ«¾ÍÈí¼þ¿ª·¢±¾ÉíÀ´Ëµ£¬SOAÊÇÒ»ÖÖ¼¼Êõ£¬ÓÖ³¬Ô½ÁËËùÓоßÌåµÄ¼¼Êõ¡£
ITµÄÖÐÎÄ·ÒëΪÐÅÏ¢¼¼Êõ£¬ÊÇΪÆóÒµµÄÐèÒª³öÏֵġ£ITµÄ±¾ÖÊÉϰüÀ¨Á½ÖÖÐÅÏ¢µÄʹÓ÷½Ê½£º´´½¨ÐÅÏ¢¡¢µ÷ÓÃÐÅÏ¢¡£
ITµÄ½øÒ»²½·¢Õ¹£ºÐÅÏ¢¼¯³É¡£Ê¹ÐÅÏ¢µÄÓ¦ÓüÛÖµÌá¸ß¡£
ITÓïÑԵķ¢Õ¹Ê·£ºÃæÏò¹ý³Ì--¡·ÃæÏò¶ÔÏó--¡·ÃæÏò×é¼þ--¡·±ê×¼µÄWS--¡·ÃæÏò·þÎñ¡£
ITÓïÑԵķ¢Õ¹¹ý³Ì£ºÖ𲽵ĽâñîÓë·â×°¡£
2 SOAµÄ¼¼Êõ¸ïÃü SOA¼ÈÈ»ÄܳÉΪµÚËÄ´úÈí¼þ¿ª·¢¼¼Êõ£¬¾¿¾¹´øÀ´Ê²Ã´¸ïÃü¡£
Ê×ÏÈ£¬SOAÊÇÒ»ÖÖ¿ª·¢Ë¼Ïë¡£ÊÇÒ»ÖÖËÉñîºÏµÄ¿ò¼Ü¡£¿ÉÒÔÈÃÈí¼þ³¬Ô½¿ª·¢ÓïÑÔ¡£
Æä´Î£¬SOAµÄ¿ª·¢ÐèÒªSOAÌåϵµÄÖ§³Å£¬¾ÍÏñJ2EEÓ¦ÓÃÒ»Ñù£¬Àë²»¿ªÓ¦Ó÷þÎñÆ÷¡£SOAÒ²Ò»Ñù£¬Ò²ÓÐÒ»¸öÀàËÆJ2EE·þÎñÆ÷µÄ¶«Î÷Ö§³Ö×ÅÕû¸öSOAÌåϵ¼Ü¹¹----ESB£¨ Enterprise Service Bus£©£¬ÆóÒµ·þÎñ×ÜÏß¡£Í¨¹ýÕâ¸ö×ÜÏߣ¬½«¶à¸öϵͳÁ¬½ÓÆðÀ´¡£
Æä´Î£¬SOAÊÇ»ùÓÚÏûÏ¢ÇëÇóÏìÓ¦µÄÒ»¸öϵͳ£¬¶ÔÇëÇóÀàÐÍÓи߶ȵļæÈÝÐÔ¡£ÓëÒ»¸öWebÓ¦ÓÃÈÝÆ÷Ïà±È£¬webÓ¦ÓÃÈÝÆ÷Ö»ÄÜ´¦ÀíHTTPÇëÇ󣬶øSOAµÄESB¿ÉÒÔ½ÓÊÜHTTP¡¢FTP¡¢WebService¡¢JMS...µÈÇëÇó¡£Õâ¾ÍʹµÃSOA¼Ü¹¹¾ßÓи߶ȵļæÈÝÐÔ£¬¿ÉÒÔ½«²»Í¬µÄƽ̨¼¯³Éµ½Ò»Æð£¬´Ó¶øÏ໥е÷¹¤×÷¡£
3 SOA»ðÆðÀ´µÄÕæÕýÔÒò Èí¼þ¿ª·¢¼¼ÊõµÄ²»¶ÏÌá¸ß¡£
Ó²¼þÐÔÄܵÄÌáÉý£¬¼Û¸ñϽµ£¬Í¶³öSOAËùÏûºÄµÄ³É±¾ÎªÆóÒµËùÄÜÈÌÊÜ¡£
SOAÊܵ½ÁËIMB¡¢Oracle¡¢Sun¡¢MicrosoftµÈ´ó¹«Ë¾µÄÈÈÁ¦×·Åõ£¬±»ÅõºìÁË£¬Êµ¼ÊÉÏ£¬Ò»Ö±ÒÔÀ´¶¼ÊÇÕâЩ¹«Ë¾ÔÚÒýÁìÈí¼þÓ¦Óõij±Á÷¡£
SOA¼¼Êõ¸ïÃüÿÄêÓÐÉÏǧÒÚÃÀÔªµÄÊг¡¼ÛÖµ¡£Èí¼þÒªÉý¼¶£¬ÕâЩ·þÎñÌṩÉ̲ſÉÒÔÂò³ö¸ü¶àµÄÖмä¼þ·þÎñÆ÷£¬Âô³ö¸ü¶àµÄÓ²¼þ£¬×¬È¡¸ü¶àÀûÈó¡£
ºÜ¶àÆóÒµµÄÈí¼þÓ¦ÓÃϵͳÒѾÂú×ã²»ÁËÐÅÏ¢¸ß¶È¼¯³É»¯µÄÒªÇó£¬ÎªÁËÌá¸ßÆóÒµµÄºËÐľºÕùÁ¦£¬ÆóÒµ²»Ï§Öؽð£¬ÉÏSOA¡£
SOAµÄÕÐÅÆºÜÏìÁÁ£¬³¬Ô½ÁËÒ»ÇУ¬¼æÈÝÁËÒ»ÇС£Ëü²»ÞðÆú¾Éϵͳ£¬¶øÊǽ«ºÜ¶à¾Éϵͳ¼Ì³ÐÆðÀ´£¬¾Í¿ÉÒÔʵÏÖ¡£¡ª¨Cʵ¼ÊÉÏ£¬ÎÒ¸öÈËÈÏΪÕâÊÇÒ»¸öƾ֡£
4 SOA×îÓÐǰ¾°µÄÎę̀ »ùÓÚSOAÊǵÄ˼ÏëºÍ¼¼Êõ£¬SOA×îÊʺÏ×îÉó¤µÄ¾ÍÊÇϵͳ¼¯³É¡£¶øÏµÍ³¼¯³ÉµÄ¹Ø¼ü¾ÍÊÇÌáÈ¡¹«¹²µÄÓмÛÖµµÄ·þÎñ¡£¸÷¸öϵͳͨ¹ý±©Â¶·þÎñ£¬¾¹ýESBÕâÌõ×ÜÏßÁ¬½Óºó£¬¾Í½«¼¸¸öϵͳ¼¯³ÉÆðÀ´ÁË¡£ÕâÔÚÐÂÒ»´úÈí¼þ¿ª·¢ÖÐÒ²Ðí»áµÃµ½Ó¦Óá£
SOAµÄ¼Ü¹¹×¢¶¨SOAÔÚÖÐСÆóÒµÄÚ²¿Ã»Óжà´ó¼ÛÖµ¡£ÖÐСÆóÒµµÄ̯×Ó»¹²»¹»´ó¡£
SOAϵͳ¼¯³ÉÄѵãÔÚÓÚ³éÈ¡¹«¹²µÄ·þÎñ¡£¶ÔÓÚÀϵÄϵͳÀ´Ëµ£¬³éÈ¡·þÎñ¾ÍÊdzé½î¡£ºÜÄѺÜÄÑ£¬Òâζ×ÅÒªÐÞ¸ÄÈí¼þ£¬ÒªÊʺÏSOAµÄθ¿Ú¡£Òò´Ë£¬¶ÔһЩ²»Í¬ÓïÑÔ¿ª·¢µÄϵͳÀ´Ëµ£¬Ê¹ÓÃSOA½øÐÐϵͳʵ¼ÊÉÏÊdz¶µ¡£
5 SOA·¢Õ¹ÏÖ×´ ¶ÔSOA¿ÚºÅ½ÐµÄ×îÏìµÄÊÇIBM£¬³öÊé×î¶àµÄÒ²ÊÇIBM£¬³É¹¦µÄ°¸Àý»¹Ã»¿´µ½¡£ËùÓеĴó¹«Ë¾¶¼ÔÚºöÓÆ£¬Ï£ÍûÄõ½µÚÒ»±Ê´óµ¥¡£
SOAÒÔÀ´ESB£¬ESB±¾ÉíÒ²ÊÇÒ»ÖÖÖмä¼þ£¬»òÕß˵ÊÇÒ»¸öÔöÇ¿ÁËµÄÆóÒµÓ¦Ó÷þÎñÆ÷¡£Ä¿Ç°¿ªÔ´µÄÓм¸¸ö£¬Ò²Ã»¼û¹ý³É¹¦µÄ°¸Àý¡£¹À¼ÆSOA¼¼Êõ´ÓÆð²½µ½³ÉÊ컹Óкܳ¤Ò»¶Î·Ҫ×ß¡£ESBµÄʵÏÖ»¹ÐèÒªÒ»¸ö·¢Õ¹¹ý³Ì¡£
Ïà·´ÓëSOAÓнôÃÜÁªÏµWebService¼¼ÊõÒѾÉîÈëÈËÐÄ¡£ÏÖÔÚÓõıȽ϶ࡣ
6 WebServiceÓëSOAµÄÇø±ð SOAÊÇÔÚWebServiceµÄ»ù´¡ÉÏ·¢Õ¹ÆðÀ´µÄ¡£
WebServiceʵÏÖÁËËÉñîºÏºÍ´ÖÁ£¶ÈµÄ·þÎñ¡£
7 SOA»ù±¾ÒªËØ ËÉÉ¢ñîºÏ£º·þÎñÖ®¼ä¡¢½Ó¿ÚÓëʵÏÖÖ®¼ä¡¢ÒµÎñ×é¼þºÍ´«ÊäÐÒéÖ®¼ä¡£
´ÖÁ£¶È£ºSOAÖзþÎñµÄ½Ó¿Ú¸ü½Ó½üʵ¼ÊÖеÄÓû§²Ù×÷¡£
λÖúʹ«ÊäÐÒé͸Ã÷£º²»ÂÛ·þÎñ×é¼þµÄ´«ÊäÐÒéÈçºÎ¸Ä±ä£¬¿Í»§¶ËµÄµ÷ÓóÌÐò´«ÊäÐÒé²»ÐèÒª¸Ä±ä¡£
8 SOAÄ¿±ê Ãô½ÝµÄ¡¢²»ÊÜÏÞÖÆµÄÒµÎñ¼¯³É¡£
9 JBI¼Ü¹¹Ë¼Ïë SOAÔÚJavaÁìÓòÓÐÁ½Ì×±ê×¼£ºÒ»¸öÊÇSUNÍÆ³öµÄJBI£¨Ã»Óеõ½BEAºÍIBMµÄ³ÐÈÏ£©£¬ÁíÍâÒ»¸öÊÇ£ºIBMºÍBEAµÈ¹«Ë¾ÍƳöµÄSCAºÍSDO±ê×¼¡£
JBIÖ®¹Ø×¢Java×é¼þÖ»´¦ÀíJava×é¼þµÄ¼¯³É¡£
SCAʵÏÖÁËÒµÎñ×é¼þºÍ´«ÊäÐÒéµÄ·ÖÀ룬¿ÉÒÔ´¦Àí¸÷ÖÖÆ½Ì¨×é¼þµÄ¼¯³É¡£
SDO¿ÉÒÔµÄ×ÔÓɶÁÈ¡¸÷ÖÖ²»Í¬Êý¾ÝÔ´µÄÊý¾Ý¡£
ÁíÍ⣬BPEL±¾ÖÊÉÏÊÇÒ»ÖÖ¼¯³ÉWebService·þÎñµÄÓïÑÔ£¬Ò²¿ÉÒÔËã×÷ΪSOAµÄÒ»²¿·Ö¡£
9.1 ÈÏʶJBI JBI£¨Java Business Integration£©ÖÐÎÄ·ÒëΪ¡°JavaÒµÎñ¼¯³É¡±£¬ÊÇSUN·¢²¼µÄÒ»¸öÓÃÓÚJava×é¼þ½øÐм¯³ÉµÄÒ»¸ö±ê×¼¡£
JBIµÄ±¾ÖÊÊÇÒ»ÖÖ·þÎñ×ÜÏß˼Ïë¡£
JBIµÄÄ¿±êÊÇ´´½¨Ò»¸öÓÃÓÚ¸÷ÖÖJava×é¼þ·þÎñ¼¯³ÉµÄÔËÐл·¾³¡£
9.2 ÈÏʶJBIÈÝÆ÷ JBIÊÇÒ»ÖÖ˼Ï룬JBI˼ÏëµÄʵÏÖ¾ÍÊÇJBIÈÝÆ÷¡£
JBIÈÝÆ÷ÊÇΪÃÖ²¹ÏÖÓÐJ2EEÈÝÆ÷µÄ²»×ã¶ø³öÏֵġ£
ÏÖÓÐÓ¦Ó÷þÎñÆ÷µÄÈÝÆ÷ÀàÐÍ£ºServletÈÝÆ÷¡¢EJBÈÝÆ÷¡¢JMSÈÝÆ÷¡£
ÏÖÓÐÓ¦Ó÷þÎñÆ÷µÄÈÝÆ÷²»×㣺
a) ÿÖÖÈÝÆ÷¶¼ÓÐ×Ô¼ºÌØÊâµÄ´«ÊäÐÒ飬Ï໥֮¼ä²»ÄÜÖ±½ÓͨÐÅ¡£±ÈÈ磺ServletÈÝÆ÷Ö»ÄܽÓÊÜHTTP/SOAPµÄ´«ÊäÐÒ飬EJBÈÝÆ÷Ö»ÄÜ´¦ÀíRMIµÄ´«ÊäÐÒ飬JMSÖ»ÄÜ´¦ÀíJMSµÄ´«ÊäÐÒé¡£
b) Ò»¸ö´¿´âµÄ·þÎñÌṩÕߣ¬²»ÊÇÒ»¸ö·þÎñµÄ¼¯³ÉÕß¡£Ò²¾ÍÊÇ˵£¬ÈÝÆ÷Ö®¼ä²»Äܼ̳зþÎñ¡£
c) ÈÝÆ÷¼ä·þÎñµÄµ÷ÓÃÐèÒª±àд¿Í»§¶Ë´úÂë¡£
JBIÈÝÆ÷ÒÔÒ»Öֿɲå°ÎµÄ·½Ê½¼¯³É²»Í¬ÀàÐ͵ķþÎñ£¬¶ø²»ÊÇͨ¹ý±àд¿Í»§¶Ë´úÂëÀ´ÊµÏÖ·þÎñµÄ¼¯³É¡£
9.3 JBIÈÝÆ÷µÄ×é³ÉÓë¼Ü¹¹ 1. JBIÈÝÆ÷µÄ¼Ü¹¹Í¼

2. JBIÈÝÆ÷µÄ×é³ÉµÄÈý´ó²¿·Ö °ó¶¨×é¼þ£¨BC£ºBinding Components£©£º×¨ÃÅÓÃÀ´½ÓÊÕ¸÷ÖÖ²»Í¬´«ÊäÐÒéµÄÇëÇó£¬ÔÀíÊÇJBIʵÏÖÁ˸÷ÖÖ²»Í¬ÐÒéµÄ°ó¶¨×é¼þ£¬°ó¶¨×é¼þ¿ÉÒÔϸ·ÖΪ½ÓÊÕBCºÍ·¢ËÍBC¡£½ÓÊÕBCÖ÷Òª¸ºÔð·¢ËÍÇëÇóºÍ½ÓÊÕÏìÓ¦£¬·¢ËÍBCÖ÷ÒªÓÃÀ´µ÷ÓÃÍⲿµÄ·þÎñ¡£
·þÎñÒýÇæ£¨SE£ºService Engines£©£ºÕâÀà×é¼þÖ»´¦ÀíJBIÈÝÆ÷ÄÚ²¿µÄÏûÏ¢¡£JBIÈÝÆ÷ͨ³£ÔÚ½ÓÊÕµ½ÏûÏ¢ºó£¬ÐèÒª¶ÔÇëÇóµÄÏûÏ¢×öһЩ¡°´¦Àí¡±£¬È»ºóÔÙµ÷ÓÃÍⲿ·þÎñµÄÌṩÕß¡£¸ù¾Ý¹¦ÄܵIJ»Í¬£¬½«SE×é¼þ·ÖΪÒÔÏÂÈýÖÖÀàÐÍ£º
Transform SE£º×¨ÃÅ´¦Àí¸÷ÖÖ´«ÊäÐÒéºÍ¸ñʽ±ä»¯¡£
BPEL SE£º×¨ÃŸºÔð½«Web Service½øÐÐÁ÷³Ì±àÅÅ¡£
Rules SE£º×¨ÃŸºÔðͨ¹ý¹æÔò½«¸÷ÖÖ·þÎñ½øÐм¯³É¡£
JBIµÄ¹æ¸ñ»¯ÏûϢ·ÓÉÆ÷£¨Normalized Message Router£©£ºÊÇJBIÄÚ²¿ÏûϢϵͳµÄºËÐÄ£¬ËùÓеÄ×é¼þÖ®¼ä²»Äܽ»»»ÏûÏ¢£¬Ö»ÄÜͨ¹ýNMRÀ´´«µÝ¡£
ÔÚJBIÈÝÆ÷ÄÚ²¿£¬Ö»ÓÐÒ»ÖÖ±ê×¼µÄ¹æ¸ñ»¯ÏûÏ¢£¨Normalized Message£©¡£ÈÎÎñ·þÎñ×é¼þ½øÈëJBI»·¾³Ö®Ç°£¬Í¨¹ýBCת»»Îª¹æ¸ñÏûÏ¢NM¡£ÔÚJBI»·¾³ÀËùÓеķþÎñ¶¼²»ÄÜÏ໥µ÷Ó㬲»ÂÛÊÇÇëÇó»¹ÊǻشðÏûÏ¢£¬¶¼ÒªÏÈת¸øNMR£¬ÔÙÓÉNMR·Ö·¢¡£JBIÔËÐл·¾³ÀïÃæµÄ×é¼þ£¨SE¡¢BC£©ºÍNMR¶¼ÊÇͨ¹ýNMÀ´½øÐÐÐÅÏ¢½»»»µÄ¡£
9.4 JBIÈÝÆ÷¹¤×÷µÄ¸ÅÄîͼ 
ÈçÉÏͼ£º ÍⲿÇëÇóÕß½«Ò»¸öHTTPÇëÇó·¢Ë͸øJBIÈÝÆ÷£¬ÈÝÆ÷µÄHTTP BC½ÓÊÕÇëÇ󣬲¢½«ÇëÇóµÄÏûÏ¢¸ñʽ»¯ÎªNM·¢Ë͸øÏûÏ¢½ÓÊÕת»»ÒýÇæ£¬È»ºóÔÙ½«NM·¢Ë͸øNMR£¬ÓÉNMRÔÙ½«NM·¢Ë͸øSOAP BC£¬SOAP BC½«NMת»»ÎªSOAPÏûÏ¢·¢Ë͵½ÍⲿµÄWS×é¼þ¡£Ö´Ðкó£¬ÏûÏ¢°´ÕÕÔ··µ»Ø¡£
10 SCA¼Ü¹¹Ë¼Ïë
10.1 ÈÏʶSCA SCA£¨Service Component Architecture£©ÖÐÎÄ·ÒëΪ¡°·þÎñ×é¼þ¼Ü¹¹¡±£¬ÊÇÒ»ÖÖȫеÄÈí¼þ¼Ü¹¹Ë¼Ïë¡£
SCAÖУ¬×îÖØÒªµÄÒ»¸ö¸ÅÄîÊÇService----·þÎñ£¬ËüµÄÄÚºÊǶÀÁ¢ÓÚ¾ßÌåµÄ¼¼Êõ¡£Òò´Ë£¬SCA²»»á³ÆÖ®Îª Java×é¼þ¼Ü¹¹£¬»òWeb Service ×é¼þ¼Ü¹¹¡£ËùνµÄ¾ßÌå¼¼Êõ£¬Ö÷ÒªÓÐÁ½²ãº¬Ò壺һÊdzÌÐòÓïÑÔ£¬¶øÊÇ´«ÊäÐÒé¡£
ÏÖÓеÄ×é¼þÊǺʹ«ÊäÐÒé½ôÃÜñîºÏµÄ¡£±ÈÈçEJB×é¼þ²ÉÓõÄÊÇRMI´«ÊäÐÒ飬Web Service×é¼þ²ÉÓõÄÊÇSOAP´«ÊäÐÒé¡£SCA×é¼þÔòÄÜ×ÔÓɵذ󶨸÷ÖÖ´«ÊäÐÒé¡£
SCAÊǶÔĿǰ×é¼þ±à³ÌµÄ½øÒ»²½Éý»ª£¬ÆäÄ¿±êÊÇÈ÷þÎñ×é¼þÄÜ×ÔÓɰ󶨸÷ÖÖ´«ÊäÐÒ飬¼¯³ÉÆäËûµÄ×齨Óë·þÎñ¡£
SCAÓ봫ͳµÄÒµÎñ×é¼þ×î´óÇø±ðÔÚÓÚSCAʵÏÖÁËÁ½¸ö¹¦ÄÜ£ºÒ»ÊÇ×é¼þºÍ´«ÊäÐÒéµÄ·ÖÀ룬¶þÊǽӿںÍʵÏÖÓïÑԵķÖÀë¡£
SCAµÄ±¾ÖÊÊÇÒ»ÖÖÈí¼þ¼Ü¹¹Ë¼Ï룬SCA¼Ü¹¹ÊǶÀÁ¢ÓÚ³ÌÐòÓïÑÔµÄSOA¼Ü¹¹¡£
SCAµÄÄ¿±êÊÇ´´½¨Ò»¸ö¿É¼¯³É·þÎñ×é¼þµÄÔËÐл·¾³¡£
ΪʲôÐèÒªSCA£¿´ð°¸£º¼¯³ÉµÄÐèÒª¡£
ÏÈ¿´Ã»ÓÐʹÓÃSOA¼¼ÊõµÄϵͳµÄ¼¯³ÉµÄÇé¿ö£¬ÐèÒªÏ໥Լ¶¨ºÍ±©Â¶½Ó¿Ú¡£ÐèÒª±àд¼¯³ÉµÄ¿Í»§¶Ëµ÷ÓôúÂë¡£µ÷Ó÷½ºÍ±»µ÷Ó÷½Òª¡°Öª±ËÖª¼º¡±²ÅÄܺܺõɣ¬¶øÕâÓÖ¶¼´øÀ´¸ß°ºµÄ´ú¼ÛºÍ¸´ÔÓ¶È¡£
ʹÓÃSCAµÄºÃ´¦£º×é¼þÖ®¼ä´¦ÓÚÒ»ÖÖËÉñîºÏµÄ״̬£¬²»ÐèÒªÔÚ×Ô¼ºµÄ´úÂëÖмÓÈë¶Ô·½×é¼þµÄ½Ó¿Ú´úÂë¡£
10.2 ÈÏʶSCAÈÝÆ÷ SCAÊÇÒ»ÖÖ˼Ï룬SCA˼ÏëµÄ¾ßÌåʵÏÖÊÇSCA±ê×¼ºÍSCAµÄÈÝÆ÷»·¾³¡£
SOAÈÝÆ÷Ò²·ÖJBIÈÝÆ÷¡¢SCAÈÝÆ÷µÈ¡£SCAÈÝÆ÷Ò²ÊÇSOAÈÝÆ÷×ܳƵÄÒ»ÖÖ£¬Í¨³£¶¼µ¥¶À³ÆSCAÈÝÆ÷£¬¶øÖ±½Ó·º³ÆSOAÈÝÆ÷¡£ÕâÀïΪÁËÇø±ðÓë±ðµÄSOAÈÝÆ÷¿ªÀ´£¬¶ø³ÆÖ®ÎªSCAÈÝÆ÷¡£
SCAÈÝÆ÷ʵÏÖÁ˽«¸´ÔӵķþÎñ×é¼þ¼¯³É¹ý³ÌÒþ²ØÔÚÈÝÆ÷ÄÚ²¿£¬¿ª·¢ÕßÖ®ÐèÒª°´ÕÕSCAµÄ±ê׼ȥ¿ª·¢ºÍ¼¯³É·þÎñ£¬×îÖÕ²¿Êðµ½SCAµÄÈÝÆ÷ÀïÃæ¼´¿É¡£
SCAÈÝÆ÷µÄʵÏֺܸ´ÔÓ£¬ÓÐ¹ØÆäÈÝÆ÷µÄ×é³ÉÓë¼Ü¹¹Ò²ÊÇÒ»ÖÖÉÌÒµÃØÃÜ¡£¿ª·¢ÈËÔ±Ö»ÐèÒª¹ØÏµÈçºÎ×ñÑSCA±ê׼ȥ¿ª·¢ºÍ¼¯³É·þÎñ×é¼þ¼´¿É¡£
ΪÁ˸üºÃȥʵÏÖSCA¼Ü¹¹£¬Àí½âSCA·þÎñ×é¼þ¸ÅÄîµÄÄÚººÍÍâÑÓ¶Ô¿ª·¢ÕßÀ´ËµÊǷdz£ÖØÒªµÄ¡£
10.3 ·þÎñ×é¼þ ¸ÅÄî·þÎñ×é¼þ׼ȷ½²Ã»ÓÐÈ·ÇеĸÅÄËü¸üÌù½üÓÚÒ»¼þʵʵÔÚÔÚµÄÎïÆ·£¬Ö»ÄÜ´ÓËûµÄÐÎ×´¡¢×é³É¡¢½á¹¹¡¢¹¦ÄÜ¡¢×´Ì¬¡¢ÊôÐԵȲàÃæÀ´ÃèÊöËü¡£ ·þÎñ×é¼þÊÇSCAÀïÃæ×î»ù±¾µÄ¹¦Äܵ¥Ôª£¬ËüÖ÷Òª°üÀ¨½Ó¿Ú¡¢ÊµÏÖ¡¢ÒýÓá¢ÊôÐԵȲ¿·Ö¡£¿ÉÒÔ´ÓһϲàÃæÀ´ÃèÊö·þÎñ×é¼þ¡£
a) ÊÇÔÚÒ»¸öÄ£¿é£¨Composit£©ÄÚµÄͨ¹ýÅäÖÃÉú³ÉµÄÒ»¸öʵÏÖµÄʵÀý¡£
b) ¶à¸ö×é¼þ¿ÉÒÔÓÃͬһ¸öʵÏÖ£¨Ë¼¿¼£ºÒ»¸öJavaµÄ¶ÔÏó¿ÉÒÔͬʱʵÏÖ¶à¸ö½Ó¿Ú£©¡£
c) Ìṩ·þÎñºÍÏû·Ñ·þÎñ£¨×é¼þ¿ÉÒÔµ÷ÓñðµÄ×é¼þµÄ·þÎñ£©¡£
d) ͨ¹ýÅäÖÃÀ´ÊµÏÖ¶ÔÏóµÄÊôÐÔÖµ£¨ÅäÖýڵãΪproperty£©¡£
e) ×é¼þͨ¹ýÁ¬Ïߣ¨Wire£©À´ÉèÖ÷þÎñÒýÓá£Á¬Ïß¿ÉÒÔÁ¬½Óµ½±ðµÄ×é¼þµÄ·þÎñ£¬Ò²¿ÉÒÔÁ¬½Óµ½Ä£¿éµÄÒýÓã¨Ä£¿éµÄ¸ÅÄîºóÃæ»áÏêϸ½²Êö£©¡£
·þÎñ×é¼þµÄ×é³É²¿·Ö·þÎñ×é¼þµÄ×é³É°üº¬Ëĸö²¿·Ö£º·þÎñ¡¢×é¼þʵÏÖ¡¢ÒýÓᢴ´½¨ÊôÐÔ¡£ ÏÂÃæ¸ø³ö·þÎñ×é¼þµÄ½á¹¹Í¼ÈçÏ£º
[ÔÚÕâÀïÊäÈëͼƬ±êÌâ]
 a) ·þÎñ£¨Service£©£¬ÓÃÀ´ÈÃÆäËû×é¼þµ÷Óá£ÊÇÒ»¸ö½Ó¿Ú¡£Èç¹ûÊÇ»ùÓÚJavaµÄSCA£¬Ëü¾ÍÊÇJavaµÄ½Ó¿Ú£»Ò²¿ÉÒÔÊÇWSDLµÄProtType½Ó¿Ú£¬Ä¿Ç°Ö»ÓÐÕâÁ½ÖÖÐÎʽ¡£
b) ×é¼þʵÏÖ(Implementation)£¬ÊµÏÖËù´´½¨µÄ·þÎñ£¬¶ÔJavaÀ´Ëµ£¬¾ÍÊǽӿڵÄʵÏÖÀà¡£
c) ÒýÓã¨Reference£©£¬Ò»¸ö×é¼þ¿ÉÄÜÐèÒªµ÷ÓÃÆäËû×é¼þ£¬ÐèÒª´´½¨ÓÚigeqita×é¼þµÄÒýÓ᣶ÔJavaÀ´Ëµ£¬¾ÍÊÇÆäËû×é¼þµÄJava½Ó¿Ú¡£
d) ÊôÐÔ£¨Property£©£¬¶Ô×é¼þʵÏÖµÄÒ»ÖÖÊôÐÔ²ÎÊý×¢Èë¡£
¶ÔÒ»¸ö·þÎñ×é¼þÀ´Ëµ£¬·þÎñºÍʵÏÖʱ±ØÐëµÄ£¬ÒýÓúÍÊôÐÔÊǷDZØÐèµÄ¡£ÀýÈ磬¶ÔÉÏÃæHello WorldµÄÀý×ÓÀ´Ëµ£¬×é¼þµÄ½á¹¹Í¼ÈçÏ£º

10.4 ·þÎñÄ£¿é SCAÊÇͨ¹ýÄ£¿é£¨Composite£©½«SCA×é¼þ¼¯³ÉÔÚÒ»ÆðµÄ¡£
SCAµÄÄ£¿éÊÇʵ¼ÊÉÏÊǽ«SCA×é¼þ£¨×öΪÁã¼þ£©ÖØÐÂ×éºÏ¼¯³É¶È¸ü¸ßµÄ×齨£¬´ÓÕûÌå¿´À´SCAÄ£¿éºÍSCA×é¼þµÄ½á¹¹Ê½Ò»Öµġ£´Ó¹¹³É×é¼þµÄ¡°Áã¼þ¡±½Ç¶È¿´£¬SCAÄ£¿éÊÇÓÃÁË×é¼þ×÷ΪÁ㲿¼þÖØÐÂ×éװΪеÄ×é¼þ£¨Ä£¿é£©¡£
ÆäʵµÀÀíÒ²·Ç³£¼òµ¥£¬ÏÂÃæÊÇSCAÄ£¿éµÄ»ù±¾ÔÀíͼ£º

ÈçÉÏͼ£¬¿ÉÒÔ¿´µ½£¬Ä£¿é´ÓÕûÌåÉÏÒ²ÊǸö×é¼þ¡£ Ä£¿éÊÇͨ¹ýSCAµÄÅäÖÃÎļþÅäÖÃ×é×°Ðγɵ쬲»ÐèÒª³ÌÐòµÄÓ²±àÂë¡£
ÌáÉý£¨Promote£©£º¾ÍÊǽ«×é¼þµÄ½Ó¿Ú¡¢ÊôÐÔ¡¢»òÒýÓÃ×°ÅäΪģ¿éµÄ¶ÔÓ¦µÄ½Ó¿Ú¡¢ÊôÐÔ»òÒýÓá£
Á¬Ïߣ¨Wire£©£º¾ÍÊÇÔÚÄ£¿éÄÚ²¿£¬×é¼þÖ®¼äµÄµ÷ÓùØÏµ¡£±ÈÈç×é¼þAµÄʵÏÖµ÷ÓÃÁË×é¼þB£¬ÄÇô×é¼þAB¼ä¾Í´æÔÚÒ»¸öÁ¬Ïß¡£
µ±×é¼þÖ®¼äÐèÒªµ÷ÓõÄʱºò£¬ÓÉÓÚĿǰ×é¼þ£¨ÈçEJB¡¢WS¡¢JMS£©´«ÊäÐÒéµÄ¶àÑù»¯£¬ÕâÑùÔÚÏ໥µÄµ÷ÓõÄʱºò£¬ÐèÒª½«°ó¶¨²»Í¬µÄÐÒéÈ¥µ÷Óá£ÕâÀᄀ¿ÉÄܱÜÃâÈÃÈËÃÔ»ó¶øÓÖûÓмÛÖµµÄ°ó¶¨£¨Binding£©Ò»´ÊµÄ¸ÅÄî¡£
ÔÚÒ»¸ö´óµÄÏîÄ¿ÀïÃæ£¬¿ÉÄÜ»áÓкܶà·þÎñÄ£¿é£¬¶à¸ö·þÎñÄ£¿éÖ®¼äÈç¹ûÐèÒªÏ໥µ÷Óã¬ÄÇô¾Í¿ÉÒÔ½«¶à¸ö·þÎñÄ£¿éͨ¹ýWS»òÕßJMSµÈ¼¼Êõ°ó¶¨ÔÚÒ»Æð£¬ÐγɷþÎñ×Óϵͳ¡£
Àí½âÁËÄ£¿éµÄ¸ÅÄ¾Í²»ÄÑÀí½â·þÎñ×ÓϵͳÁË¡£
11 SCAÓëJBIµÄÒìͬ ÏàͬµãÄ¿µÄÊÇÒ»ÑùµÄ£º¶¼ÊÇΪÁ˼¯³É¡£ ´óÖ·½ÏòÒ»Ñù£º¶¼ÊÇΪÁ˽«·þÎñºÍ´«ÊäÐÒé½âñî¡£
²»Í¬µãSCAÒÔ½Ó¿Ú×÷ΪÇÐÈëµã£¬´Ó×é¼þ½Ó¿Ú²ã½«´«ÊäÐÒéºÍ½Ó¿ÚʵÏÖ½âñÊÇ´Ó±à³ÌµÄ½Ç¶È³ö·¢£¬Ò»ÖÖȫеıà³ÌÄ£ÐÍ¡£
JBIÊÇÒÔÇëÇóÏûÏ¢ºÍÏàÓ¦ÏûÏ¢×÷ΪÇÐÈëµã£¬ÔÚ¼¯³Éʱ½«ÏûÏ¢ºÍ´«ÊäÐÒé½âñÐγÉÒ»ÖÖÓë´«ÊäÐÒéÎ޹صıê×¼ÏûÏ¢£¬ÕâÑùÐγÉÒ»ÖÖȫеÄÇø±ðÓÚÏÖÓÐÓ¦Ó÷þÎñÆ÷µÄ¼¯³ÉÈÝÆ÷£¬ÊÇ´ÓÈÝÆ÷µÄ½Ç¶È³ö·¢£¬Ò»ÖÖȫеÄÈÝÆ÷Ä£ÐÍ¡£
12 SOA¡¢ESB¡¢SCAÖ®¼äµÄÁªÏµ SOAÊÇÒ»ÖÖ·þÎñ¼¯³ÉµÄ¼Ü¹¹Ë¼Ï룬³¬Ô½¾ßÌåµÄ¼¼ÊõºÍ¼Ü¹¹£¬ÓÖº¸Ç¾ßÌåµÄ¼¼ÊõºÍ¼Ü¹¹¡£SOAµÄ×î³£¼ûµÄ½â¾ö·½°¸ÊÇSCA£¬Æä´Î»¹ÓÐJBI£¬BPEL¡¢SDOÒ²ÃãÇ¿¿ÉÒÔËã×öSOAµÄ½â¾ö·½°¸Ö®Ò»£¬ÒòΪºóÁ½ÕßÒ²ÊÇΪÁËϵͳ½âñîºÍ¼¯³ÉÌṩÁËÖ§³Ö¡£
SCAÊÇ·þÎñ×é¼þ¼Ü¹¹£¬ÊÇSOA˼ÏëµÄ×îÁ÷ÐеÄÒ»ÖÖʵÏÖ·½Ê½£¬SOA˼ÏëµÄʵÏÖ³ýÁËSCAÍ⣬»¹ÒªJBIµÈ¡£
ESBÊÇSCA˼ÏëʵÏֵĻù´¡ÉèÊ©¡£ESBÖ÷Òª×÷ÓÃÊǼ¯ÖÐ×¢²á·¢²¼·þÎñ£¬Îª·þÎñÓë´«ÊäÐÒéÖ®¼ä½âñî¡£²¢²»ÊÇËùÓеÄSOA¼Ü¹¹¶¼ÐèÒªESB£¬ESBÊÇSCAÌØÓеġ£µ±È»ÈκηûºÏESBÌØÕ÷µÄ½â¾ö·½Ê½¶¼¿ÉÒÔ³ÆÖ®ÎªESB£¬Ò²²»½ö½öÊÇSCAÄÚ²¿µÄ¡£
×ÛÉÏËùÊö£¬ÒÔÉϸÅÄî¶¼ÊÇÒ»¸öÀíÄî¡¢Ò»ÖÖ˼Ï룬²¢·ÇÌØÖ¸´úij¸öÏÖÓеÄʵÏÖ»ò½â¾ö·½°¸£¬ÕâÊÇÆð³õ½Ó´¥SOA ÈÝÒ×·¸µÄ¸ÅÄîÉϵĴíÎó¡£
12.1 ESBÓëSOAµÄ¹ØÏµ ÕâÁ½¸ö´Ê°üº¬µÄÄں̫·á¸»ÁË£¬ÎÞ·¨ÓÃÒ»Á½¾ä»°ËµÇå³þ£¬²¢ÇÒ£¬Õâ¸ö´ÊÔÚ²»Í¬µÄµØ·½º¬ÒåÒ²ÓÐËù²»Í¬¡£
SOA¡ª-ÃæÏò·þÎñ¼Ü¹¹£¬Êµ¼ÊÉÏÇ¿µ÷µÄÊÇÈí¼þµÄÒ»Öּܹ¹£¬Ò»ÖÖÖ§³ÅÈí¼þÔËÐеÄÏà¶ÔÎȶ¨µÄ½á¹¹£¬±íÃæº¬ÒåÈç´Ë£¬ÆäʵSOAÊÇÒ»ÖÖͨ¹ý·þÎñÕûºÏÀ´½â¾öϵͳ¼¯³ÉµÄÒ»ÖÖ˼Ïë¡£²»ÊǾßÌåµÄ¼¼Êõ£¬±¾ÖÊÉÏÊÇÒ»ÖÖ²ßÂÔ¡¢Ë¼Ïë¡£
ESB¡ª-ÆóÒµ·þÎñ×ÜÏߣ¬ÏñÒ»¸ù¡°´ÏÃ÷¡±µÄ¹ÜµÀ£¬ÓÃÀ´Á¬½Ó¸÷¸ö¡°ÓÞ±¿¡±µÄ½Úµã¡£ÎªÁ˼¯³É²»Í¬ÏµÍ³£¬²»Í¬ÐÒéµÄ·þÎñ£¬ESB×öÁËÏûÏ¢µÄת»»½âÊÍÓë·Óɵȹ¤×÷£¬Èò»Í¬µÄ·þÎñ»¥Áª»¥Í¨¡£
ĿǰESBÓëSOAµÄÈ·ÇиÅÄîÒÀȻûÓС£µ«¿ÉÒÔÃ÷È·µÄ˵SOA¾ÍÊÇÒ»ÖÖ·þÎñ¼¯³É˼Ï룬ËüµÄ²»Í¬ÊµÏÖ·½Ê½¿ÉÄܲî±ðºÜ´ó£¬Ä¿Ç°SOA×î³£¼ûµÄʵÏÖ·½Ê½ÊÇSCAºÍJBI¡£
12.2 ESB¾¿¾¹ÊÇʲô Õâ¸öÎÊÌâÔÚ¸ö´ó³§ÉÌÖ®¼ä£¬ÈÏʶºÍ¹ÛµãÒ²´æÔںܴó²îÒì¡£
IBM¡¢OracleµÈÈÏΪESBÊÇÁ¬½Ó·þÎñµÄÒ»ÖÖģʽ£¬µ«Ò»Ð©¿ªÔ´×éÖ¯ºÍÆäËû³§ÉÌÈÏΪESBÊÇÒ»ÖÖ²úÆ·£¬²¢ÇÒÌṩÁËESBÁ¬½Ó½â¾ö·½°¸µÄʵÏÖ£¬ÕâÖÖʵÏÖ¿ÉÒÔÈÏΪÊÇÖмä¼þ£¬Ò²¿ÉÒÔÈÏΪÊÇ×é¼þ¹¤¾ß¡£
¶Ô´Ë£¬ÎÒ¸öÈ˵Ĺ۵ã¸üÆ«ÏòǰÕߣ¬ESBÊÇÒ»ÖÖģʽ£¬ESBµÄʵÏÖ·½Ê½Ò²ºÜ¶à£¬¿ÉÒÔ³ÆÖ®ÎªESB²úÆ·¡£µ±È»ÔÚ²»Í¬³¡ºÏESBµÄº¬ÒåÒ²²»Í¬£¬ÐèÒª¼ø±ð¡£
12.3 ΪʲôESB×ܺÍSOAð¤ÔÚÒ»¿é ͨ³££¬ÕâÁ½¸öÃû´Ê×ܲ»·Ö¼Ò£¬Ì¸Â۵ϰÌâÖС°ÄãÖÐÓÐÎÒ£¬ÎÒÖÐÓÐÄ㡱¡£
ΪʲôÊÇÕâÑùµÄÄØ£¿
ESBÊÇSOAÂð£¿
Á½ÕßÖ®¼ä¾¿¾¹ÓÐʲô΢ÃîµÄ¹ØÏµÄØ£¿
´ø×ÅÒÉÎÊ£¬¼ÌÐøÍùÏ¿´£º
Ê×ÏÈ£¬ESB²»ÊÇSOA¡£SOAµÄ×î³£¼ûµÄʵÏÖ·½Ê½·½Ê½ÊÇSCAºÍJBI£¬¶øSCAµÄʵÏÖÐèÒªESB£¬Ïà·´JBIÔò²»ÐèÒªESB£¬¿ÉÒԲο´±¾È˶ÔJBIºÍSCA·ÖÎö½â¶ÁµÄÎÄÕ¡£
Æä´Î£¬ÒòΪIBMºÍOracle£¨ÊÕ¹ºÁËBEAºÍSUNµÄÅ£X¹«Ë¾£©¶¼ÍƳçSCAģʽµÄSOA£¬Òò´ËSCAʵ¼ÊÉÏÒѾ³ÉΪSOAµÄÊÂʵ±ê×¼£¬ËµµÀSOA£¬×îÏÈÏëµ½µÄ¾ÍÊÇSCAģʽÁË¡£
×îºó£¬ESBÊÇSCA¼Ü¹¹ÊµÏÖ²»¿ÉȱÉÙµÄÒ»²¿·Ö£¬ESB²úÆ·ÍÑÀëÁ˾ßÌåµÄÓ¦ÓÃÍ⣬ûÓÐÈκÎÒâÒå¡£ESBµÄ×÷ÓÃÔÚÓÚʵÏÖ·þÎñ¼äÖÇÄÜ»¯¼¯³ÉÓë¹ÜÀíµÄÖн顣ͨ¹ýESB¿ÉÒÔ·ÃÎÊËù¼¯³ÉϵͳµÄËùÓÐÒÑ×¢²á·þÎñ¡£
12.4 ESBµÄÌØµã ESBÊÇÒ»ÖÖÔÚËÉÉ¢ñîºÏµÄ·þÎñºÍÓ¦ÓÃÖ®¼ä±ê×¼µÄ¼¯³É·½Ê½¡£Ëü¿ÉÒÔ×÷ÓÃÓÚ£º
ÃæÏò·þÎñµÄ¼Ü¹¹ ¨C ·Ö²¼Ê½µÄÓ¦ÓÃÓÉ¿ÉÖØÓõķþÎñ×é³É£»
ÃæÏòÏûÏ¢µÄ¼Ü¹¹ ¨C Ó¦ÓÃÖ®¼äͨ¹ýESB·¢ËͺͽÓÊÜÏûÏ¢£»
ʼþÇý¶¯µÄ¼Ü¹¹ ¨C Ó¦ÓÃÖ®¼äÒì²½µØ²úÉúºÍ½ÓÊÕÏûÏ¢£»
ESB¾ÍÊÇÔÚSOA¼Ü¹¹ÖÐʵÏÖ·þÎñ¼äÖÇÄÜ»¯¼¯³ÉÓë¹ÜÀíµÄÖн顣 |