<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>Histoire d&#039;une mise en oeuvre SOA - Architecture category</title>
  <link>http://www.leuville.com/soablog/categories/Architecture/</link>
  <description>Journal de bord de notre démarche de mise en oeuvre d&#039;une Architecture Orientée Service</description>
  <language>ff</language>
  <copyright>Richard Lecomte</copyright>
  <lastBuildDate>Wed, 16 Jun 2010 06:52:00 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  
  <item>
    <title>Le choix d&#039;un serveur ESB</title>
    <link>http://www.leuville.com/soablog/2010/06/16/1276671120000.html</link>
    
      
      
        <description>
          &lt;link rel=&#034;File-List&#034; href=&#034;file:///C:%5CDOCUME%7E1%5CBastien%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml&#034; /&gt;
&lt;link rel=&#034;themeData&#034; href=&#034;file:///C:%5CDOCUME%7E1%5CBastien%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx&#034; /&gt;
&lt;link rel=&#034;colorSchemeMapping&#034; href=&#034;file:///C:%5CDOCUME%7E1%5CBastien%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml&#034; /&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 
  Normal
  0
  
  
  21
  
  
  false
  false
  false
  
  FR
  X-NONE
  X-NONE
  
   
   
   
   
   
   
   
   
   
   
   
  
  MicrosoftInternetExplorer4
  
   
   
   
   
   
   
   
   
   
   
   
  
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;![endif]--&gt;&lt;style type=&#034;text/css&#034;&gt;

