IBM Streams 4.3.0

Pool d'hôtes

Type :
hostPoolDef +,,
où :
hostPoolDef ::= ID '=' liste-hôtes,
et liste-hôtes est de type list<rstring>.
Exemple :
config hostPool : SourcePool = ["foo.watson.ibm.com", "10.8.5.6"],
ComputingPool = createPool( { size=15u, tags=["ib","blue"] }, Sys.Shared);
Description :
Liste de définitions de pool d'hôtes. Dans le cas de figure le plus simple, hostList est un littéral liste qui énumère de façon explicite les hôtes contenus en utilisant leur nom ou leur adresse IP. La plupart du temps, il s'agit d'une fonction intrinsèque qui renvoie une liste de chaînes qui indiquent des hôtes. Dans ce second cas, les hôtes à utiliser sont déterminés lors de l'exécution. Le nom de la fonction intrinsèque est createPool et ses signatures valides sont les suivantes :
config hostPool: 
  P1=createPool({size=10u, tags=["ib","blue"]}, Sys.Shared), //sized, tagged, shared
  P2=createPool({size=10u, tags=["ib","blue"]}, Sys.Exclusive), //sized, tagged, exclusive
  P4=createPool({size=10u}, Sys.Shared), //sized, untagged, shared
  P5=createPool({size=10u}, Sys.Exclusive), //sized, untagged, exclusive
  P3=createPool({tags=["ib","blue"]}, Sys.Shared), //unsized, tagged, shared
  P6=createPool(Sys.Shared); //unsized, untagged, shared

Les pools exclusifs doivent être dimensionnés. Une spécification de balise est considérée comme conjonctive. Par exemple, tags=["ib", "blue"] est interprété comme des systèmes hôte comportant les balises "ib" et "blue".

Les pools qui sont spécifiés explicitement avec leurs hôtes sont considérés comme étant dimensionnés, partagés et ne comportant pas de balises. Par exemple, la définition suivante est admise même si h1 figure à la fois dans P1 et dans P2.

config hostPool : P1=["h1", "h2"], P2=["h1", "h3"];

Les hôtes alloués à un pool d'hôtes exclusif ne sont utilisés pour aucun autre travail dans l'instance IBM® Streams. Ces hôtes sont alloués de manière exclusive à cette application. Si le même hôte est également disponible pour une autre instance IBM Streams, il peut être utilisé par cette instance.

Les hôtes qui sont alloués dans un pool d'hôtes partagé peuvent être utilisés par les autres pools d'hôtes et applications dans cette même instance.

Si l'application a un parallélisme défini par l'utilisateur, vous pouvez également utiliser des balises pour déterminer si les pools d'hôtes sont répliqués dans une région parallèle.

Valeur par défaut :
Par défaut, il n'y a aucun pool défini par l'utilisateur. Il y a toujours un pool par défaut, défini avec une configuration defaultPoolSize ou de manière implicite.
où :
Opérateur principal.

L'opérateur principal est un opérateur composite choisi comme point de départ de niveau supérieur au moment de la création d'un travail. Il doit s'agir d'une définition d'opérateur composite qui ne spécifie aucun port.

Si une configuration de pool d'hôtes ne figure pas au niveau supérieur, le compilateur génère un avertissement et l'ignore.