8/9/2019 Tibco.pdf
1/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/
Tibco
110,240
Thursday, September 30, 2010
TIBCO Adapters FAQ'S
ADAP TERS
What are Adapters?
Adapters are c onnectors to data sources to catch event c hanges. Once an Adapter
catches a event change, it publishes the message to a message box using either EMS or
RVD
Adapter is a gateway between different applications using messaging c hannels.
What are the different types of adapters?
Technical Adapters (File Adapter, DB Adapter)Functional Adapters (PeopleSoft Adapter, SAP R3 Adapter)
Custom Adapters
Adapter Components
Each adapter has two main components, an adapter palette and a run-time adapter. In
addition, some adapters include a design-time adapter. The adapter palette and design-
time adapter are used during configuration, and the run-time adapter is used at production
time.
Adapter Palette:
Each adapter includes a palette that is used for configuration. The palette is automatically
loaded into TIBCO Designer during adapter installation and available the next time
Designer is started. The palette enables you to configure adapter specific options, such
as its connection to the vendor application, logging options, and adapter services. Duringthe design phase, the palette connects to the vendor application and fetches information
about connection options and data schemas. You can then graphically select the
appropriate items. For example, during configuration of a TIBCO Adapter for
Activ eDatabase adapter instance, the palette fetches all pertinent t ables in the database.
You then choose the tables that the particular service is to send or receive.
Run-time Adapter :
Once the adapter has been configured using TIBCO Designer, it can be deployed. A
deployed adapter instance is referred to as a run-time adapter. A run-time adapter
operates in a production environment, handling communication between a vendor
application and other applications that are configured for the TIBCO environment.
Design-time Adapter :
Some adapters use a design-time adapter (DTA) to access a vendor application and
return design-time configuration information. The palette is a client of the DTA process.
The DTA connects to the vendor application, fetches data schemas and sends them to
the palette.
Adapter Lifecycle:
The following is an overview of the adapter lifecycle:
1. Install the vendor application to which the adapter connects before installing the
adapter. For many adapters, the adapter and vendor application need not be installed on
the same machine.
2. Adapters depend on other software from TIBCO. Before installing an adapter, the
TIBCO Runtime Agent software must be installed on each computer on which the
adapter runs.
3. Create an adapter instance and save it in a project using TIBCO Designer. A project
contains configuration information required for a run-time adapter to interact with the
Search
Search This Blog
Join this site
with Google Friend Connect
Members (38) More
Already a member? Sign in
Followers
2010(5)
September(5)
TIBCO Adapters FAQ'S
TIBCO EMS FAQ'S
TIBCO RV FAQ'S
TIBCO FAQ'S
TIBCO BW FAQ'S
Blog Archive
Arun
View my complete profile
About Me
0 More Next Blog Create Blog Sign
http://arun-tibco.blogspot.in/2010/09/tibco-adapters-faqs.htmlhttp://void%280%29/http://arun-tibco.blogspot.in/2010_09_01_archive.htmlhttp://arun-tibco.blogspot.in/2010/09/tibco-ems-faqs.htmlhttp://arun-tibco.blogspot.in/search?updated-min=2010-01-01T00:00:00-08:00&updated-max=2011-01-01T00:00:00-08:00&max-results=5http://www.blogger.com/profile/15919947594336620712http://arun-tibco.blogspot.in/2010/09/tibco-bw-faqs.htmlhttp://arun-tibco.blogspot.in/2010/09/tibco-faqs.htmlhttp://arun-tibco.blogspot.in/2010/09/tibco-rv-faqs.htmlhttp://arun-tibco.blogspot.in/2010/09/tibco-adapters-faqs.htmlhttp://www.blogger.com/profile/15919947594336620712http://void%280%29/http://arun-tibco.blogspot.in/2010/09/tibco-adapters-faqs.html8/9/2019 Tibco.pdf
2/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 2
vendor application and other applications.
4. Deploy the adapter. An adapter instance is deployed using TIBCO Administrator.
a) Using TIBCO Designer, create an Enterprise Archive (EAR) file, which contains
information about the adapter instances and processes you wish to deploy.
b) Using TIBCO Administrator, upload the EAR, then deploy the adapter on the
machine(s) of your choice. You can set runtime options before deployment.
c) Using TIBCO Administrator, start and stop the adapter.
d) Monitor the adapter using the built-in monitoring tools provided by TIBCO
Administrator.
Adapter Services :Adapters are responsible for making information from different applications available t o
other applications across an enterprise. To do so, an adapter is configured to provide one
or more of the following services:
Publication Service
Subscription Service
Request-Response Service
Request-Response Invocation Service
Publication Service :
An adapter publication s ervice recognizes when business events happen in a v endor
application, and asynchronously sends out the event data in realtime to interested
systems in the TIBCO environment. For example, an adapter can publish an event each
time a new customer account is added to an application. Other applications that receive
the event can then update their records just as the original application did. When an
application receives a request to create a customer record, the application notifies the
adapter about the request and the adapter publishes the event.
User Interface-----------------Application X--------------Adapter -------------- TIBCO Messaging
Create record Send to adapter Publishing
Polls on the source data table (base table).
Reads data from the source table.
Sends the data to the message bus.
Subscription Service:
An adapter s ubscription service asynchronously performs an action such as updating
business objects or invoking native APIs on a vendor application. The adapter service
listens to external business events, which trigger the appropriate action. Referring to the
previous example, an adapter subscription service can listen for customer record creation
events (happening in an application and published to the TIBCO infrastructure) andupdate another application.
TIBCO Messaging------------Adapter-----------Application Y Subscribing Update record
Reads data from the message bus.
Gives the data to the destination table.
Request-Response Service:
In addition to asynchronously publishing and subscribing to events, an adapter can be
used for synchronously retrieving data from or executing transactions within a vendor
application. After the action is performed in the vendor application, the adapter service
sends a response back to the requester with either the results of the action or a
confirmation that the action occurred. This entire process is called request-response, and
it is useful for actions such as adding or deleting business objects.
Receives requests from other applications.
Parses the requests.
Returns response (Sends only the requested data to the message bus).
Request-Respons Invocation Service:
An adapter request-response invocation service is similar t o t he request-response
service, except that the roles are reversed. The vendor application is now the requester
or initiator of the service, instead of the provider of the service. The adapter service acts
as a proxy, giving the vendor application the ability to invoke synchronously functionality
on an external system.
How can u fine-tune an ADBAdapter? What are the different parameters that can be
used?
a) we can use publish by value or publish by reference for high speed and data type
8/9/2019 Tibco.pdf
3/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 3
support like oracle long respectively.
b) Can use polar or alerter for frequent and infrequent data changes respectively.
c) Adb.PollingInterval, _ADB.DUPDECT.adapter_instance_name parameters can be
used to do flow control and avoid duplication respectively.
What are the quality of services we can have in adapter publishing services?
RV: reliable, certified, transactional
What are the wire formats we can have in adapter publishing services?
wire formats:
a) RV: active enterprise message, RV message, XML message.
b)JMS: XML message
What are the objects, which will be created if you configure and save ADB adapter?
Publishing table for source table, Trigger acts as a bridge between source and publishing
table
Explain the internal functioning of ADB publication service?
When we configure ADB publishing service it creates Publishing table for source table,
Trigger acts as a bridge between source and publishing table. Whenever data is being
inserted/updated/deleted from source table, it will be inserted into publishing table by
means of trigger. ADB has another component called polling agent. Polling agent will be
keep looking for new inserts into publishing table and if it finds any then converts the
record in p table into the specified wire format and publishes on specified quality of
service
Can we filter the records from publishing when they get updated in source table? (Data
from all regions are coming into table but I want to publish only New York data)
Yes By modifying the trigger we can only insert the New York data into publishing table
Can we limit the number of columns to be published from the source table?
Yes, using the use? field in adapter publishing table tab. just uncheck the columns u dont
want to use.
Can we publish parent and child table information by using single adapter configuration
and how?
Yes, in the adapter publisher table tab create a parent table first by look up and then add
the child table using the add child tab then click on the child table column to specify the
foreign key than to establish a relationship between the primary key of the parent and the
foreign key of the child go to the column in the child table and specify the primary key of
the parent table.In the subscription service the destination table is created and the child table mapping tab
will have the child table on the left mapped with the parent table on the right.
What is publish by value and publish by reference. Explain the pros and cons.
publish by value: in this type the changes in the source table are reflected in the p_ table
and the data is taken from there. its used when high speed is required. it dose not
support data types like oracle long.
publish by reference: in this type the data is directly taken from the source table where
only the primary key will come from p_ table. it allows data types like oracle long.
loss of changes in the source table can be lost bcos of the waiting time.(this can be
avoided using alerter).
What are the types of message transfers in file adapters?record transfer: to integrate file systems to TIBCO AE environment.
simple file transfer: to transfer files to other TIBCO adapters.
What is read schema and write schema in file adapter.
Read schema in the file adapter publisher config is used to define typr of expected input.
Here we can use the delimited file tupe or the positional file type.
What is the difference between an ADBAdapter and JDBC palette activities?
Using ADB we can only pick up the data from one database and put it in onother one.
But using JDBC we can Query using JDBCQuery and manupulate data using
JDBCUpdate. like we can use select statements and insert and update statements to
selective query and update.
ADB adapters might be useful in scenarios where we have large amount of data.
8/9/2019 Tibco.pdf
4/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 4
What is the difference between a FileAdapter and File palette activities?
In file activities the file polar cannot handle multi format data and record by record
transfer .it takes care of particular format specified and does file transfer.
where as file adapter can handle multiple formats and does record by record transfer.
If the reference to Schema changes in "Activity Input" does it through error, how do you
correct it?
Yes, and we have to correct the schema in the way the input expect it.
Where do we specify HTTP Port number?
In HTTP connection in the HTTP activities.
What is the difference between JDBC activities and ADB Adapter?
ADB uses ODBC to connect, JDBC uses JDBC
ADB is more suitable for instances where you have a lot of processing
ADB is more suitable for instances where you want that a particular action on a DB
Table triggers a BW process.
ADB adapter is best for publishing from database.
For simple inserts and updates then ADB subscriber is best.
ADB is an adapter which is used to capture the events and take action, this has pub
and sub mechanisms, pub is used to capture the events and publish the messages and
sub will be used to upsert the operations.
Jdbc is a collection of activities that can be used for custom operations
In case of insert or update to database then check if you have complex JDBC inserts,
transaction management and other dynamic queries then JDBC activities are best.
JDBC is more suitable for running dynamic code where in runtime you can execute
statements with different values depending on process execution.
What are modes of operation for File Adapter in Record Mode?
Synchronous mode upon receiving an event, the publication service will allow other
services in the instance only after it completes the processing and publishing of all the
files that match the specified criteria.
In Asynchronous mode the publication service allows other services of the instance to
receive events while it is processing and publishing a file. By default Subscription service
always operates in Asynchronous mode.
What is the diff between tibco adapter and BW component?
Adapters are c onnectors that use a messaging channel that can be configured over
source/target systems which can be used in Pub, Sub or Replyrequest mode. BW
components are designer, administrator, bw engine.
What is a synchronous service that an adapter supports?
Of the 4 Adapter services, Request/Response is the only adapter service that is
synchronous.
What is Event Driven and Demand Driven?
Event Driven - Push
Demand Driven - Poll.
TIBCO Adapter for ActiveDatabase:
TIBCO Adapter for ActiveDatabase software (the adapter) allows data changes in a
database to be sent as they occur to other databases and applications. It extends
publish-subscribe and request-response technology to databases, making multiple levels
of delivery services available to applications that need access to these databases.
ODBC and JDBC compliant databases such as Oracle, Sybase, and Microsoft SQLServer are supported. While the adapter does not run on z/OS and iSeries systems, it
can remotely connect to a DB2 database running on these systems. TIBCO Adapter for
Activ eDatabase is written using the TIBCO Adapter SDK software, which allows the
adapter to interoperate with other TIBCO products. The adapter can communicate with
any application that is configured for the TIBCO environment.
What is File Adapter?
TIBCO Adapter for Files software processes data from text files and publishes the
contents in real-time to the TIBCO environment. The adapter also listens for messages in
the TIBCO environment and writes the contents to a file.
The adapter supports only text files when it is integrating a file system into the TIBCO
Activ eEnterprise environment. It supports both text and binary files when it is transferring
files between two or more TIBCO Adapter for Files installations.
8/9/2019 Tibco.pdf
5/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 5
File Adapter Operations Mode?
Selecting an operation mode is the first step in configuring a service. The operation mode
determines whether the service will integrate the file system with the TIBCO
Activ eEnterprise environment or transfer files between instances of TIBCO Adapter for
Files.
In the Record Mode of operation, where the adapter integrates the file system with
TIBCO ActiveEnterprise, you will have to define and use schemas.
In the Simple File Transfer Mode of operation, where the adapter transfers files among
instances of TIBCO Adapter for Files, you will have to define various options for file
transfer. However, there is no need to define a schema.
Can two adapters communicate with each other?
No two adapters can communicate with each other directly. They can communicate only
through a messaging layer.
Considering Tibco to be the messaging layer,
Publishing Adapter always publishes to Tibco messaging bus.
Subscribing Adapter always subscribes from a Tibco messaging bus.
What are users and user-key columns in Adapter Publisher's Table tab?
While configuring an ADB Publisher:
"Users" column specifies what columns have to be published to the publishing table.
"User-key" is selected means it acts as a primary key. Child tables can be joined to the
Parent tables only using the primary keys. Publish by reference storage mode copies
only the primary key from the source table. If a source table does not have a primary key
column, we can use the user-key to do the same.
What are the columns available in a Adapter Publishing table?
An adapter P ublishing table contains the act ual data columns plus Internal Adapter
columns.
Actual data colums:
Depending on the storage mode selected, the actual data colums in the publishing table
varies:
For Publish by value, the actual data columns will be the exact copy of the base table
data colums.(all the columns).
For Publish by reference, the actual data columns will be the exact copy of the base
table's primary key data colums (only Primary key column).
Internal Adapter columns:
ADB_SU BJECT
ADB_SE QUENC EADB_SE T_SEQUENC E
ADB_TIME STAMP
ADB_OPCODE
ADB_UPDATE _ALL
ADB_REF_OBJECT
ADB_L_DELIVE RY_STATU S
ADB_L_CMSEQUENCE
Publication and Subscription formats ( file adapter)
Two types of formats are supported by adapters while exchanging data between
applications
1. MInstances
2. MBusinessDocuments
MInstances is the entity that is exchanged among TIBCO applications. It is the schemainstantiations. The runtime adapter parses the input file, identifies the schema associated
with the publication service, creates the MInstances and publishes it.
MBusinessDocuments is a facility provided by TIBCO ActiveEnterprise for grouping
MInstances. MBusinessDocument always contain MInstances created from the same
file. If high throughput is desired from publication service MBusinessDocument attributes
can be used.
Modes of operation(file adapter)
There are two modes of operation
Synchronous mode
Asynchronous mode
An adapter inst ance/configuration can have multiple publication and subscription
8/9/2019 Tibco.pdf
6/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 6
services. Services are activated by events. The publication service can be activated by a
timer event or message event. The event that activates the publication service is called
polling agent.
In Synchronous mode upon receiving an event, the publication service will allow other
services in the instance only after it completes the processing and publishing of all the
files that match the specified criteria.
In Asynchronous mode the publication service allows other services of the instance to
receive events while it is processing and publishing a file. By default Subscription service
always operates in Asynchronous mode.
If the configuration has more than one service or if the publication service is expected to
process large file sizes or large set of files, setting the publication service in
asynchronous mode is recommended.
Types of file records (file adapter)
File records can be classified into two categories:
1. delimited file record
2. positional file record
Delimited file records are used to interpret lines that have a well-defined delimiter
between the fields. Delimiters can be of single or multiple characters. These can be
identified by the number of fields or by using a
constant field value.
Positional file records are used to interpret lines that have well defined field lengths.
These can be identified using line or record length or by using a constant field value ie
constant line length.
what is opaque table
The subscription service uses two logical layers when processing a message. The first
layer decodes data from the message and the second layer provides the database
transaction. If an exception occurs in the first layer, the adapter logs the message to the
opaque exception table. In the second layer, if any DML command fails at any level, the
adapter rolls back this transaction and starts another transaction, inserting into exception
tables. If the insert into exception table transaction fails, the adapter then logs the
message to the opaque exception table.
what is the difference between exception table and opaque exception table?
The subscription service uses two logical layers when processing a message.
The first layer decodes data from the message and the second layer provides the
database transaction. If an exception occurs in the first layer, the adapter logs themessage to the opaque exception table.
In the second layer, if any DML command fails at any level, the adapter rolls back this
transaction and starts another transaction, inserting into exception tables. If the insert
into exception table transaction fails, the adapter then logs the message to the opaque
exception table.
What are the transport types supported by ADB adapters?
The transport types supported by ADB adapters are:
1) Rendezvous
2) JMS
Rendezvous
Quality of service supported by Rendezvous:1) Reliable
2) Certified
3) Transactional
Wire Formats Supported by Rendexvous:
1) Active Enterprise Message
2) Rendezvous Message
3) XML Message
JMS
Wire Formats Supported by JMS:
1) XML Message
Connection Factory Type Supported by JMS:
8/9/2019 Tibco.pdf
7/32
8/9/2019 Tibco.pdf
8/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 8
Dynamic Represents, which will be created by receiver/sender application at run time,
life span is limited, as long as there is messages or receivers, it will stay in server, if not
it deletes.
Temporary Queue means, created by receiver to submit the response to EMS server or
Sender to get the messages. this life span is immediate, but there is a hidden danger
with these queues, as these might turn into orphan queues (please read other articles).
there is a fix, which will go by 4.4.2 ems version
Difference between Exclusive and Non Exclusive Queues
you can define a queue as exclusive to make sure that all the messages are always sentto the same consumer, even if you have more than one connected to it. If you make it
exclusive the rest of the consumers are "on standby" so if the primary fails another one is
set as primary and starts receiving.
If you set them to non-exclusive (the default value) and you have more than one
consumer connected to the queue the messages are delivered in a round robin fashion to
balance the load.
What is the use of system queues?
system queues are undeleteable queues stored usualy undelivered messages (when you
set JMS_TIBCO_PRESERVE_UNDELIVERED to true, in case the message exipres,
you'll get it to $sys.undelivered) or other even driven messages if applicable.
More in use are sytem topics for monitoring and statistics, where is EMS publishing
queue and server statistics and can be detailed to message content level.
dead Queue
In case of any failures in the messages to server, will be added to dead queue, which is
kind of internal system queue, I strongly feel.
For ex: No memory trying to add message to dead queue.
Failure queuing message to add to dead queue
How do we distinguish dynamic queues with static queues?
Ans: dynamic queues have * before them.
what are the message storing mechanisms of queues?
Ans: persistent and non-persistent.
Persistent: messages are stored to external storage before sending.
Non-persistent: not stored to any external storage. The information will not be available
for retrieval.
what are types of subscribers we can have for topics? Explain them in detail.
Ans: durable and non-durable subscribers.
In durable subscriptions the messages are stored so that even if the subscriber fails and
comes back the messages can be retrieved.
What are the permissions that you can grant to users to access queues?
a. Receive
b. Send
c. Browse
What are the permissions that you can grant to users to access topics?
a. Subscribe
b. Publishc. Durable
d. Use_durable
What is the difference between Queues and Topics?
Queue
Guaranteed Service
Only the Target gets the message (One message per Consumer)
Uses Peer-to-Peer Mode to deliver messages
Blocking
Load Balancing is possible
Topic
Reliable Service
Everyone active gets the message (One message may Consumers)
8/9/2019 Tibco.pdf
9/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 9
Uses Pub / Sub mode to deliver messages
Non-Blocking
Load Balancing is not Possible
What is the use of secured queues and topics?
Setting secure property to queues/topics can restrict unauthorized users from
publishing/sending and subscribing/receiving the messages.
What are acknowledgement modes and where do you set them and what is theapplicability of each mode?
Ans:The acknowledge mode for incoming messages. Can be one of the f ollowing:
Auto the message is automatically acknowledged when it is received.
Client the message will be acknowledged at a later point by using the Confirm
activity. If the message is not
confirmed before the process instance ends, the message is redelivered and a new
process instance is
created to handle the new incoming message. Ensure that your process definition
confirms the message
when using this acknowledge mode .
TIBCO EMS Explicit Client Acknowledge this mode behaves exactly the same as
the Client mode, except the
session is not blocked and one session can handle all incoming messages
Dups OK the message is acknowledged automatically when it is received. JMS
provides this mode for lazy
acknowledgement, but TIBCO BusinessWorks acknowledges messages upon receipt.
Transactional this mode is used when a transaction that can process JMS
messages is included in the process
definition. The message is acknowledged when the transaction commits.
what is the structure of messages in JMS?
Ans: header(needed),
properties(optional)
body(optional).
Header parameters:
JMS destination,
JMS message.
What is the purpose of JMS Queue receiver activity and Queue sender activity?Ans: Starts a process when ever a new message comes into t he specified queue.
A queue s ender act ivity sends mess ages into the s pecified queue.
What is the potential problem with JMS Queue requestor?
Ans: When we specify a reply to queue t here is a c hance of other processes sending
messages to the same queue
and the jms queue requestor interpreting that as the actual response and sending this
wrong message to the client.
What is JMS queue requestor?
The JMS Queue Requestor activity is used to send a request to a JMS queue name and
receive a response back from the JMS client
What is JMS topic requestor?The JMS Topic Requestor activity is used to communicate with a JMS applications
request-response service. This service invokes an operation with input and output. The
request is sent to a JMS topic and the JMS application returns the response to the
request.
How to setup load balancing for Topics and queues?
Ans: We can achieve load balancing using bridging queues and t opics.
Or Queues can be set non-exclusive so that any number of consumers can access the
queue.
What are the different levels of load balancing in EMS and how would you do it?
Ans: server level and consumer level
Server: by having multiple servers.
Consumer: by creating consumer instances.
8/9/2019 Tibco.pdf
10/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 10
What are the differences between server load balancing & producer/consumer load
balancing?
Point-to-Point : Non-exclusive queues are useful for balancing the load of incoming
messages across multiple receivers.
Programs can use distributed queues for one-of-n certified delivery to a group of servers,
in order to balance the load among the servers.
Rendezvous distributed queue software assigns each task to exactly one of the servers,
while the group of servers and the distribution of tasks remains completely transparent to
the client processes.
EMS Load balancing can be done in only one way on the consumer side, by usingmultiple subscribers/receivers to a same topic/queue, and which will be executed in
round robin fashion. If we are connecting two different severs by using "|" symbol is not
be load balancing, Consumers can not switch connections between two servers. By
default, we will implement multiple consumers but we have to consider above mentioned
issues in consumer load balancing.
How would you do fault-tolerance in EMS? Explain the complete process.
Ans: FT in E MS can be achieved by implementing pair of servers c alled primary and
backup while the primary does the normal job of sending and receiving messages the
back up server takes the place of primary if the primary fails. The pair shares the
information from the shared state. When the primary goes down the backup server reads
all the primary config files and starts from there. The primary locks the shared state if its
active so that the backup server doesnt take its place. the lock is released when the
primary goes down so that the backup can lock the shared state. Only persistent
messages can be implemented in this situation since non-persistent messages cannot be
stored in external storage like shared state.
How a consumer can connect to the new primary EMS server when the running primary
server goes down?
Ans: we can s pecify multiple URLS for t he client so that if the primary is down the next
URL belonging to back up will be used.
In case of a primary having multiple address we can use multiple URLS for the same
server so that even the primary in one location is down it can connect to the primary of
another location.
The URLS are usually comma separated in client config.
How the clients of the primary server access the messages stored by primary server
when it goes down and secondary server becomes primary server?
Ans: clients can be config t o be intimated of the f ailover.
The backup reads the current state of the client from the shared storage
And t hen connects to the c lient if there are any undelivered persistent messages.
Scenario: Topic T1, Queue Q1 and Queue Q3 are bridged. A publisher published a
message to Topic T1. But the publisher has no access rights to Q1. How the message
will be traversed?
Ans: Message producers must have access to a destination in order to send messages
to that destination. Messages can only be sent to bridged destinations to which the
message producer has access.
Scenario: A publisher is publishing messages quickly than the consumers are consumingthe messages. How to control this situation.
Ans: we can use flow control to address this situation. The target maximum si ze for
pending messages is specified so that only that amount of message is stored and any
messages above that will be blocked.
The server blocks the send call and releases only when the storage limit is below the set
value.
The flow control is enabled only if the topic or queue has receivers.
This way the producers are slowed down. And the balance is achieved.
Can we set a limit for the total number of pending messages on Queue or Topic? What is
the parameter for that
Ans: yes, max-bytes for pending messages.
What if max-bytes limit exceeds?
8/9/2019 Tibco.pdf
11/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 1
Ans: Messages t hat w ould exceed t he limit will not be accepted into storage and an error
is returned to the message producer.
What is the pre-fetch value?
Ans: In order f or reducing the clients waiting time in a server client scenario
For a queue based messaging only the prefetch value allows the the server to send
messages in batches so that the message will be ready for the client when ever the
client is ready. For automatic fetching its >1 and for disabling its none.
What is fail-safe?
Ans: The Tibco ems provides 2 modes for persistent topic/queue message storing to
external device.Normal: in this mode the messages stay in a buffer before writing to a storage(disk). So
in case of any failure the messages may be lost.This mode is very efficient in situations
were little loss of data is allowed.
Failsafe: in the fail safe mode the messages are first written to an external storage before
sending so that no messages are lost ever. This is used when no loss of data can be
encouraged.
How many ways we can determine the life span of the message in a queue. What are
they?
Ans: Expiration parameter in queue configuration file.
JMS expiration time in queue sender.
The JMS expiration time in queue sender overrides any value given in config.
What are the basic configuration you would setup if you want to enable your EMS server
for SSl communication
Ans: listen parameter and s sl_server_identity. Optionally private key.
What is the main config file in JMS?
Ans: The main configuration f ile c ontrols the characteristics of the TI BCO Enterprise
Message Service server. This file is usually named tibemsd.conf, but you can specify
another file name when starting the server.
Exp para: server, password,flowcontrol,storage,server sartup
Can you send messages from a server to another server?
TIBCO Enterprise Message Service servers can route messages to other servers.
Topic messages can travel one hop or multiple hops(from the first server).
Queue messages can travel only one hop to the home queue, and one hop from the
home queue.A server forwards topic messages along routes only w hen the global property is defined
for the topic.
When a route becomes disconnected (for example, because of network problems), the
forwarding server stores topic messages. When the route reconnects, the server forwards
the stored messages.
What are multi-hop zone?
Ans: Multi-hop zone is a group of servers c onnected by routes.
How do you configure multi-hop zones?
By using routes
To create a route using the administration tool, first connect to one of the servers, then
use the create route command with the following syntax:
create route url= zone_name= zone_type=1hop|mhop
Tell me about bridges. Why do we use them, Syntax to create bridges, use of message
selector
Some applications require the same message to be sent to more than one destination
possibly of different types.
So we use bridges.
What is the purpose for stores.conf
a. This file defines the locations either store files or a database, where the EMS server
will store messages or
metadata
b. Each store configured is either a file-based or a database store.
How many modes are the messages written to store file.
8/9/2019 Tibco.pdf
12/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 12
2 modes.. sync or async. When absent , the default is async
What is tibemsd.conf
It is the main configuration file that controls the characteristics of the EMS server.
How many delivery modes for messages?
Persistent, Non-persistent, Reliable-delivery.
What is the maximum messagesize?
Ems supports max message size of 512 mb
Name 3 destination properties and explain them.Global, secure, maxmsgs, maxbytes, flowcontrol, sender_name, sender_name_enforced,
trace, maxRedelivery
log_trace
"Log_Trace" writes information to the specified log file based on the trace options
logtrace will be written to log file.
Console_trace
Console Trace will be useful when you start your server in common window, and all logs
will be displayed there, and ofcourse it written to log files also when you configure it.
What happens if the message expires/exceeded the value specified by maxredelivery
property on queue?
If the jms_preserve_undelivered property is set to true, then it moves he message to
undelivered message queue, if set to false, the message is deleted by the server.
What are the wild cards that we use in ems?how do they work for queues and topics?
*,>
We can subscribe to wildcard topics, but cant publish to them. Where as in case of
queues we cant either send /receive.
Are bridges t ransitive?
No
Tell me about flow control on destinations?
Some times the producer may send messages faster than the consumers can receive
them. So, the message capacity on the server will be exhausted. So we use flow control.
Flow control can be specified on destinations.
Tell me about flow control on bridges and routes?
Flow control has to be specified on both sides of bridges where as on routes it operates
differently on sender side and receiver side.
Name 3 configuration files and tell me what it consists of?
a. Queues.conf
b. Topics.conf
c. Routes.conf
d. Factories.conf
e. Stores.conf
f. Groups.conf, users.conf, transports.conf
Name some administrative level destination properties?
a. Viewb. Create
c. Delete
d. Modify
e. Purge
How can you change the configuration properties of EMS server?
You can change in the tibemsd.conf file or you can change using the ems admin console.
Tell me about multicasting in EMS?
a. Multicast is a messaging model that broadcasts messages to many consumers at
once rather than sending messages individually to each consumer. EMS uses Pragmatic
general multicast to broadcast messages published to multicast enabled topics.
b. Each multicast enabled topic is associated with a channel.
8/9/2019 Tibco.pdf
13/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 13
What are the advantages and disadvantages of multicasting..
a. Advantages: As the message broadcasts only once there by reducing the amount of
bandwidth used in publish and
subscribe model. Reduces the network traffic.
b. Disadvantages: Offers only last-hop delivery. So cant be used to send messages
between servers.
On what destinations can you use multicast?
Topics
Suppose, you got an error while accessing a queue, that you dont have necessary
permissions to access the queue. What might be the solution/reason?The user that is assigned to the queue and the user used while creating.
How does the secondary server know that the primary server is failed?
Based on heartbeat intervals
How do you add ems server to administrator?
Using domain utility
How do you remove individual messages from destinations?
Using purge command.
Connection and Session threading in Ems
Connection : Multi thread
Session : Single thread
Where do you use a bridge in real time?
we use in scenarios like publishing message from Topic to Queue, Store message in
EMS for retrieval in case if there is any problem while moving data from one process to
another.
When ever you are decided to use message selectors on BW, use bridges and use
message selector on bridges, which is more powerful than using message selectors on
BW.
Where is the AppManage located at?
/tra//bin
3 files (batch) are ready for deployment. out of which only 2 files must be deployed
together
and not deploy the other one. How can we do this using AppManage?Batch means is it a single ear with multiple process archives, if so, dont pass the thrid
process archive in the config file.
What are the steps to perform Server Side Load Balancing on the local machine?
1. Make a duplicate copy of the cfgmgmt Folder and rename it to cfgmgmt2
2. Make sure that the Server Name is same in the tibemsd.conf file in both the folders.
3. Change the port number in the second folders tibemsd.conf file (listen = tcp://xxxx)
4. Start both copies of the servers from the command prompt (ex: C:\ ..
\ems\5.1\bin\tibemsd config
5. C:\ .. \cfgmgmt\ems\data\tibemsd.conf)
6. In TIBCO Designer, modify the JMS Connection Provide URL to contain both the
servers
( ex: tcp://localhost:7222 | tcp://localhost:7223)
What are the steps to setup Fault Tolerance servers on the local machine?
1. Make a duplicate copy of the cfgmgmt Folder and rename it to cfgmgmt2
2. Make sure that the Server Names and Listen ports are not the same in the
tibemsd.conf file in both the folders.
3. Change the port number in the tibemsd.conf file (i.e ft_active = listen port of the
other server) in both the
cfgmgmt folders.
4. Start both copies of the servers from the command prompt
(ex: C:\ .. \ems\5.1\bin\tibemsd config C:\ .. \cfgmgmt\ems\data\tibemsd.conf)
What is the use of Bridges?
Some applications require the same message to be sent to more than one destination
possibly of different types. So we use bridges
8/9/2019 Tibco.pdf
14/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 14
What is the syntax to create Bridges without Message Selector?
create bridge source=queue:bridgequeue target=topic:bridgetopic
What is the syntax to delete a bridge?
delete bridge source=queue:bridgequeue target=topic:bridgetopic
What is the syntax to create Bridges with Message Selector?
create bridge source=queue:bridgequeue target=topic:bridge topic selector="keyword"
What is the use of Bridges and Routes?
Both are used to channel messages from senders to receivers. Bridge act as connector
between two different queue and Routes act as connector between different server forsending message and receiving acknowledgement of delivery.
What are the steps required to create a Route between two Servers?
1. Make a duplicate copy of the cfgmgmt Folder and rename it to cfgmgmt2
2. Make sure that the Server Name is NOT the same in the tibemsd.conf file in both the
folders.
3. Change the port number in the second folders tibemsd.conf file (listen = tcp://xxxx)
4. Set the routing property to enabled in the tibemsd.conf files in both the folders open
factories.conf under
cfgmgmt2 and change the settings for GeneralConnectionFactory,
QueueConnectionFactory and
TopicConnectionFactory URL to (tcp://xxxx)
5. Create Route on Server 1 (route Server2-Name url=tcp://localhost:xxxx)
6. Create global queue / topics on both servers as required
7. Start both copies of the servers from the command prompt (ex: C:\ ..
\ems\5.1\bin\tibemsd config
C:\ .. \cfgmgmt\ems\data\tibemsd.conf)
8. Test the route by using queue / topic in a BW Process
How to create a transport between RV and EMS?
Transport can be established between RV and EMS topic or queue.
The message can be imported as well as exported from RV.Important point to remember
is, with Topic for transport the messages can be imported and exported from RV But in
the case of Queues the message can only be imported from RV. Follow these steps to
establish transport between RV and EMS :
1)For enabling the transport :
In the configuration file tibemsd.conf set the parameter tibrv_transports to enabled. The
default value is disabled.2)To set the type of parameters for tranport:
In the transports.conf file set the parmeters in Transport definitions (in the configuration
file transports.conf) specify the communication protocol between EMS and the external
system.
The parameters can be as follows:
[RV01]
type = tibrv
topic_import_dm = TIBEMS_RELIABLE
service = 7200
network =
daemon = tcp:host:7200
topic_import_dm= TIBEMS_NONPERSISTENT
Here
RV01 is the name of the transport.
type = required parameter which can be set to tibrv or rvcm(for certified messages)
service = UDP port.if absnt the default is 7200
network = IP address.
Daemon = TCP Port.
topic_import_dm = delivery mode for importing the messages and the values can be
TIBEMS_RELIABLE,
TIBEMS_PERSISTENT OR TIBEMS_NONPERSISTENT
Similarly the paramters can be set for topic_export_dm and queue_import_dm.
export_headers = The default
value is true and can be set to false if there is no requirement of exporting the JMS
headers.
8/9/2019 Tibco.pdf
15/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 15
export_properties = The default value is true and cane be set to false if there is no
requirement of exporting the JMS properties.
3)Destination definitions (in the configuration files topics.conf and queues.conf) can set
the import and export
properties to specify one or more transports.
Can set the import/export properties by either making an entry in topics.conf or
queues.conf filesdirectly like
topic.sample import="RV" where topic.sample is the name of the topic.
or in the admin tool use :
addprop topic myTopics.news import="RV01,RV02" which will add property import tomyTopics in topics.conf files
Key Points:
The transport takes place when the topic name and the RV subject name are same.
For topics:
When a topic specifies import on a connected transport, tibemsd imports messages only
when the topic has registered subscribers.
For queues:
When a queue specifies import on a connected transport, tibemsd immediately begins
importing messages to the queue, even when no receivers exist for the queue.
When a topic and a queue share the same name, at most one of them may set the import
property.
For example, if a topic example.transport and a queue example.transport are both
defined, only one may specify the import property.
TIBCO EMS Multicast - Features
TIBCO EMS is a distributed and reliable architecture, with support for load-balancing,
routing, and fault tolerant configurations that together remove single points of failure.
Features
By using TIBCO's messaging solution, companies have been able to reliably support
over 50,000 messages per second and achieve 99.999% uptime.
A distributed message bus with multi-protocol support for J ava Mess age Service (JMS),
TIBCO Rendezvous, and TIBCO SmartSockets. TIBCO supports many of the leading
open standards, including web services, and provides adapters for third-party applications
and infrastructure including IBM MQSeries. This makes it possible for companies toreuse their existing investments and focus on delivering new functionality Built-in
monitoring and management capabilities that provide detailed administrative functions
and statistics and support automation through an administrative API or command-line
shell. Companies can also leverage TIBCO's common monitoring and management
framework for top-down, end-to-end distributed monitoring and management of TIBCO
and non-TIBCO products
Multicast Features
Multicast is a messaging model that allows the EMS server to send messages to
multiple consumers simultaneously by broadcasting them over an existing network.
Features
Multicast is highly scalable
Multicast reduces the amount of bandwidth consumedMulticast reduces the number of operations performed by the server
Multicast broadcasts the message only once where as in case of publish and subscriber
for each of theconsumer a copy of the message is getting published
Facts
Multicast does not guarantee message delivery
Messages requiring a high degree of reliability should not use multicast
Multicast offers last-hop delivery only it cannot be used to send messages between
servers.
Multicast should not be used in applications where security is a priority
Fault-Tolerance setup-A(Which deals with configuration of the files for fault tolerance)
Note:The Ems data store should be in SAN or NAS,in actual Production Environment..so
that the datastore is accessible by both primary and back up server
8/9/2019 Tibco.pdf
16/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 16
SAN-Storage Area Network
NAS-Network Area storage
But for our case we would use just operating system file system (shared by both primary
and Backup server)
Fault Tolerance configuration setup
Parameters will be in Bold and Inclined for easy identification
Configuring Primary server
open the c:\tibco\ems\bin\tibemsd.conf (This file is called Ems configuration file)
Server=EMS-SERVER-RAMU(This value is upto your choice)
Listen=tcp://7222(This value is upto uour choice)
Ft_active=tcp://7444(This value is upto your choice)
Configuring Backup server
Create a folder called Backup in that please copy all the *.conf files(only configuration
files) from c:\tibco\ems\bin\ and place it in c:\tibco\ems\bin\Backup\
Note:From now we will work in the Backup Folder, open tibemsd.conf file in the folder
Server=EMS-SERVER-RAMU(This value must match the value of the server parameter
in primary server's tibemsd.conf file)
Listen=tcp://7444(This value must match the value in Ft_active paramter in primary
server's tibemsd.conf file)
Ft_active=tcp://7222(This value must match the value in Listen parameter in primary
server's tibemsd.conf file)
store=c:\tibco\ems\bin\datastore(This value must match the value in store parameter in
primary server's tibemsd.conf file,note that the value in primary server's tibemsd.conf file
is just datastore)
Prepend this path to c:\tibco\ems\bin\Backup\ below list in the backup sever
tibemsd.conf
users=c:\tibco\ems\bin\Backup\users.conf
groups=c:\tibco\ems\bin\Backup\groups.conf
topics=c:\tibco\ems\bin\Backup\topics.conf
queues=c:\tibco\ems\bin\Backup\queues.conf
acl_list=c:\tibco\ems\bin\Backup\acl.conffactories=c:\tibco\ems\bin\Backup\factories.conf
routes=c:\tibco\ems\bin\Backup\routes.conf
bridges=c:\tibco\ems\bin\Backup\bridges.conf
transports=c:\tibco\ems\bin\Backup\transports.conf
tibrvcm=c:\tibco\ems\bin\Backup\queues.conf
durables=c:\tibco\ems\bin\Backup\durables.conf
If you observe the tibemsd.conf file in primary server and compare the tibemsd.conf file
in Backup server
The values for some parameters in primary tibemsd.conf file is jfor example
"users=users.conf" where as in backup server tibemsd.conf file we give
"users=c:\tibco\ems\bin\Backup\users.conf".The reason why because while installing the
Ems server ,it sets these values and it knows where to look for the path , so thats the
reason why the full path is not mentioned for various parameters in tibemsd.conf forprimary server
Fault-Tolerance Setup-B(which deals with starting primary and back up server--which will
be in standby mode)
This post is continuation of Fault Tolerance Setup-A
Go to All programs>Run>type cmd
You will get a command prompt window
Type command: cd c:\tibco\ems\bin
Now you will be inside bin directory
Start Primary Server
Type command: tibemsd (This is a application )
Start Backup Server
8/9/2019 Tibco.pdf
17/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 17
Posted byArun at 1:10 AM 10 comment s: Links to this post
Labels: TIBCO EMS FAQ'S
Open another command prompt
Navigate to the directory by entering the below command
cd c:\tibco\ems\bin
Give the following command
tibemsd -config Backup\tibemsd.conf (This is not done in primary but you are doing in
back up server , since Primary server tibemsd.conf file is in same directory as tibemsd
application)
In the backup sever command prompt you can see that it is in standby mode for primary
(tcp://7222)
TIBCO RV FAQ'S
RV
What is Rendezvous
It is a framework/mechanism to integrate different applications running on
distributed network on heterogeneous platforms.
What Rendezvous does?
This is Proprietary to TIBCO, and all TIBCO applications like Admin, Hawk, BWand other apps will communicate using Rendezvous, which is using Network
UDP protocol. When a machine is being added to TIBCO domain, it creates two
RVD files, one will be used to do the services (deploy,manage) etc and another
will be used to get the status.
Domain and machine are communicating to each other using RVD, most of the
cases end machines in domain are being part of same subnet, what if a machine
is being part of different subnets? there are two solutions.
1. Multi casting
2. RVRD
Explain Transport
It is software mechanism for sending and delivering messages.
protocol used by rv.
UDP(Universal Datagram Protocal)
What is difference between synchronous and asynchronous
communication
Synchronous communication is time driven and asynchronous is event driven.
Synchronous communication expects reply or acknowledgement back and in
asynchronous communication doesnt expect any results of its communication right
away. In messaging perspective request/reply messaging is synchronous communication
and publish/subscribe is asynchronous communication.
What is the functionality of RV daemon
Its a background process RV enabled programs (programs which use RV api)
depend on rvd for reliable and efficient network communication.
The rvd completes the pathway between rendezvous program processes across
the network. It sends information into the network receives information from the
network and filters subject addressed messages.
What are the various parameters in Network component and what do each
one indicate
Service, Network and Daemon
http://www.blogger.com/email-post.g?blogID=2221328781086288342&postID=3721928801144998056http://www.blogger.com/comment.g?blogID=2221328781086288342&postID=3721928801144998056http://arun-tibco.blogspot.in/2010/09/tibco-rv-faqs.htmlhttp://arun-tibco.blogspot.in/search/label/TIBCO%20EMS%20FAQ%27Shttp://arun-tibco.blogspot.in/2010/09/tibco-ems-faqs.html#linkshttp://arun-tibco.blogspot.in/2010/09/tibco-ems-faqs.htmlhttp://www.blogger.com/profile/159199475943366207128/9/2019 Tibco.pdf
18/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 18
Service parameter instructs the rvd to use UDP or PGM services whenever it
conveys messages on this transport. Network parameter instructs the rvd to use a
particular network for communication.
Daemon parameter indicates to which rvd the program has to connect
Explain Certified messaging registration process steps and confirmation
Process
Certified messaging offers greater certainty of delivery.-even when the processes
and their network connections are unstable.
REGISTRATION.DISCOVERY RESGISTRATION.REQUEST
REGISTRATION.CERTIFIED Certified delivery agreement)
DELIVERY.CONFIRMED DELIVERY.COMPLETE
Difference between Reliable delivery and Certified delivery?
Reliable Delivery:
Ledger: None
Time Limit:Contains outbound messages for 60 seconds
Network Traffic: Minimal
File Storage:No file storage
Certified Delivery:
Ledger: The certified delivery library records outbound messages in a ledger,
either within the programprocess storage, or in file storage.
Time Limit: The certified delivery library retains outbound messages in the
ledger until either delivery complete or the time limit (set by the program)
expires.
Network Traffic: Additional network overhead to confirm delivery of each
certified message.
File Storage: Optional file-based ledgers consume file storage for eachmessage until delivery is complete
(or the time limit expires).
Explain Load balancing in Rendezvous, What are the various parameters
In a producer/subscriber scenario when producer is send messages faster than
subscriber can consume, messages will be queued up with consumer and may be
lost. To address this situation we can balance the load of the consumer by clones
of the consumer program and balancing the load among the consumer instances.
This is load balancing.Programs use distributed queues for certified delivery to a
group of servers, in order to balance the load among the servers. Parameters
Scheduler weight Heartbeat Interval Scheduler Activation Interval
Explain fault tolerance in Rendezvous
Fault Tolerance in a network environment is characterized by rapid recovery from failures
such as process termination, hardware failure and network disconnect. Rendezvous
provides a mechanism to achieve the fault tolerance among the RV processes.
What is ledger file used in RV for?
CM Transport keeps Ledger file to record information about every unresolved
outbound certified message.
How can U establish point-point communication in RV?
8/9/2019 Tibco.pdf
19/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 19
Can be established using RPTP protocol over a UDP channel
What will happen when limit of a queue exceeds(how the event objects will
be removed from a Queue)?
Sends an advisory QUEUE.LIMIT_EXCEEDED
Queue dispatch calls remove the event objects at the head of a queue, and run its
callback function.
Callback function is a program code which responds to events-processing
inbound messages.
What are the limit policies of a Queue in RV?
Discard none, discard first, discard last, discard new.
What is the advisory message thrown by RV when the maximum limit of a
queue exceeds?
QUEUE.LIMIT_EXCEEDED
Is message loss possible in RV? When is it possible?
Yes, in slow consume and fast producer scenario message lost will be possible.
How many types of advisory messages are there in RV
System Advisory, RVCM Advisory, Fault- tolerance Advisory.
How to handle slow consumers when publisher is publishing rapidly?
Scenario: A producer is producing messages at 100/min and consumer
able to process only at the rate of 50/min, what is going to happen to other
50 messages? (Underlying communication is RV reliable)
Use a dispatcher - increase process instances to avoid overflow. Implement load
balancing
How can u implement security in RV?
Using SSL Protocol. Can be attained at 3 layers between rvd and services, inrvd, and between rvrd.
What are the scheduler parameters in DQ?
Weight, Heart beat interval, Activation Interval.
If rvd is down and a program has to send a message, how it sends
Creating a transport object in the program invokes new rvd process.
What is the difference between JMS messaging and RV messaging?
RV messaging is a de-centralizing messaging/JMS centralized messaging
Explain rv messaging, how does it work?
RV messaging provides creating messages in a universal format assign a subject
name to the message and publish the message on to the network. Messages will
travel over the network and reaches all the nodes in the network. RV provides RV
enables subscribers to capture the message of interest and process it.
Explain how do you set up RVCMDQ? And how does it work?
A producer is producing messages at 100/min and consumer able to process only
at the rate of 50/min, what is going to happen to other 50 messages? (Underlying
communication is RV reliable)
hint ans: slow response advisory is thrown, oldest messages discarded
8/9/2019 Tibco.pdf
20/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 20
depending on the destination settings.
A process group is on RVCMDQ, can that be made both load-balanced and
fault-tolerant?
Hint: no, they are mutually exclusive semantics.
What is the main problem/issue with load balancing as in RVCMDQ? What
are possible Scenarios. when this occurs?
Duplication occurs/non-completion of assigned task
1. if the worker is slow, scheduler might re-assign the task to another workerresulting in duplication.
2. Scheduler fails and the new scheduler reassigns incomplete tasks, resulting in
duplication.
Also non-completion of tasks can occur if a worker has complete time=0 and has
accepted the task never to return.
What is RVRD for? How do we configure and use it?
RVRD is for routing messages published on a subject to machines on another subnet.
There has to be one RVRD for each subnet, and an RVRD pair installed one on each
subnet.
How do you do load balancing for ADB adapters?
Use RVCMDQ to run more than one instance of an adapter. Also you can specify batch
processing of records (batch commit, instead of committing each record individually).
Also you can increase thread count (but that going t o help only if you increase it from 4-8)
Situations were we use CM?
a) producer needs compulsory ack of the message.
b) consumer cannot compromise on loosing messages.
Situations were we can not use CM?
high data rate bcos CM occupies most of the band width.
What is rvcache?
The program rvcache stores data from recent messages, indexed by subject name, and
automatically sends the cached Data to new listeners. Data stored in rvcache never
expires. It remains in the cache until superseded or augmented by data from a new
message on the same subject.rvcache stores the data in program memory and in a disk
file.
What is rvtransaction?
When a group of messages are sent, even if one message is not delivered, all the
messages are rolled back.
RVTX support is deprecated from AE 5.1.
How would you know that a publisher and a subscriber are in cm mode?
Subscriber will be pre-registered with the publisher in a cm mode.
Configuring TIBCO RVRD
RVRD Configuration
Needed only when running primary and secondary administrators across
separate subnets. We need to establish 2 RVRD connections for both HAWK
and Rendezvous (Infra). So these steps will need to be performed for each.
The standard is to name for router - or -
Example:
8/9/2019 Tibco.pdf
21/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 2
C:\tibco\tibrv\bin>rvrd -listen tcp:17474 -logfile rvrd_17474.log -store
rvrd_17474.cfg
1. Obtain https and https port
Must view logfile to obtain both https and http port - search for Http
interface to get the port.
Look in rvrd_NNN.log (where NNN is rendezvous port number - i.e.
rvrd_17474.log )
For ex:
Http interface - http://dev1234:57265/
Https interface - https://dev1234:57266/
Must view logfile to obtain HAWK and REPOSITORY ports Look in rvrd_NNN.log
(where NN is HAWK port number - i.e rvrd_17474.log)
Note: look at last time rvrd started, so usually at or near bottom of logfile
2. Create Connection
Using a browser, open up http://dev1234:57265 http port from logifle :
Choose Router
A. Rendezvous
Router name: -
-
B. Hawk
Router name: -
-
Click: Add Router
Local Network
A. Rendezvous
Name: (18300)
Service: (18300)
B. Hawk
Name: (18374)
Service: (18374)
Click: Add Local Network Interface
Add subjects:
A. Rendezvous
Click: Local Network Name
Subject: Enter Each Subject in Exact order as Primary server
Click: Import/Export
Subject Names are
1. _RVFT.>
2. _RVCM.>
3. _RVCMQ.>
4. _com.tibco.repo.>
5. _FT.>
6. com.tibco.pof.>
7. com.tibco.pof
Neighbor
Click: Neighbor
Local Endpoint
A. Rendezvous
Host:
Port:
B. Hawk
http://dev1234:57265/https://dev1234:57266/8/9/2019 Tibco.pdf
22/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 22
Posted byArun at 1:07 AM 4 comment s: Links to this post
Labels: TIBCO RV FAQ'S
Host:
Port:
Remote Endpoint
A. Rendezvous
Host: (host you are connecting to)
Port:
Router Name: -
A. Hawk
Host: (host you are connecting to)
Port:
Router Name: -
Click: Add Neighbor Interface
All the details should be populated on this screen.
Daemon Parameters
Create user id and password
Connected Neighbors
Check all connected neighbours for appropriate servers, the following
information should be corrected for neighbours.
Note: Here the subject name should be com.tibco.repo.> instead of
_com.tibco.repo.>
For Hawk (which xxx74) port, please do make sure you are using subject
names as "_HAWK.>"
RV transport parameters
Daemon: Daemon is a back end running program infinitely. It is like a Gateway in
RV. It tells the program where the RVD is running. It uses 'TCP' protocol and
uses tcp:25 (port no.) by default. This needs ip address and port no..
tcp: ip address:port no.
Service: Service tells you through which port the RVD should broadcast themessage.
Network: It has 3 parameters. Multicast, Broadcast and Sender address. These
should be separated by a Semi-colon.
TIBCO FAQ'S
TIBCO Fundamentals
1) What is TIB CO?
TIBCO makes Integration Server software for enterprises. An Integration Serverallows a company to mix packaged applications, custom software, and legacysoftware for use across internal and external networks. TIBCO's patented approach iscalled Information Bus (TIB)
2) What are the modes of TIBCO BW Installations ?
GUI mode
Console mode
Silent mode
http://arun-tibco.blogspot.in/search/label/TIBCO%20RV%20FAQ%27Shttp://www.blogger.com/profile/15919947594336620712http://arun-tibco.blogspot.in/2010/09/tibco-faqs.htmlhttp://arun-tibco.blogspot.in/2010/09/tibco-rv-faqs.html#linkshttp://www.blogger.com/comment.g?blogID=2221328781086288342&postID=6587770355031116297http://arun-tibco.blogspot.in/2010/09/tibco-rv-faqs.htmlhttp://www.blogger.com/email-post.g?blogID=2221328781086288342&postID=65877703550311162978/9/2019 Tibco.pdf
23/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 23
3) What are the Major TIBCO Products?
TIBCO ActiveMatrix BusinessWorks (UI Design, SOA, BI)TIBCO iProcess (BPM)TIBCO PortalBuilder (BO)TIBCO BusinessConnect (BI)TIBCO BusinessEvents (BB)TIBCO HAWK (BB)TIBCO EMS (BB)TIBCO Rendezvous (BB)
4) What are the TIBCO tools required to design, test, deploy and messaging?
TRA (Platform)TIBCO BusinessWorks & TIBCO Designer (Design & Test)
TIBCO Administrator (Deploy)TIBCO EMS & RVD (Messaging)TIBCO HAWK (Monitoring)
5) What is the role of TRA?
TRA stands for TIBCO Runtime Agent and it runs in the background on eachmachine.
The TRA has two main functions:1.
The TRA agent is responsible for starting and stopping processes that run ona Machine according to the deployment information.
2.Supplies the run-time environment, that is, all shared libraries including third-party libraries.
6) What are the tools provided by TRA Installation?
TIBCO Rendezvous
TIBCO HAWKTIBCO Runtime AgentTIBCO DesignerJava Runtime EnvironmentThird Party core Libraries
7) What are the 4 main panels of the Designer window?1.Project panel2.
Palette panel3.Design panel4.Configuration panel
8) What is the bare minimum required to use TIBOC Business Works
TRABusinessWorks
9) What are steps to design & test a process?1. Create a new Process by selecting Process Definition from the Process
Palette2.
Design the Process by configuring the required activities between the Startactivity and Stop activity
3.To test the Process, switch to the Tester panel. Then click the (>) button orpress F9 to load the test process
10) What are the steps to build an .ear file using TIBCO Designer?1.Select the Enterprise Archive activity from General Palette and configure
the Name & File Loacation2.
Inside the Enterprise Archive activity and the Process Archive activity fromthe Process Palette.
3.Add t he self starting process / services to the Process Archive4. Click on Build Archive button in the Configuration tab in the Enterprise
Archive act ivity to build the EAR file
11) What are the steps to build an .ear file (TestAPP) and deploy it from Command
Prompt?1.Build the ear file using buildear utilitybuildear -s -ear /TestAPP.archive -o c:\ ..\deployment\TestAPP.ear -p c:\..\projects\TestAPP
2.Create the deployment configuration file using AppManage utility
AppManage -export -ear c :\ ..\deployment\TestAPP.ear out c: \ ..\deployments\TestAPP.xml
3.Edit the deployment configuration XML file using a text editor
4.Deploy the application using AppManage utility
AppManage -deploy -ear c: \ .. \deployment\TestAP P.ear -deployconfig c:\ ..\deployment\TestAPP_Admin.xml -app TestAPP -domain Admin -user admin-pw admin
12) What are the steps to deploy an application using the Administrator GUI?1.Start the TIBCO Administrator (tibcoadmin_domain-name.exe) & the TIBCO
8/9/2019 Tibco.pdf
24/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 24
HAWK (hawkagent_domain-name.exe) agent from the command prompt orthe windows services.
2.Start the Administrator GUI in a web browser (http://host-name:port) and enterthe UID & PWD for the domain.
3. In the left Panel under the Application Management module select AllApplication.
4. In the right Panel, click on New Application and select the EAR File andclick OK button.
5.Under Services Check the Deploy on Save option and then click on Savebutton to deploy the application
13) What are the steps to create a Master Domain using Domain Utility on the hostmachine?
1.
Select Domain Configuration under Category List2.Select Create a New Administration Domain under Task list and click on
Next3.Under Domain Details, input the Administration Domain & HAWK Cluster4.
Uncheck Domain information is stored in a Database and Local Applicationdata options
5.Check the Show Advanced option6.Set the RV Daemon and RV Service and make sure they are the same
ports7.Similarly set the HAWK Daemon and HAWK Service and click on next8.Set the HTTP Port and click and next9.Set the UID & PWD for the Domain and click on Finish
14) What are the functions of an Administrator?
User ManagementMachine ManagementApplication Management
Repository Management
15) What are the uses of grouping activities?
Repeat a group of activities based on a condition.Iterate over a list.Repeat until condition true.Repeat on Error until condition true.
11 What is the scope of user defined process variables?
The scope of user defined process variables is only within the process in which it isdefined. It does not even extend to a sub process that is invoked from the currentprocess.
16) What are the reusable components in a project?
Sub processWSDL ResourceHTTP ConnectionJDBC ConnectionSchema Definition
17) What are the various types of variables available within activities?
Process VariableLocal VariableGlobal VariableError VariableShared Variable
18) What are the monitoring tools available in TIBCO?
TIBCO HAWKTIBCO Business Events
19) What are the messaging tools available in TIBCO?TIBCO EMSTIBCO Rendezvous
File, JDBC, XML Palette
20) What activities are required to Create, Copy & Delete a File?
Create File Activity - The Create File activity creates a new file or directory with thespecified name. When creating a file, you can also provide the file contents.
Copy File Activity - The Copy File activity allows you to copy files and directories toa new location.
Remove File Activity - The Remove File activity removes the specified file. Thisactivity can also remove empty directories. If a directory that is not empty isspecified, an exception is thrown.
8/9/2019 Tibco.pdf
25/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 25
21) What activities are required to Read, Write & Rename Files?
Read File Activity - The Read File activity is used to read a file and place itscontents into the activitys output.
Write File Activity - The Write File activity writes content to the specified file.
Rename File activity - The Rename File activity is used to rename or move files.This activity can also rename directories, but you cannot use this activity to move adirectory to a new location.
22) What is the use of Data Format Activity?
The Data Format resource contains the specification for parsing or rendering a textstring using the Parse Data and Render Data activities. This shared configurationresource specifies the type of formatting for the text (delimited columns or fixed-widthcolumns), the column separator for delimited columns, the line separator, and the fillcharacter and field offsets for fixed-width columns. You must also specify the dataschema to use for parsing or rendering the text.
23) What are the two types of Data Format supported by TIBCO?
Delimiter separatedFixed format
24) What is the use of Field Offsets in the Data Format Activity?
When processing Fixed Format text, you must specify the line length and thecolumn offsets. This allows a Parse Data or Render Data activity to determine wherecolumns and lines begin and end. The Field Offsets tab allows you to specify theformat of fixed-width text.
25) What is the Parse File & Render File Activity?
Parse File Activity The Parse Data activity takes a text string or input from a fileand processes it, turning it into a schema tree based on the specified Data Formatshared configuration.
Render File Activity The Render Data activity takes an instance of a data schemaand renders it as a text string. The schema processed is based on a specified DataFormat shared configuration.
26) What is the File Poller Activity?
The File Poller process starter polls for files or directories with the given name andstarts a process when the specified change (creation, modification, deletion) isdetected.
27) What is the Wait For Change Activity used for?
The Wait for File Change activity waits for a file creation, modification, or deletionevent to occur during process execution. When this activity is executed, the processinstance suspends and waits for the specified change to occur before resuming.
28) Which Activity is used to create a Database table?
SQL Direct
29) Which Activities are used to execute a stored procedure or a statement?
JDBC Call Procedure is used to execute a stored procedure.
SQL Direct is used to execute a database statement ( Create, Alter, Delete etc.)
30) Which activity is used to establish a connection to a database ?
JDBC Connection
31) What are the steps need to establish a database connection?1.Add JD BC Connection from the J DBC Palette to the project2.Set the Connection Type to JDBC3.
Select the JDBC Driver form the Drop Down List Box (ex: Oracle)4.In the Database URL, set the host-name, port-number and database-
name5.Set the Username & Password for the database6.
Test the connection
32) How do you add or retrieve a record form a database?
8/9/2019 Tibco.pdf
26/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 26
JDBC Query is used to execute select statement to retrieve records from adatabase
JDBC Update is used to add records to a database via insert statement
33) What is the use of Fetch in the JDBC Query Activity?
The Fetch button on the JDBC Query activity allows you to synchronize the activitywith the contents of the database. If you do not click the Fetch button before applyingyour changes, TIBCO ActiveMatrix BusinessWorks displays an error dialog promptingyou to first fetch the output schema.
34) Can we use JNDI to connect to a database instead of JDBC?
We can used the JDBC Connection Activity to use the JNDI Context (in theConnection Type Dropdown box) instead of a JDBC Connect to establish adatabase connection
35) Which activity is used to create a XML Schema?
Schema form the XML Tools palette is used to define the XML Schema
36) What is XML Element & Attribute?
XML Elements XML Elements contain the opening and closing tags, child elements,
and data.
(Ex:
Robert
A+
)
XML Attribute
An attribute appears within the opening tag of an element. XML requires t hat all XML
attributes have a value. This means all attributes have to be equal to something! In
the following example active="true" is the attribute.
(Ex:
Robert
A+
)
37) What is the use of Transform XML Activity?
The Transform XML activity allows you to transform an input XML document into theoutput specified by the given XSLT File shared configuration resource. Normally,transformation of data occurs by mapping process variables to an activitys input andapplying XPath expressions to perform any transformation. If you have an XSLT filethat you are using for transformations, or if an outside source supplies an XSLT file,this activity allows you to use the XSLT file instead of manually creating themappings.
38) What is Parse XML activity?
The Parse XML activity takes a binary XML file or an XML string and processes it,turning it into an XML schema tree based on the XSD or DTD specified. The preferredway to parse XML files is to use a Read File activity set to binary mode to read theXML file. Then pass the binary file contents to the Parse XML activity.
39) What is Render XML Activity?
The Render XML activity takes an instance of an XML schema element and renders itas a stream of bytes containing XML or an XML string. The schema is processedbased on the XSD file specified.
WSDL, SOAP, Service, HTTP Palette
40) What is WSDL?
8/9/2019 Tibco.pdf
27/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 27
WSDL stands for Web Services Description Language. A WSDL file is an XMLinstance of the XML Schema. A WSDL resource is composed of a series ofdefinitions that describe the format and roles of messages used in web services.
41) What is the use of WSDL Palette?
The WSDL palette is used for creating, editing, validating, importing, and viewingWSDL files. These files are shared resources that describe web services. The WSDLpalettes resources are used to create and reuse abstract definitions, namely:
Messages, which describe the data being exchangedPortTypes, which define a set of operationsOperations, which describe the activities supported by the web service
42) What are the two types of WSDL required to create a Web Service?Abstract WSDL (Describes Structure & Elements)Concrete WSDL (Abstract WSDL with Transport)
43) What are the basic components of a WSDL?
Message (Contains the request and response of a web service)PortType (Logical Folder to organize the web service resources)Operation (Services offered by the web service)
44) What are the steps to create an Abstract WSDL?1.
Select WSDL activity from the WSDL palatte2.Describe the required Messages for the WSDL and the schema mapping for
the Messages3.Create the Logical Port by adding the PortType Activity to the WSDL4.
Add t he required Operations to the PortType A ctivit y.5.Design the Operation offered by the web service.
45) What are the steps to create a Concrete WSDL?1.Create the Abstract WSDL2.Get the XML WSDL from either SOAP Event Source or the Service WSDL
and save it in a *.wsdl file3.Import the saved concrete WSDL file into the project
46) What are the two ways to create a web service?SOAP Event Source
Service Palette
47) What is the advantage of using the Service Palette over the SOAP EventSource?
Using the SOAP Event Source, you can run only one operation at a time. While usingthe Service Palette you can run multiple operations simultaneously
48) What are the steps to create a web service using SOAP EventSource?1.Define XSD2.Define the HTTP / JMS Connection3.
Create Abstract WSDL from the XSD4.
Define the Process for the web service and replace Start Activity with theSOAP Event Source Activity from the SOAP Palette
5.Set the Port Type to Abstract WSDL and the Transport to HTTP / JMSConnection for the SOAP Event Source
6.Copy the XML WSDL form the SOAP Event Source to create the ConcreteWSDL
7.Complete the design for the web service process8.
Create a Client Process and invoke the web service using the SOAPRequest Reply Activty.
9.Set the Service Of the SOAP Request Reply to point to the ConcreteWSDL.
49) What are the steps to create a web service using Service Palette?1.Define XSD2.
Define the HTTP / JMS Connection3.Create Abstract WSDL from the XSD4.Right Click the Abstract WSDL and select Tools or Multi-User > Generate
Web Service > From WSDL5.
Select the Transport6.Generate the Concrete WSDL from the WSDL Source of the Service WSDL7.Define the Logical Operation8.
Create a Client Process and invoke the web service using the SOAPRequest Reply Activty.
9.Set the Service Of the SOAP Request Reply to point to the ConcreteWSDL
50) What is the Operation activity in the WSDL Palette used for?
The Operation component describes the message formats for the incoming andoutgoing messages required by the activities supported by the portType. One or more
8/9/2019 Tibco.pdf
28/32
1/20/2015 Tibco
http://arun-tibco.blogspot.in/ 28
Operation components can be added to a PortType component selected in yourproject.
51) What is the Retrieve Resource Activity used for?
The Retrieve Resources activity generates a WSDL file containing a concrete service(Conrete WSDL) description of any process definition that has a SOAP Event Sourceprocess starter. This allows clients to access the WSDL for a web service. The clientcan then use the WSDL file to invoke the web service. The Retrieve Resourcesactivity can also be used to retrieve any other resources, including XSDs and WSIL.
52) What is the SOAP Event Source Activity used For?
The SOAP Event Source process starter creates a process instance for incomingSOAP requests. SOAP is a standard protocol for invoking web services. This allowsyou to create a web service using process definitions. Upon retrieval of the WSDL,the client can perform a SOAP request to invoke the web service.
53) What is the SOAP Send Reply activity used for?
The SOAP Send Reply activity sends a reply to an application that sent a SOAPrequest. This activity is primarily used in process definitions that implement webservices. When a SOAP Event Source is used as the process starter, the SOAPSend Reply activity is used to send the reply to the request that starts the processinstance.
54) What is SOAP Fault?
The SOAP Fault element is used to carry error and/or status information within aSOAP message.
55) What is the difference between "SOAP over JMS" and "SOAP over HTTP"?
The advantage of using SOAP over JMS over SOAP over HTTP is reliability asyou may use the persistence and acknowledgment features built in the standard. Thesame applies if you need to establish asynchronous communication or need to usethe load balancing features provided by JMS servers. You can achieve this using httpbut the implementation would be much more complicated.
56) What is the Context Resource used for?
The Context Resource allows you to specify a schema to hold context data from anincoming request or outgoing replies to a service. This allows you to pass on data,
such as the username and password sent by the requesting application. Also, youcan pass data from the process that implements an operation back to the Service forany outgoing reply message. The Context Resource can also be used to store SOAPheaders or message attachments.
57) What is the Get Context activity used for?
The Get Context activity retrieves the value of the specified Context Resource. Thisis useful if your process definition requires some context information from anincoming request (Like Username & Password etc.).
Messaging
58) What are the Messaging Tools Provided by TIBCO?
EMSRendezvous
59) What is the difference between EMS & RVD?
EMSUses TCPFunctions within the I
Recommended