Interview Questions WithAnswers
Interview Questions WithAnswers
2.What are the changes you had observed in IBM Integration Bus Version 9.0 and
IBM Integration Bus Version 10.0 ?
7.Let us take an example how error handling is done for suppose if we have MQ
Input Node ---> Compute Node ---> MQ Output Node
for suppose if an error has been thrown by mq output node for queue been not
available then we can handle the error by not connecting the catch terminal of mq
nput node or if a exception handling subflow is not conneced to the catch terminal
we can handle the flow by connecting to the failure terminal.if both the terminals are
not connected then the backout queue of mqinput queueis checked if it is configured
then message is stored in the backout queue or else if backout queue is not available
or not configured then the message will be stored in the dead letter queue of the
queue manager.
i) SOAP stands for Simple Object Access Protocol. REST stands for REpresentational
State Transfer. SOAP is a XML based messaging protocol and REST is not a protocol
but an architectural style.
ii) REST is more simple and easy to use than SOAP.
iii) REST uses HTTP protocol for producing or consuming web services while SOAP
uses XML.
iv)REST is lightweight as compared to SOAP .
v) REST supports different format like text, JSON and XML while SOAP only support
XML.
vi)REST web services are exposed using URI i.e.; Uniform Resource Identifier where as
SOAP web services are exposed using WSDL document
vii)REST supports only http protocol whereas SOAP can support MQ ,FTP,JMS
bindings and HTTP .In IIB SOAP over FTP is not supported so we have only HTTP
and JMS bindings.
viii)In REST For different CRUD operations we have POST –> insert operation GET –>
retrieve operation PUT –> update operation DELETE –> delete operation where as in
SOAP There are no such methods available for SOAP web services.
ix)REST is very easy to implement,SOAP isn’t that easy to implement, when compared
to REST.
xi)SOAP: Whenever there are external system/applications (third-party applications) to
interact with our system/applications, then it is always preferred to go for SOAP as it
has got in-built ws-security features
REST: And whereas for internal system/applications (or intra-application interaction
within our organization), then it is preferred to go for REST web services as it will be
faster
16.What are the difference between BrokerWide listener and Embedded listener ?
The broker listener (the httplistener component) has an HTTPConnector for handling
HTTP messages, and an HTTPSConnector for handling HTTPS (HTTP over SSL)
messages. Each connector has its own assigned port; default values are 7080 for HTTP
and 7083 for HTTPS. You can change these port numbers by using the
mqsichangeproperties command.By default, all HTTPInput and HTTPReply nodes use
the broker-wide listener.
An embedded listener is part of each execution group. The embedded listener has an
HTTPConnector and an HTTPSConnector.
Each connector has its own assigned port, which is allocated from a range of
numbers, as required. The default range for the HTTPConnector is 7800 - 7842; the
default range for the HTTPSConnector is 7843 -7884. The first execution group to
start an embedded listener is allocated port 7800, the second is allocated 7801, and
so on.
You can change these port number ranges, and you can allocate a specific port to an
execution group, by using the mqsichangeproperties command.
You can configure one or more execution groups so that all HTTPInput and
HTTPReply that you deploy to that execution group use the embedded listener.
Because the option to use the embedded listener is at the execution group level, you
can change your configuration such that some execution groups continue to use the
broker-wide listener, while specific execution groups use the embedded listener.
However, if you disable the broker-wide listener, the execution group listeners are
used for all HTTP nodes, even if you have not explicitly enabled support for them.
Therefore, if you set all relevant broker and execution group properties to false, the
execution group listeners handle all HTTP messages
Switching to the execution group listener:
Check that the broker is running. If you want all HTTP nodes in all execution groups
to use the execution group listener, you can change the broker configuration to
disable the broker-wide listener. Run the mqsichangeproperties command to change
the broker configuration. Do not run this command if you want to keep the broker-
wide listener active for at least one of your execution groups.
mqsichangeproperties BROKER -b httplistener -o HTTPListener -n startListener -v
false
To switch to using the embedded listener for a specific execution group, run the
mqsichangepropertiescommand to change the execution group configuration. For
example
mqsichangeproperties BROKER -e exgroup1 -o ExecutionGroup -n
httpNodesUseEmbeddedListener -v true
Comment @ Naresh : Learn the concept as you and suman had worked on it
In case of failure of integration nodes or incase of integration node stopped this
applications deployed inthe nodes will not work.for this case high availability is
introduced ,in the two integration nodes will be created with the same
properties,then one will be active mode ,the other node will be in the stanby
mode .in case of failure of active integration node ,the standy mode integration node
will become active and the process will be processed by this node without any
interruption.
20.How do you identify exception in production ?
To configure dsn we have to copy the odbc.ini file from the server to the local system
for this we use winscp.in the odbc.ini file we configure the dsn name for the database
and again the copy the file in to server.
28.Have you worked with multiple DSN’s ?
yes i did worked on multiple dsns for with mysql database.
In mysql to interact with multiple dsn names we have to use the query
SELECT columnname from Database.Datasource.schema.tablename.
Ans: File Transfer Protocol is also known as FTP. It is a network protocol which is
implemented in order to exchange files remote location over a TCP/IP network that is
the Transmission Control Protocol and the Internet Protocol. FTP uses password
usually implemented, anonymous user access is also available through an FTP server.
Secure File Transfer Protocol (also known as SSH File Transfer Protocol) is a network
protocol which allows file access, transfer, and management over a secure data
stream.
FTP is accessible anonymously, and in most cases is not encrypted; SFTP protocol is
encrypted, and makes the control of traffic ineffective when using traditional proxies.
Ans: If want to connect to an FTP server in IIB using File nodes such as File input, file
output or file read node. For connect to remote FTP system through broker we need
FTP server servername , port, working directory, user name and password.
For connect to an FTP server, the security identity must have an ftp:: prefix, to enable
the file nodes to find the identity definition. For example,
In the FTP property of file nodes,we need to enable(check) the remote transfer
option then we need to configure like below
36. What are the folders formed when you deploy your flow by using File nodes?
Ans: When deployed message flow three folders are formed those are
Mqsibackout
Mqsiarcheive
Mqsitransit
1. Which is the node used to send and receive messages using URL ?
Ans: By using HTTP Request Node to send and receive messages. If any messages
send by HTTP request node through HTTP reply and again receive the response
message from HTTP Reply node. So through URL sending and Receiving messages by
using HTTP Request Node.
fields. The COALESCE function evaluates its parameters in order and returns the first
one that is not NULL. The result is NULL if, and only if, all the arguments are NULL.
The parameters can be of any scalar type, but they need not all be of the same type.
If the input message does not have have but end system expected some value that
case we are use COALESCE functions to assign null value to particular field.
<Name><Firstname>suman</FirstName><Middilename></
Middlename><Lastname>vallepu</Lastname></Name>
In the above example middilename field does contain any value but end system
expected some value for storing that case we are using COALESCE function to assign
null value.
Use the COALESCE function to provide a default value for a field, which might not
exist in a message. For example, the expression:
COALESCE(Body.Salary,0)
returns the value of the Salary field in the message if it exists, or 0 (zero) if that field
does not exist.
Ans: OVERLAY returns a new string of the same type as the source and is identical to
source_string, except that a given substring in the string, starting from the specified
numeric position and of the given length, has been replaced by source_string2. When
the length of the substring is zero, nothing is replaced.
Syntax: OVERLAY( ‘source_string’ PLACING ‘source_string2’ FROM start position
For stringlength)
For example:
OVERLAY(‘ABCDEFGHIJ’ PLACING ‘1234’ FROM 4 FOR 3)
returns the string 'ABC1234GHIJ'.
Ans: The BITSTREAM field function returns a value that represents the bit stream that
is described by the given field and its children. Its use is deprecated; use the newer
ASBITSTREAM function instead. The BITSTREAM function can be used only on a tree
The BITSTREAM function returns a value of type BLOB that represents the bit stream
that is described by the given field and its children. For incoming messages, the
appropriate portion of the incoming bit stream is used. For messages that are
constructed by Compute nodes, the following algorithm is used to establish the
ENCODING, CCSID, message set, message type, and message format
To view the Components of Broker, Queue Manager associated with the Broker,
Integration servers
mqsilist <broker_name/Integrationnode_name>
To view the Flows & Resources (Jars, Message Dictionaries, Message Maps etc)
deployed onto a Broker's Execution Group:
mqsilist <broker_name/Integrationnode_name> -e <Integration_server>
Ans: In my project I had prepared low level document(LLD) based on high level
document(HLD) for my module. I design and developed a message flow based on
LLD. Responsible for transform a message to one format to different message
format’s based on requirement. Responsible for handled exceptions if any occurs by
using common subflow. Responsible prepared a unit test cases and done unit testing
based on those test cases for my module and updated developed source code in git
repository by using source tree .
Ans: I had provided security for message flow by configured SSL in broker wide. For
provided SSL security first I configured PKI keystore and truststore file in broker
registry for secure handshake then given security by username and password by
using mqsisetdbparms, meqsichangeproperties commands in command console. We
can provide security also by using TLS and sessionID configurations for our message
flow.
Ans: For SSL configuration for message flow first Set up a public key infrastructure
(PKI) at broker level.
To configure the PKI at the integration node level, define the integration node
registry properties to identify the location, name, and password of the keystore and
truststore files. Make sure the integration node is running -- if it is not, use the
following command to start it in IBM Console:
mqsichangeproperties IIB9BRK1 -o BrokerRegistry -n brokerKeystoreFile -v C:\
BrokerSSL\IIB9BRK1\IIB9BRK1keystore.jks
mqsistop IIB9BRK1
mqsistart IIB9BRK1
In the message flow we need to enable HTTP’S if its HTTP input node and if it’s HTTP
request node we need to given HTTPS url.
With version 2.0, WSDL supports all HTTP verbs and it is now considered to be an
acceptable method of documenting REST services.
The second alternative is WADL, the Web Application Description Language. WADL is
championed by Sun Micro systems. Like the rest of REST, WADL is lightweight, easier
to understand and easier to write than WSDL. In some respects, it is not as flexible as
WSDL (no binding to SMTP servers), but it is sufficient for any REST service and much
less verbose.
1. What is the difference between REST and SOAP ?
Ans:
SOAP REST
Ans: Restful services are light weight compared to SOAP services. Because Rest
services support JSON,XML/text format and soap support xml format.
For example:
If I want to create a message just like my name using Rest services I don’t need any
declarations just I give my name in json/xml format like {“name”:”suman”}.
For same message I need to create using SOAP message first I need to follow
structure like envelopes, headers and body.So it takes heavy,that’s reason Restful
services more light compare to soap services.
If you want to connect to an SFTP server, the security identity must have an sftp::
prefix, example:
In the FTP property of file nodes,we need to enable(check) the remote transfer
option then we need to configure like below
58. Where do place BAR Files and before deployment of BAR File how do you place
in remote location?
Ans: First Created a BAR file in local system and moved to server location using
winscp after that deployed BAR file into remote server using putty.
Answer for update source code to RTC: I searched internet and gather some
information about update source code to RTC. If it’s useful please follow the
below content.
To integrate the Rational Team Concert client with the WebSphere Message
Broker Toolkit, must have the Rational Team Concert client in the same package
group as the WebSphere Message Broker Toolkit.
The supported version of Rational Team Concert is V3.0.
Use the Installation Manager to install the Rational Team Concert client into the same
package group as the WebSphere Message Broker Toolkit.
Using the Installation Manager adds all the Rational Team Concert client capability
We can also install the WebSphere Message Broker Toolkit into the Rational Team
If the products are in the same package group, they can be installed in any order.
So as per my knowledge these are the steps to configure DSN for AIX.
Process1:
Steps:
You define the DSN on the computer where the IBM InfoSphere Information Server
engine is installed. Users of the parallel job tutorial use this DSN in the Designer
client to connect to the tutorial table.
To set up a DSN on an AIX, HP-UX, or Linux computer, you edit three files:
• dsenv
• odbc.ini
• uvodbc.config
The entries that you make in each file depend on your operating system and the type
of database that you are connecting to.
• Configuring the dsenv file
For some ODBC connections, plug-ins, and connectors, and for interactions
with external applications such as IBM WebSphere MQ, you must add
environment variables to enable interactive use of ODBC drivers to make a
connection to an ODBC data source.
• Configuring the odbc.ini file
The odbc.ini file provides information about connecting to databases and
database applications that you use. You must configure this file so that
InfoSphere DataStage can access ODBC data sources.
• Configuring the uvodbc.config file
You specify the ODBC data source name (DSN) for each database in the
uvodbc.config file.
• Creating and binding a DB2 package to a DSN
To use a DB2 package, you must bind it to each DB2 data source name (DSN).
• Configuring other ODBC drivers
You can use ODBC drivers from other vendors to connect to data sources.
However, you can use only one ODBC Manager, so you cannot use drivers
from other vendors if you use the InfoSphere DataStage drivers.
• Testing ODBC connectivity
After you configure ODBC connectivity that you defined for InfoSphere
DataStage, test the configuration to verify your connection to the data source.
You define DSN on Linux, Solaris, and other UNIX-like platforms in a text file. Your
client's driver manager reads this file to determine how to connect to your HP Vertica
database. The driver manager usually looks for the DSN definitions in two places:
• /etc/odbc.ini
The structure of these files is the same, only their location differs. If both files are
present, the ~/.odbc.ini file usually overrides the system-wide /etc/odbc.ini file.
Note: See your ODBC driver manager's documentation for details on where these
files should be located and any other requirements.
• Parameter definitions, which contain a parameter name, an equals sign (=), and then
the parameter's value.
The first section of the file is always named [ODBC Data Sources], and contains a list
of all the DSNs that the odbc.ini file defines. The parameters in this section are the
names of the DSNs, which appear as section definitions later in the file. The value is a
text description of the DSN and has no function. For example, an odbc.ini file that
defines a single DSN named HP VerticaDSN could have this ODBC Data Sources
section:
[ODBC Data Sources]
HPVerticaDSN = "vmartdb"
Appearing after the ODBC data sources section are sections that define each DSN.
The name of a DSN section must match one of the names defined in the ODBC Data
Sources section.
Create a section whose name matches the DSN name you defined in step 2. In this
section, you add parameters that define the DSN's settings. The most commonly-
defined parameters are:
Driver – The location and designation of the HP Vertica ODBC driver, or the name of
a driver defined in the odbcinst.ini file (see below). For future compatibility, use the
name of the symbolic link in the library directory, rather than the library file:
For example, the symbolic link for the 64-bit ODBC driver library is:
/opt/vertica/lib64/libverticaodbc.so
The symbolic link always points to the most up-to-date version of the HP Vertica
client ODBC library. Use this link so that you do not need to update all of your
DSNs when you update your client drivers.
Database – The name of the database running on the server. This example uses
vmartdb for the vmartdb.
• PWD —The password for the specified user name. This example leaves the
password field blank.
• Port — The port number on which HP Vertica listens for ODBC connections. For
example, 5433.
• SSLKeyFile — The file path and name of the client's private key. This file can
reside anywhere on the system.
• SSLCertFile —The file path and name of the client's public certificate. This file
can reside anywhere on the system.
• Locale — The default locale used for the session. By default, the locale for the
database is: en_US@collation=binary.
PreferredAddressFamily:
The IP version to use if the client and server have both IPv4 and IPv6 addresses
and you have provided a host name. Valid values are:
For example:
[VMart]
Driver = /opt/vertica/lib64/libverticaodbc.so
Database = vmartdb
Servername = host01
UID = dbadmin
PWD =
Port = 5433
ConnSettings =
SSLKeyFile = /home/dbadmin/client.key
SSLCertFile = /home/dbadmin/client.crt
Locale = en_GB
See Data Source Name (DSN) Connection Parameters for a complete list of
parameters including HP Vertica-specific ones.
Instead of giving the path of the ODBC driver library in your DSN definitions, you can
use the name of a driver defined in the odbcinst.ini file. This method is useful method
if you have many DSNs and often need to update them to point to new driver
libraries. It also allows you to set some additional ODBC parameters, such as the
threading model.
Just as in the odbc.ini file, odbcinst.ini has sections. Each section defines an ODBC
driver that can be referenced in the odbc.ini files.
• Driver — The location and designation of the HP Vertica ODBC driver, such as
/opt/vertica/lib64/libverticaodbc.so
For example:
[HPVertica]
Driver = /opt/vertica/lib64/libverticaodbc.so
Then, in your odbc.ini file, use the name of the section you created in the odbcinst.ini
file that describes the driver you want to use. For example:
[VMart]
Driver = HPVertica
If you are using the unixODBC driver manager, you should also add an ODBC section
to override its standard threading settings. By default, unixODBC serializes all SQL
calls through ODBC, which prevents multiple parallel loads. To change this default
behavior, add the following to your odbcinst.ini file:
[ODBC]
Threading = 1
Process2:
Procedure
Copy the odbc.ini sample file that is supplied in the install_dir/server/ODBC/unixodbc/
directory to a location of your choice. Each integration node service user ID on
the system can therefore use its own data source name (DSN) definitions.
Note: To prevent problems with the backup and restore procedures, we recommend
that the copy of the sample file is placed into the /var/mqsi directory rather than
the home directory for your user ID.
Ensure that the odbc.ini file is owned by the mqbrkrs group, and has 664 permissions.
Set the ODBCINI environment variable to point to your odbc.ini file, specifying a full
path and file name. Make sure that you point to the copy, do not point to the
odbc.ini file in the installation directories.
Copy the odbcinst.ini sample file that is supplied in the
install_dir/server/ODBC/unixodbc/ directory to a location of your choice. See Note:
in step 1.
Ensure that the odbcinst.ini file is owned by the mqm:mqbrkrs group and has the
same permissions as the supplied sample file.
Set the ODBCSYSINI environment variable to point to the directory that contains the
odbcinst.ini file, specifying a full path name. Make sure that you point to the
directory containing the copy, do not point to the directory containing the
odbcinst.ini file in the installation directories.
If you are connecting to DB2® solidDB®, or Informix® databases, set the library
search path environment variable to show the location of the libraries for the
database manager that you are using.
For more information about the library search path, ask your database administrator
(DBA), or see the documentation for your database manager.
The library search path environment variable depends on your platform:
• On AIX®, set LIBPATH.
Updates to the library search path are not required for other supported databases.
If you are using a DB2 database instance that is installed on AIX, a single process can
make a maximum of 10 connections that use shared memory to a DB2 database.
Use TCP/IP mode to connect to the database instance.
Edit the final stanza in the odbc.ini file, the [ODBC] stanza, to specify the location of
the installed DataDirect ODBC Drivers.
To ensure that you edit the correct odbc.ini file, you can open the file in the vi text
editor by using the following command:
vi $ODBCINI
In InstallDir, add the IBM Integration Bus installation location to complete the fully
qualified path to the ODBC directory. If you do not specify this value correctly, the
ODBC definition does not work.
For InstallDir, ensure that the path points to the ODBC directory in the IBM
Integration Bus installation location. If this value is not specified correctly, the
ODBC definition does not work.
Accept the default values shown in the sample odbc.ini file for all the other entries in
the stanza.
For example, on AIX:
;##########################################
;###### Mandatory information stanza ######
;##########################################
[ODBC]
InstallDir=/usr/opt/IBM/mqsi/10.0.0.2/server/ODBC/drivers
UseCursorLib=0
IANAAppCodePage=4
UNICODE=UTF-8
Edit the first stanza in the odbc.ini file, the [ODBC Data Sources] stanza, to list the
DSN of each database.
For example, on AIX:
;##########################################
;###### List of data sources stanza #######
;##########################################
[ODBC Data Sources]
DB2DB=IBM DB2 ODBC Driver
ORACLEDB=DataDirect ODBC Oracle Wire Protocol
ORACLERACDB=DataDirect ODBC Oracle RAC Wire Protocol
ORACLESSLDB=DataDirect ODBC Oracle SSL Wire Protocol
SYBASEDB=DataDirect ODBC Sybase Wire Protocol
SYBASEDBUTF8=DataDirect ODBC Sybase UTF8 Wire Protocol
SQLSERVERDB=DataDirect ODBC SQL Server Wire Protocol
INFORMIXDB=IBM Informix ODBC Driver
SOLIDDB_DB=IBM Solid DB ODBC Driver
List all your DSNs in your odbc.ini file, regardless of the database manager. You can
define multiple DSNs to resolve to the same database; however, if you are using
global coordination of transactions with an Oracle database, do not use this
option because it might cause data integrity problems.
For each database that you listed in the [ODBC Data Sources] stanza, within the
odbc.ini file, create a data source stanza in the odbc.ini file. The entries in the
stanza depend on the database manager. For a DB2 database instance:
In Driver, add the full path of your DB2 installation.
In Description, type a meaningful description of the database. This field is for
information only and does not affect the connection.
In Database, type the DB2 alias. The data source name must be the same as the
database alias name. If you are using a remote DB2 database, you must set up
your client/server connection to resolve this alias to the correct database. For
more information, see the DB2 documentation.
If the requirement is to have multiple stanzas that refer to the same DB2 database,
aliases must be created in DB2 by using the DB2 CATALOG command. These
aliases can then have their own stanza in the ODBCINI file.
The ODBCINI file cannot be used to set up aliases for DB2.
For example, on AIX:
;# DB2 stanza
[MYDB2DB]
DRIVER=/opt/IBM/db2/V9.7/lib64/db2o.o
Description=IBM DB2 ODBC Database
Database=MYDB2DB
Ans: If any exception occurs it will check catch terminal of node, catch terminal is not
connected,then check failure terminal if it is not connected then terminate the
message. we have a frame works I used that frame work to handle exceptions in my
project.That frame work can be connected catch terminal of node.
<definitions >
<It is the root element of all wsdl documents.It defines the name of the web
service,declares multiple name spaces used throughout the remainder of the
document>
<types>
<The data types to be used in the messages are int the form of XML schemas>
<message>
<An abstract definition of the data being communicated. In the example, the
message contains just one part, response, which is of type string, where string is
defined by the XML Schema>
<portType>
<binding>
<Describes how the operation is invoked by specifying concrete protocol and data
format specifications for the operations and messages>
<port>
<Specifies a single endpoint as an address for the binding, thus defining a single
communication endpoint>
<service>
<Specifies the port address(es) of the binding. The service is a collection of network
endpoints or ports>
Eg for WSDL:
Xmlns
Xmlns:soap
Xmlns:tns
Xmlns:xsd
</message>
</message>
</operation>
</portType>
Transport = “”/>
<soap address
Ans:<portType>
For example
</operation>
The port type contains set of operations,operations are input request and output
response of the message.
Ans:If any exception occurs in my flow to communicate through Email and query
tracker document.
67.What is ODM ?
Ans:
68.How your convert XML TO JSON and JSON TO XML in your message flow?
Ans:we have write the correlation
Ans:I have used loop back request node in my project because I used mongo db
database.Loop back request node understand json format that’s why I converted json
format.
71.What condition your written in Esql code to retrieve details from mongodb
using loopback request node?
Ans:To retrieve details from mongo db using loopback request node I have wrote
correlation path I.e
LocalEnvironment.Destination.Loopback.Request.filter.where = {“id”:’||var||’}.
This condition is used for to retrieve data from mongo db using loop back request
node.
72.What are the operations possible in Mongodb and what operation your
perform to retrieve details from Mongodb?
Create
Retrieve
Update
Delete
2.You can create message flows to receive an MQTT message by using MQTT
subscribe node to one or more topics on an MQTT server.
3.You can send an MQTT message by using the MQTT publish node in your message
flow to publish message to a topic on an MQTT server.
I have created local queue in queue manager.after that I have created Topic in that
Topic mentioned Topic string name.Then Topic is created,after that we have to create
subscription in that subscription select topic name and also mention the destination
queue name.
In topic we have to select test publication in that publication to give topic name and
message data that message will be shared to number of customers.
For suppose we have take multiple subscribers we have create multiple local queues.
75.What do you know about WMQ ? your IIB developer, so have you worked on
WMQ ?
Ans:The WMQ is used to transfer and routing messages.at the time message broker
mq is parent means message broker is depends on mq for suppose we have create
broker at that you have to give the queue manager.yes I have worked on WMQ.
Remote queue is used to send message from one queue manager to another queue
manager.
Sender channel is used to send message and receiver channel is used to receive
message means connection can be establish.
I have create two queue mangers. In one queue manager transmission queue and
remote queue is created one sender channel.
Put a message in remote queue the message will be stored in second queue manager
local queue.
78.How you Handling Exception in your message flow and how your developed
it?
Ans:If any exception occurs it will check catch terminal of input node catch terminal is
not connected,then check failure terminal if it is not connected then it will check back
out queue that is also not mention then check dead letter queue check either system
defined queue or user defined queue. we have a frame works I used that frame work
to handle exceptions in my project.That frame work can be connected catch terminal
of input node.
79.For storing exceptions which database your used in your latest project?
84.In IIB10 Particularly, what version your used in your latest project?
The correlation is
Ans:If any exception occurs it will check catch terminal of input node catch terminal is
not connected,then check failure terminal if it is not connected then it will check back
out queue that is also not mention then check dead letter queue check either system
defined queue or user defined queue. we have a frame works I used that frame work
to handle exceptions in my project.That frame work can be connected catch terminal
of input node.
For suppose we have to create 10 additional instances at that time 10 threads will be
processed.
We have to give 10 records that 10 records will be processed at a time that means
the performance is increase.
First we have create application that application can be deployed,then open the bar
file in the bar open flow in that flow we have properties
Workload management we have to give the additional instances.
Shared row concept is used message flow level to retrieve data from database that
data can be store in a tree that means to retrieve data from database every time to
hit database,that’s why the database performance is decreased.That’s why we need
to introduced shared row concept,we have to create shared row in the compute node
to retrieve data from database that data can be stored in a tree that data can be
used in multiple nodes.
User Defined Properties :It is used to change urls,queue names,dsn by used to declare
external variable at run time.
Promote Property :It is used to multiple compute nodes at that time to give one dsn
name.
For suppose we have to create 10 additional instances at that time 10 threads will be
processed.
We have to give 10 records that 10 records will be processed at a time that means
the performance is increase.
First we have create application that application can be deployed,then open the bar
file in the bar open flow in that flow we have properties
Global cache:Global cache is used to reuse data.an in memory cache where some
details can be stored.By this way information can be shared between process(Brokers).
Avoiding the frequent backend interactions by storing some frequently quarried data.
The data can be shared in multiple brokers that can be used in multiple times.
The catalog server is used controls placement of data and monitors health of
containers.
91. What are the difference methods in increasing performance while developing
Esql code.
Ans:
ESQL array processing
Array subscripts [ ] are expensive in terms of performance because of the way in
which subscript is evaluated dynamically at run time. By avoiding the use of array
subscripts wherever possible, you can improve the performance of your ESQL
code. You can use reference variables instead, which maintain a pointer into the
array and which can then be reused.
ESQL CARDINALITY function
Avoid the use of CARDINALITY in a loop; for example:
WHILE ( I < CARDINALITY (InputRoot.MRM.A.B.C[]
The CARDINALITY function must be evaluated each time the loop is traversed, which
is costly in performance terms. This is particularly true with large arrays because
the loop is repeated more frequently. It is more efficient to determine the size of
the array before the WHILE loop (unless it changes in the loop) so that it is
evaluated only once; for example: SET ARRAY_SIZE = CARDINALITY
(InputRoot.MRM.A.B.C[]
WHILE ( I < ARRAY_SIZE )
ESQL DECLARE and EVAL statements
Reduce the number of DECLARE statements (and therefore the performance cost) by
declaring a variable and setting its initial value within a single statement.
lternatively, you can declare multiple variables of the same data type within a
single ESQL statement rather than in multiple statements. This technique also
helps to reduce memory usage. The EVAL statement is sometimes used when
there is a requirement to dynamically determine correlation names. However, it is
expensive in terms of CPU use, because it involves the statement being run twice.
The first time it runs, the component parts are determined, in order to construct
the statement that will be run; then the statement that has been constructed is
run.
ESQL PASSTHRU statement
The following techniques can significantly improve performance when you are using
PASSTHRU statements: Avoid the use of the PASSTHRU statement with a CALL
statement to invoke a stored procedure. As an alternative, you can use the
CREATE PROCEDURE ... EXTERNAL ... and CALL ... commands.
When you are working with SQL statements that require literal or data values, use
host variables, which map a column value to a variable. This enables dynamic SQL
statements to be reused within the database. An SQL PREPARE on a dynamic
statement is an expensive operation in performance terms, so it is more efficient
to run this only once and then EXECUTE the statement repeatedly, rather than to
PREPARE and EXECUTE every time.
For example, the following statement has two data and literal values, 100 and IBM:
PASSTHRU(’UPDATE SHAREPRICES AS SP SET Price = 100 WHERE SP.COMPANY =
‘IBM’’).
ESQL reference variables
You can use reference variables to refer to long correlation names such as
InputRoot.XMLNSC.A.B.C.D.E. Declare a reference pointer as shown in the
following example: DECLARE refPtr REFERENCE to InputRoot.XMLNSC.A.B.C.D;
To access element E of the message tree, use the correlation name refPtr.E.
You can use REFERENCE and MOVE statements to help reduce the amount of
navigation within the message tree, which improves performance. This technique
can be useful when you are constructing a large number of SET or CREATE
statements; rather than navigating to the same branch in the tree, you can use a
REFERENCE variable to establish a pointer to the branch and then use the MOVE
statement to process one field at a time.
ESQL string functions
String manipulation functions used within ESQL can be CPU intensive; functions such
as LENGTH, SUBSTRING, and RTRIM must access individual bytes in the message
tree. These functions are expensive in performance terms, so minimizing their use
can help to improve performance. Where possible, also avoid executing the same
concatenations repeatedly, by storing intermediate results in variables.
Message trees with repeating records
Performance can be reduced under the following conditions:
You are using ESQL processing to manipulate a large message tree
The message tree consists of repeating records or many fields
You have used explicit SET statements with field reference paths to access or create
the fields You have observed a gradual slowing of message flow processing as the
ESQL processes more fields or repetitions
92. How work load balancing is done in MQ clustering.
Ans: WebSphere MQ Clustering - Workload balancing: One huge advantage of
WebSphere MQ Clustering is workload balancing. You can have more than one
instance of the same queue on different queue managers in the cluster. This
gives you lots of advantages: increased availability of queues and applications,
faster processing of messages, and a more even distribution of workload in your
network.
Examples of the same cluster queue on different queue managers:
Cluster queue manager 'A' has a queue called 'ATM.QUERY'
Cluster queue manager 'B' has a queue called 'ATM.QUERY'
Cluster queue manager 'C' has a queue called 'ATM.QUERY'
DFDL: IBM Integration Bus uses the Data Format Description Language (DFDL)
parser to read and write the messages in the dfdl domain, when reading a
message and it interprets a bit stream by using grammer defined in it. DFDL
generates a corresponding dfdl domain logical message tree in the iib like xml to
csv and etc.
Ans: My recent project on Inventory Management system , the main objective of this
project is to refill the products based on the threshold manitained by store. Every
store maintains the threshold level whenever the stock reaches the threshold
level a purchase order is generated and send to the Vendor. Bases on the
availability of the product the Vendor confirms the order with the Retailer.
Version 10 :-
1)Flow Exerciser : To check that a message flow or integration service is processing
messages as expected, we can send messages to the flow by using the Flow Exerciser.
You can then use the Flow Exerciser to show the path that each message took, and
view the structure and content of the logical message tree at any point in a message
flow. 2)mqsireportdbparams command :You can
return a list of parameters that are set on an integration node. In addition, you can use
the mqsireportdbparms to check if security credentials are set, or identify if you are
using the correct password for an integration node.
3)REST Nodes got Introduced.
4)Loopback request Node got introduced.
5) MQTT Nodes.
6) Webuser Interface.
7)Shared libraries : Shared libraries are introduced to share resources between
multiple. applications. Libraries in previous versions of IBM Integration Bus are static
libraries. 8) MQ Client Connections
137) How many message formats did you work in your project?
A)I have used XMLNS format to parse xml type of messages and also converted
XMLNS into JSON to parse input messages into JSON format.
145)What is the difference between the MQInput Node and MQ GET Node?
A)MQInput node receives a message from websphere message queue that is defined
in the queue manager of a broker.
MQGET Node reads message from a particular queue and can be used anywhere in
the message flow.
If a cluster contains more than one instance of the same queue, WebSphere MQ
selects a queue manager to route a message to. It uses the cluster workload
management algorithm to determine the best queue manager to use. You can
provide the workload balancing algorithm to select the queue manager by writing a
cluster workload exit program.
Suitable destinations are chosen based on the availability of the queue manager and
queue, and on a number of cluster workload-specific attributes associated with queue
managers, queues and channels.
If the results of the workload balancing algorithm do not meet your needs, you can
write a cluster workload user exit program. Use the exit to route messages to the
queue of your choice in the cluster.
Full repository and partial repository
A repository is a collection of information about the queue managers that are
members of a cluster.
The repository information includes queue manager names, their locations, their
channels, which queues they host, and other information
Typically, two queue managers in a cluster hold a full repository. The remaining
queue managers all hold a partial repository.
Full repository
• A queue manager that hosts a complete set of information about every queue
manager in the cluster has a full repository.
• Other queue managers in the cluster have partial repositories containing a
subset of the information in the full repositories.
partial repository
• A partial repository contains information about only those queue managers
with which the queue manager needs to exchange messages.
• The queue managers request updates to the information they need, so that if
it changes, the full repository queue manager sends them the new
information.
• For much of the time, a partial repository contains all the information a queue
manager needs to perform within the cluster.
• When a queue manager needs some additional information, it makes inquiries
of the full repository and updates its partial repository.
• The queue managers use a queue called SYSTEM.CLUSTER.COMMAND.QUEUE
to request and receive updates to the repositories.
• This queue is one of the default objects .It is defined when you create an IBM
MQ queue manager
WebSphere Message Broker is built to extend WebSphere MQ. Message Broker can
do the following:
• Matches and routes communications between services
• It is capable of understanding the content of each message that it moves
through the Broker.
• Converts between different transport protocols
• Transforms message from one format to another format.
• Identifies and distributes business events from disparate sources.
• The root of a message tree is called Root. The message tree is always present,
and is passed from node to node in a single instance of a message flow.
• The message tree includes all the headers that are present in the message, in
addition to the message body. The tree also includes the Properties subtree
(described in parser), if that is created by the parser. If a supplied parser has
created the message tree, the element that represents the Properties subtree
is followed by zero or more headers.
• If the message has been received across the WebSphere® MQ Enterprise
Transport or WebSphere MQ Mobile Transport, the first header (the second
element) must be the MQMD. Any additional headers that are included in the
message appear in the tree in the same order as in the message. The last
element beneath the root of the message tree is always the message body.
• If a user-defined parser has created the message tree, the Properties tree, if
present, is followed by the message body.
• The root of the environment tree is called Environment. This tree is always present
in the input message; an empty environment tree is created when a message is
received and parsed by the input node. You can use this tree as you choose, and
create both its content and structure.
• IBM Integration Bus uses fields in the Environment tree in only two situations. If
you have requested data collection for message flow accounting and statistics,
and have indicated that accounting origin basic support is required, the broker
checks for the existence of the field Environment.Broker.AccountingOrigin. If the
field exists, the broker uses its value to set the accounting origin for the current
data record. For further information about the use of this field.
• If you have activated a message flow to emit monitoring events the broker stores
correlation attributes in the Environment tree.
• The environment tree differs from the local environment tree in that a single
instance of it is maintained throughout the message flow. If you include a
Compute node, a Mapping node, or a JavaCompute node in your message flow,
you do not have to specify whether you want the environment tree to be
included in the output message. The environment tree is included automatically,
and the entire contents of the input environment tree are retained in the output
environment tree, subject to any modifications that you make in the node. Any
changes that you make are available to subsequent nodes in the message flow,
and to previous nodes if the message flows back (for example, to a FlowOrder or
TryCatch node).
• If you want to create your own information, create it in the environment tree in a
subtree called Variables.
• Use the local environment tree to store variables that can be referred to and
updated by message processing nodes that occur later in the message flow.
• You can also use the local environment tree to define destinations (that are
internal and external to the message flow) to which a message is sent.
• IBM Integration Bus also stores information in LocalEnvironment in some
circumstances, and references it to access values that you might have set for
destinations
• The root of the exception list tree is called ExceptionList, and the tree consists
of a set of zero or more exception descriptions. The exception list tree is
populated by the message flow if an exception occurs. If no exception
conditions occur during message flow processing, the exception list that is
associated with that message consists of a root element only. This list is, in
effect, an empty list of exceptions.
• The exception list tree can be accessed by other nodes in the message flow
that receive the message after the exception has occurred. You can modify the
contents of the exception list tree only in a node that provides an interface to
modify the outbound message tree; for example, the Compute node.
• If an exception condition occurs, message processing is suspended and an
exception is thrown. Control is passed back to a higher level; that is, an
enclosing catch block. An exception list is built to describe the failure
condition, and the whole message, together with the local environment tree,
and the newly-populated exception list, is propagated through an exception-
handling message flow path.
• The child of ExceptionList may be any one of the exception types that is
included in the following list. Typically, only one child of the root is created,
although more than one might be generated in some circumstances. The child
of ExceptionList contains a number of children, each of which may also be any
one of the types in the following list.
The last of these children provides further information specific to the type of
exception.
• FatalException
• RecoverableException
• ConfigurationException
• SecurityException
• ParserException
• ConversionException
• DatabaseException
• UserException
• CastException
• MessageException
• SqlException
• SocketException
• SocketTimeoutException
• UnknownException
Ans:
The ASBITSTREAM field function generates a bit stream for the subtree of a given
field according to the rules of the parser that owns the field.
clauses are as follows:
• Options
• Encoding
• CCSID
• Message set
• Message type
• Message format
syntax:ASBITSTREAM(Field Reference,Clause).
Ans:
Subflow is to provide a common sequence of actions to be used by several message
flows, applications, or integration services. You can include subflows in your message
flows in the same way as you include built-in or user-defined nodes. You can also
connect subflows to other nodes in the same way.
A subflow provides the following benefits:
• Reusability and reduced development time.
• Consistency and increased maintainability of your message flows.
• Flexibility to tailor a subflow to a specific context (for example, by updating
the output queue or data source information).
164. What are the different transport medias in message broker?
Ans: HTTP,MQ,FTP,SOAP,JMS,TCPIP,SMTP.
• Function is mainly used in the case where it must return a value. Where as a
procedure may or may not return a value or may return more than one value
using the OUT parameter.
• Function can be called from SQL statements where as procedure can not be
called from the sql statements.
• Functions are normally used for computations where as procedures are
normally used for executing business logic.
• You can have insert,update, delete statements in a function. But, you cannot
call such a function in a SQL query.
• Function returns 1 value only. Procedure can return multiple values (max
1024).
• A procedure may modify an object where a function can only return a value
The RETURN statement immediately completes the execution of a subprogram
and returns control to the caller.
166. do you find the log files of the Message Broker on windows environment?
Ans: Yes,we can find the log files of the Message Broker on windows environment.
In compute node you can change the entire message even the header assemblies.
But, In mapping node you can change the message assembly, message body, and
properties.
Ans: The Compute Mode property controls which components are used by default in
the output message. Select the property to specify whether the Message,
LocalEnvironment (previously specified as DestinationList), and Exception List
components that are either generated in the node or contained in the incoming
message are used.
On propagation from the node, the following trees are propagated from the
Compute or Mapping node for the following settings.
Ans:In Compute node you can transform the message by coding ESQL in the ESQL
resource file attached. Whereas, In mapping node you can use graphical maps to
transform input message by associating an input message model such as a DFDL or
XML schema, or an MRM Message Set and an output message model.
In compute node you can change the entire message even the header assemblies.
But, In mapping node you can change the message assembly, message body, and
properties.
Ans:
OutputLocalEnvironment.Destination.MQ.DestinationData[1].queueName =
queueName
SOAP HTTP
1.SOAP stands for simple object 1.HTTP stands for hypertext transfer protocal.
access protocal
3.SOAP is light weight but not 3.HTTP is light weight when compared to soap
lighter than http.
4.The default port number of 4.The default port number of http is 7080
soap is 7800
Ans:
An integration node is a set of execution processes that hosts one or more message
flows to route, transform, and enrich in flight messages.
An integration server is a named grouping of message flows that have been assigned
to a broker. The broker enforces a degree of isolation between message flows in
distinct integration servers by ensuring that they run in separate address spaces, or as
unique processes,
181. What made difference in naming them as Integration server from Execution
Group and Integration Node from Broker?
Ans: In before version 8 called as execution group and broker. In version 9 onwards
called as integration server and integration node.
183. What are the different kinds of listeners are there in IIB?
Ans: Broker wide listener and embedded listener
185. Scenario:If a source system is sending the HTTP message you need to send the
response to End System after transformation in another flow using MQ Nodes. How
can you send?
Ans: using mq over http concept
196. Can you change queue names dynamically using UDP and if you change a queue
name before deployment then what results will you get ?
Ans: yes I change queue name dynamically using UDP but before deployment there
is no change
206. Which is the parent of both WebSphere Message Broker and WebSphere
Message Queue?
Ans: Based eclipse wmq and wmb is developed. Wmq is the parent of wmb.
210. Think you are getting bulk of messages with all the categorizes and you have to
route to their particular destination which concept do you use?
Ans: Route to Label concept
external variable are define external Keyword and are also known as User define
properties(UDP). when we need a variable whose values are set at deployment time
we can create a external variable or User define properties(UDP).
Practically we can modify the initial values of external variables like database
name,schema names at run time environment
shared variables :shared variables are those as the name indicates share the value
across multiple message flow instance .it is used to implement the In-Memory cache
in message flow.
214. What is the difference between Route-to-label and Flow order node?
Route To Lable nodes are non programming node and we can use message flow
without writing any Processing code.
The Flow order node to control the order in which message is processed by message
flow.
MQGET Node Reads a message from a WebSphere message queue .we can use the
MQGET Node Middle of the Message flow .unlike an MQInput node, which we can
use only as the first node in a message flow. The output message tree from an
MQGet node is constructed by combining the input tree with the result tree from the
MQGET call. We can set the properties of the MQGet node based on Get by
correlation ID and Get by Message ID to control the way in which messages are
received.
for example, you can indicate that a message is to be processed under transaction
control, or you can request that, when the result tree is being created, data
conversion is performed on receipt of every input message.
MQ Reply Node sends a response to the queue specified by the originator of the
input message in the reply to Q field.
MQ Reply Node use the options that are set in report field MQMD. The MQReply
node generates a new MsgId field in the reply message, and copies the message ID
from the input message to the CorrelId field in the reply message.
SUBSTRING is a string manipulation function that manipulates all string data types
(BIT, BLOB, and CHARACTER), and extracts characters from a string to create another
string.
Return: gan
Last move field function defined weather last move function succeeded.
LAST MOVE returns a Boolean value indicating whether the last MOVE function
applied to source_dynamic_reference was successful (TRUE) or not (FALSE).
First Move function used check the first value of data.
If have any Errors occurs in message flow in input node like Error text ,Error ,Node
Name ,integration server integration node those error are send to the front end.
Use the Trace node to generate trace records that you can use to monitor the
behavior of a message flow.we can write the records to the user trace file, another
file, or the local error log (which contains error and information messages written by
all other IBM® Integration Bus components). If you write traces to the local error log,
we can issue a message from the default message catalog that is supplied with IBM
Integration Bus, or you can create your own message catalog.
The operation of the Trace node is independent of the setting of user tracing for the
message flow that contains it. In particular, records that are written by the Trace node
to the user trace log are written even if user trace is not currently active for the
message flow.
221. How to connect with the server when directory is in another system ?
We Use a FileInput node to read a file in a directory on a remote FTP or SFTP server
and then propagate messages that are based on the contents of that file.
If you want to connect to an FTP server, the security identity must have an ftp:: prefix,
to enable the file nodes to find the identity definition. For example, use the following
command for a broker called MyBroker:
If you want to connect to an SFTP server, the security identity must have an sftp::
prefix, as shown in the following example:
You can also configure a connection to an SFTP server to use public key
authentication, by specifying an SSH identity file and pass phrase, instead of a
password. For example:
Message set is definition of the structure of input message.using message set we can
validate the input message.
By creating message set project .In this message set they have 3 physical formats like
TDS,CWF,XML
The Email Output Node main property is SMTP server and Security Identity .
225. Tell me about MQ Input terminals?
The compute Node to route or transform the incoming messages and create new
output message by using Esql language and Copy message between parses ,convert
message from one code set to another transform message from one format to
another.
Filter node accept only route values.based on content we can route the message
Yes I have worked on File Nodes like a File Input Node,File Output Node,File Read .
In the compute node compute mode having seven Properties are their
they are
1.Message
2.Local Environment
4.Exception
7.ALL
An execution group is named grouping of message flows that have been assigned to
the broker .The broker enforces a degree of isolation between the message flows in
distinct execution groups by ensuring the they run in separate address spaces,unique
process.
For example The multiple flows created one Applications that time we can deploy
multiple flows in execution group at same time.
If declare BLQ (Back out queue )then the message goes to BLQ.other wise the
message goes to DLQ(Dead later queue).
234. If any exception occurs in flow where we can see in logical tree structure?
Exception list tree is Populated by the message flow if an exception occurs.we can
seen the exception in Exception tree in logical tree structure.
When a message arrives at a broker, it is received by an input node that you have
configured in a message flow. Before the message can be processed by the message
flow, the message must be interpreted by one or more parsers that create a logical
tree representation from the bit stream of the message data.
The input node creates this message assembly, which consists of four trees
The message tree is a part of the logical message tree in which the broker stores its
internal representation of the message body.The root of a message tree is called
Root. The message tree is always present, and is passed from node to node in a
single instance of a message flow.
The environment tree is a part of the logical message tree in which you can store
information while the message passes through the message flow.
The root of the environment tree is called Environment. This tree is always present in
the input message; an empty environment tree is ycreated when a message is
received and parsed by the input node. You can use this tree as you choose, and
create both its content and structure.
The environment tree is a part of the logical message tree in which you can store
information while the message passes through the message flow.
The root of the environment tree is called Environment. This tree is always present in
the input message; an empty environment tree is created when a message is received
and parsed by the input node. You can use this tree as you choose, and create both
its content and structure.
The exception list tree is a part of the logical message tree in which the message flow
writes information about exceptions that occur when a message is processed.
The root of the exception list tree is called Exception List, and the tree consists of a
set of zero or more exception descriptions. The exception list tree is populated by the
message flow if an exception occurs. If no exception conditions occur during message
flow processing, the exception list that is associated with that message consists of a
root element only. This list is, in effect, an empty list of exceptions.
236. What is the use of sending Email notification and what are the commands do
you execute for sending an Email and what is the main property that you configure
for Email output Node?
The Email Output node delivers an email message from a message flow to an SMTP
server that you specify.
I have run this commands
2.security identity
SET OutputLocalEnvironment.Destination.Routelist.Destination.Data."label"='newlabel;
broker?
we can deploy message flows in jdifferent execution groups then the performance
decrease.
240. Is it require for creating bar file for three message flows that you developed in
your project?
241. How did you take the message in your project and in which format that you
received the message?
A. In my project i used HTTP INPUT Node .Message received from Web servicess
based on URL in XML format.
245. If we deploy a flow in multiple execution groups what will be the result?
246.If we deploy the flow in multiple execution groups how many instancess will be
generated?--
247.If we deploy the message flow in multiple execution groups when we change the
code of the flow what result will you get?
248.How many instances will be created when one message flow is deployed in
multiple execution groups and second message flow is deployed in another
execution group?
The PASSTHRU function evaluates an expression and executes the resulting character
string as a database statement, returning a result set.
The PASSTHRU statement evaluates an expression and runs the resulting character
string as a database statement.
DFDL:-
Data Format Description Language (DFDL) is an XML-based language used to define
the structure of formatted data in a way that is independent from the data format
itself.
SOAP:-You can use the SOAP parser to create a common WSDL-based logical tree
format for working with Web services, independent of the physical bitstream format.
MRM:- use the MRM domain to parse and write a wide range of message formats.
251.What are the functions you have worked on?
A.SUBSTRING
OVERLAY
CAST
CARDINALITY
BITSTREAM.
A. Reset content descriptor node request to parse the message with different
parsers.
The node associates the new parser information with the input message bit stream. If
the message has been parsed already to create a message tree, and the contents of
the tree have been modified (for example, by a Compute node), the
ResetContentDescriptor node must re-create the bit stream from the message tree by
calling the current parser.
256. What is the performance of message flow when deploying into multiple
executiongroup.
257.Explain about SHARED ROW concept.
shared row to define with SHARED ROW keyword.
It is used to Retrive datafrom database that data cam be stored in a variable.
it can used in message flow level and execution group level.
it will be used to store the whole multiple records.
it can be declared only outside of module ,function and procedure.
When we are stop the broker then that data is collaps.
POSITION is a string manipulation function that manipulates all data types (BIT, BLOB,
and CHARACTER), and returns the position of one string within another.
POSITION('Village' IN 'Hursley Village');
returns 9
269. What will happen a message flow will deployed into multiple execution croups?
270. What is shared variable.? What will happen to shared variable s when EG starts?
is it shared variables is broker level are EG level?
A. shared variable to define with SHARED keyword.
it is also known as long lived variables.
shared variables can be used message flow level and EG level.
271. What is Shared variable? What will happen to shared variable when EG start? Is it
Shared variable is Broker level or EG level?
Ans: Shared variables can be used to impliment an in-memory cache in message flow,
shared variables have a long life time and are visible to multiple messages
passing through a flow.
Shared variables are intialized when the first message passing through the flow or
node after each broker and EG startsup. Shared variable is EG leval.
272. What is route to label concept and if we use this what correlation should we
have to right in compute node?
Correlation:SET
OutputLocalEnvironment.Destination.RouterList.DestinationData.lableName =
'lable name';
273. What are the commands used to configure the End Point Look-Up Node?
Ans: I didn't work on this.
124. Why do you used this email output node and how do you configured?
Ans: Email output node is used to send email messages to one or more recipients, In
my project I configured dynamicaly in commpute node to overriden at run time
by values that are specified in local environment .
mqsichangeproperties
mqsisetdbparms
275. What is difference between Data Base Node and Compute Node?
Ans: The difference is that a compute node always creates a new message, Where as
a Database node never creates a new message.
Ans: Aggregation is the generation and fan-out of related requests that are derived
from a single input massage, and the fan-in of the corresponding replies to
produce a single aggregated reply message.
The aggregation fan-in recevies the responce to the request message that are send
out by the fan-out flow, and constructs a combined response message containing
all the responses received.
Ans: The logical tree structuer is the internal reprasentation of the message, It consist
of
Message
LocalEnvironment
Environment
ExceptionList
Ans: Environment and LocalEnvironment are message trees used by the message flow
during a message processing.
Enveronment is used to store the data to use in multiple nodes, this are avilable in
flow lavel.
LocalEnvironment is used to configer the nodes dynamicaly, this are avilable flow lavel
or node lavel base on conditions.
281. If you want to connect to remote broker what you have to provide?
Ans: To connected to the remote broker Broker name, Host name, Port Number,
Userid and password are need to provide.
282. How will you deploy multiple message flows in the execution group of
broker?
Provider flow was designed using SOAP Nodes and Compute Node, SOAP Node was
Configered using WSDL and in compute node did some operations.
Ans: A CARDINALITY check is costly in terms of CPU. Having the check as a loop
cardition or within a loop should be avoided if possible.
Ans: By using HTTP Request node we can call a service dynamically by giving sufix
URL path in commpute node.
Ans: If there is any exception occures in a flow First it will check concerne node
Failure terminal if any exception handling subflow is connected then it handels
the error other wise next it will check input node cache terminal , next it will
check Failure terminal, if there is no connection to those terminals then message
will terminated other then MQ nodes if MQ nodes it will check BOQ If it exist
then message stored in BOQ other wise it will stored in DLQ if provided, there is
no DLQ then it will terminated.
288. In which location you store all the artifacts that are developed in Message
Broker ?
Ans: In my local systame.
Ans: 1. Architecture wise MB v8 is HUB and Spoke , IIB v10 is Integration BUS .
3. New nodes are Dissecion Service Node, LoopBack Request Node, REST Nodes,
MQTT Nodes.
4. Shared Library.
5. Flow Excesiger.
6. MQ connections.
Ans: XMLNSC : For XML message (Name Space aware, validation, low memory use)
MRM: The MRM domine can be used to parse and write a wide variety of message
formats.
Ans: In our organization agile process was followed, in that scrume methedolagy
was followed.
Ans: The PASSTHRU function evalutes an expression and executes the resulting
character string, returning a result set.
Ans: The MQRFH2 header contins information about the structure of message, and its
intended consumers, to enable a message broker to process the message and
deliver or publish the message to those consumers.
295. What are the non functional requirements that you have done in your project
?
296. What are the different services you have created and what is the approach ?
Ans:
Ans: Full Repository is a queue manager wich stores all the information about the
cluster. For a cluster, ther should be at least one queue maneger. Recommended
is two Queue Managers for each cluster. Full Repository Queue Managers
communicate with each other two pairs of cluster reciver channels.
All the Queue Managers wich participate in clustering and are not Full Repositery
Queue Managers are called partial repository Queue Managers. Partial Repository
Queue Managers will share all its cluster information to the Full Repository
Queue Managers.
300. Did you use Exception in Mode properties what will happen?
Ans:
301. MQinput --compute---MQOutput if an error occurs at compute node what will
happen?
Ans: First it will check Compute Failure terminal next it will check MQ input node
catch terminal , next it will check Failure terminal there is no connection to those
terminals so it will check BOQ If it exist then message stored in BOQ other wise it
will stored in DLQ if provided, there is no DLQ then it will terminated.