&lt;!--
 /* Font Definitions */
 @font-face
	{&#034;Cambria Math&#034;;
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{
	panose-1:2 15 5 2 2 2 4 3 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{
	mso-style-parent:&#034;&#034;;
	margin-top:0cm;
	margin-right:0cm;
	margin-bottom:10.0pt;
	margin-left:0cm;
	line-height:115%;
	font-size:11.0pt;&#034;Calibri&#034;,&#034;sans-serif&#034;;
	mso-bidi-&#034;Times New Roman&#034;;}
.MsoChpDefault
	{
	mso-bidi-&#034;Times New Roman&#034;;}
.MsoPapDefault
	{
	margin-bottom:10.0pt;
	line-height:115%;}
@page WordSection1
	{size:595.3pt 841.9pt;
	margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
	{page:WordSection1;}
--&gt;&lt;/style&gt;&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* Style Definitions */
 table.MsoNormalTable
	{mso-style-name:&#034;Table Normal&#034;;
	mso-style-parent:&#034;&#034;;
	line-height:115%;
	font-size:11.0pt;&#034;Calibri&#034;,&#034;sans-serif&#034;;
	mso-fareast-&#034;Times New Roman&#034;;}
&lt;/style&gt;
&lt;![endif]--&gt;Le choix du serveur ESB s&#039;est finalement port&amp;eacute; sur FUSE ESB qui est bas&amp;eacute; sur ServiceMix 4.2. L&#039;avantage de FUSE est qu&#039;il fournit une distribution qui inclut de base le moteur ODE 2.0. On &amp;agrave; alors simplement &amp;agrave; lancer une commande pour l&#039;installer. De plus le packaging des processus en Service Assemblies est facilit&amp;eacute; par des archetypes Maven. Enfin le support de FUSE est r&amp;eacute;actif et r&amp;eacute;pond rapidement aux questions.&lt;br /&gt;
&lt;p&gt;Il y a cependant encore un point noir au tableau. La persistance de l&#039;&amp;eacute;tat des processus BPEL en cours d&#039;ex&amp;eacute;cution n&#039;est pas assur&amp;eacute;e. En effet en effectuant des tests je me suis rendu compte dans les logs qu&#039;apr&amp;egrave;s un arr&amp;ecirc;t brusque du serveur ce dernier &amp;eacute;tait incapable de retrouver l&#039;instance du processus que je souhaitais invoquer. Cela dit le probl&amp;egrave;me ne vient pas de ServiceMix mais de Apache ODE &amp;eacute;tant donn&amp;eacute; que c&#039;est le moteur qui est cens&amp;eacute; garantir la persistance des processus. La version 2.0 est encore en beta, il est peut &amp;ecirc;tre bon d&#039;attendre la version finale avant de tirer des conclusions.&lt;/p&gt;&lt;p&gt;&lt;a href=&#034;http://www.leuville.com/soablog/2010/06/16/1276671120000.html&#034;&gt;Lire plus...&lt;/a&gt;&lt;/p&gt;
        </description>
      
    
    
    
    <category>Architecture</category>
    
    <comments>http://www.leuville.com/soablog/2010/06/16/1276671120000.html#comments</comments>
    <guid isPermaLink="true">http://www.leuville.com/soablog/2010/06/16/1276671120000.html</guid>
    <pubDate>Wed, 16 Jun 2010 06:52:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Problème avec le moteur BPEL de Petals ESB</title>
    <link>http://www.leuville.com/soablog/2010/03/24/1269419760000.html</link>
    
      
        <description>
          Apr&amp;egrave;s avoir test&amp;eacute; et d&amp;eacute;ploy&amp;eacute; avec succ&amp;egrave;s plusieurs processus BPEL simples dans Petals ESB, nous en avons conclu que nous utiliserions ce bus pour d&amp;eacute;ployer nos processus m&amp;eacute;tier. Cependant quand nous avons commenc&amp;eacute; &amp;agrave; d&amp;eacute;velopper des processus un peu plus &amp;eacute;labor&amp;eacute;s, nous nous sommes vite rendus compte que le moteur BPEL utilis&amp;eacute; n&#039;impl&amp;eacute;mentait pas toute une partie de la sp&amp;eacute;cification WS-BPEL 2.0.&lt;br /&gt;
Le site de Petals Link propose le moteur BPEL Orchestra de l&#039;OW2 Consortium comme alternative au moteur de base, mais la distribution JBI de ce dernier est encore en cours de d&amp;eacute;veloppement.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc d&amp;eacute;cid&amp;eacute; de regarder ce que faisait la concurrence. Deux principaux serveurs on retenu notre attention car leurs moteurs BPEL impl&amp;eacute;mentaient la sp&amp;eacute;cification WS-BPEL 2.0 : ServiceMix et Glassfish ESB.&lt;br /&gt;
&lt;ul&gt;
    &lt;li&gt;Glassfish ESB est le bus ESB de Sun. Il fournit tout comme Petals une interface graphique et des outils pour faciliter le d&amp;eacute;veloppement des processus BPEL et leur d&amp;eacute;ploiement sur le serveur. De plus apr&amp;egrave;s les premiers tests le moteur BPEL semblait plus complet que celui de Petals. Mais finalement le m&amp;ecirc;me probl&amp;egrave;me bloquant que celui rencontr&amp;eacute;&amp;nbsp;sous Petals nous a fait abandonner Glassfish ESB. &lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
    &lt;li&gt;ServiceMix est le bus ESB de la fondation Apache. Le moteur BPEL de ce dernier est Apache Ode. Ce moteur respecte la sp&amp;eacute;cification WS-BPEL 2.0 et apr&amp;egrave;s quelques tests il s&#039;est r&amp;eacute;v&amp;eacute;l&amp;eacute; &amp;ecirc;tre le moteur le plus complet que nous ayons test&amp;eacute;. Cependant le d&amp;eacute;ploiement sur le serveur des processus pose probl&amp;egrave;me. Que ce soit avec la version 1.3 ou 2.0b de Ode nous avons rencontr&amp;eacute; des bugs dont un qui n&#039;a pas encore &amp;eacute;t&amp;eacute; r&amp;eacute;solu &amp;agrave; l&#039;heure actuelle. &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Apache Ode fournit une archive War qui peut &amp;ecirc;tre d&amp;eacute;ploy&amp;eacute;e sous n&#039;importe quel serveur d&#039;application JEE et donc ind&amp;eacute;pendant de tout serveur ESB. N&#039;ayant pas trouv&amp;eacute; de serveur ESB assez mature pour d&amp;eacute;ployer nos services nous sommes donc contraints d&#039;utiliser Ode avec Tomcat pour d&amp;eacute;velopper nos processus, en attendant que des corrections et/ou des am&amp;eacute;liorations&amp;nbsp;soit apport&amp;eacute;es aux autres moteurs BPEL.
        </description>
      
      
    
    
    
    <category>Architecture</category>
    
    <comments>http://www.leuville.com/soablog/2010/03/24/1269419760000.html#comments</comments>
    <guid isPermaLink="true">http://www.leuville.com/soablog/2010/03/24/1269419760000.html</guid>
    <pubDate>Wed, 24 Mar 2010 08:36:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Le choix d&#039;un serveur ESB</title>
    <link>http://www.leuville.com/soablog/2010/03/05/1267789740000.html</link>
    
      
        <description>
          Apr&amp;egrave;s avoir d&amp;eacute;crit les processus m&amp;eacute;tier &amp;agrave; l&#039;aide de diagrammes d&#039;activit&amp;eacute;s UML nous nous sommes attel&amp;eacute;s &amp;agrave; rechercher des solutions techniques pour mettre en place notre architecture orient&amp;eacute;e services. Pour cela nous nous proposons d&#039;utiliser un bus de services (ESB).&lt;br /&gt;
&lt;br /&gt;
Un bus ESB est une infrastructure logicielle tenant lieu de couche interm&amp;eacute;diaire (middleware) &amp;agrave; travers laquelle les services m&amp;eacute;tiers r&amp;eacute;employables sont rendus disponible par l&#039;interm&amp;eacute;diaire de technologies standardis&amp;eacute;es. Ce bus ESB va nous permettre d&#039;exposer et d&#039;interpr&amp;eacute;ter des processus BPEL. BPEL (Business Process Execution Language) est un langage bas&amp;eacute; sur XML et d&amp;eacute;crivant les &amp;eacute;tapes techniques de mise en oeuvre des processus m&amp;eacute;tier pr&amp;eacute;alablement d&amp;eacute;crits en UML.&lt;br /&gt;
&lt;br /&gt;
Plusieurs solutions de serveurs ESB Open Source sont disponibles sur le march&amp;eacute; : Apache Servicemix, JBoss ESB, Mule, Celtix, etc.&lt;br /&gt;
Nous avons choisi d&#039;utiliser Petals ESB qui est un bus conforme &amp;agrave; la sp&amp;eacute;cification JBI, sp&amp;eacute;cification d&amp;eacute;crivant un mod&amp;egrave;le standard d&#039;impl&amp;eacute;mentation de tels bus.&lt;br /&gt;
&lt;br /&gt;
Voici les principaux avantages qui nous ont fait choisir ce serveur :&lt;br /&gt;
&lt;ul&gt;
    &lt;li&gt; Mise &amp;agrave; disposition de nombreux composants (SOAP, BPEL, JMS, Mail, EJB, etc.).&lt;/li&gt;
    &lt;li&gt;Documentation assez compl&amp;egrave;te et expliquant bien le fonctionnement du serveur et de chacun des composants.&lt;/li&gt;
    &lt;li&gt; Interface web permet de faciliter l&#039;administration du serveur (installation/d&amp;eacute;marrage/arr&amp;ecirc;t/test des composants et des services).&lt;/li&gt;
    &lt;li&gt; Petals Studio : un IDE bas&amp;eacute; sur Eclipse facilitant grandement le d&amp;eacute;veloppement des services.&lt;/li&gt;
&lt;/ul&gt;
&lt;strong&gt; L&#039;interface web de petals :&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;img width=&#034;783&#034; height=&#034;432&#034; alt=&#034;Interface web de Petals&#034; src=&#034;http://www.leuville.com/soablog/images/Petals_ESB/petals_webconsole.png&#034; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;La page d&#039;accueil de Petals Studio :&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;img width=&#034;785&#034; height=&#034;421&#034; src=&#034;http://www.leuville.com/soablog/images/Petals_ESB/petals_studio_accueil.png&#034; alt=&#034;Page accueil de Petals Studio&#034; /&gt;&lt;br /&gt;
&lt;br /&gt;
On notera cependant que le serveur manque encore de maturit&amp;eacute;. En effet des erreurs peuvent survenir pendant le d&amp;eacute;ploiement ou la d&amp;eacute;sinstallation de certains services, il faut alors red&amp;eacute;marrer le serveur voir le r&amp;eacute;initialiser (d&amp;eacute;sinstaller tous les composants). De plus le moteur BPEL disponible sur le site n&#039;impl&amp;eacute;mente pas la totalit&amp;eacute; de la sp&amp;eacute;cification BPEL 2.0. Un composant&amp;nbsp; permettant d&#039;utiliser le moteur Orchestra de l&#039;OW2 Consortium est &amp;eacute;galement disponible mais le d&amp;eacute;veloppement de ce dernier n&#039;est pas totalement termin&amp;eacute;.
        </description>
      
      
    
    
    
    <category>Architecture</category>
    
    <comments>http://www.leuville.com/soablog/2010/03/05/1267789740000.html#comments</comments>
    <guid isPermaLink="true">http://www.leuville.com/soablog/2010/03/05/1267789740000.html</guid>
    <pubDate>Fri, 05 Mar 2010 11:49:00 GMT</pubDate>
  </item>
  
  </channel>
</rss>

