Does iBus provide failure detection and fault tolerance features?
Yes. The iBus//MessageServer features a fault tolerance feature which allows the clients to transparently reconnect to a failed server (once it is restarted.)
Is iBus really "plug and play"?
Yes. The iBus//MessageServer is featured
with a convenient Configuration Wizard which allows the user to
simply install the system and run applications with it without
configuration effort.
Is there support for SSL?
Yes, SSL is bundled with
iBus, and is available to customers in the US as well as in many
other
countries (contact us for a list). JMS applications can access
SSL certificates to identify and
authenticate their peer applications.
I get a "NoSuchFieldError" in my client, what can I do?
You are using iBus//MessageServer 4.1.1 or 4.1.2. There's
a known issue that if you have the adminAPI.jar before the
msrvClt.jar in the CLASSPATH, you get this error.
Make sure to have one of msrvClt.jar or msrvCltDebug.jar
in the beginning of the CLASSPATH.
Can I improve the safety of the embedded database?
Yes, the server can be configured to take additional
safety measures in the embedded database which
greatly increases its reliability. Adjust the configuration
parameter "explicitSync" in all Store-Subsystems
(PersQueueFileStore, TopicFileStore and IDFileStore).
You can do this change via the Administration Console.
Why do I not see all messages of a Queue with a QueueBrowser?
If you have a QueueReceiver open on the Queue that you
are inspecting with a QueueBrowser, then the server might
have sent messages to the QueueReceiver's consumerQueue.
Those messages will not be visible to QueueBrowsers since
they are locked inside the server. [the consumerQueue is
a queue of messages each consumer has - inside the client VM.
This queue's size can be configured and messages of this
queue will be delivered to the application as soon as possible].
Are there access control
lists?
iBus//MessageServer provides a very sophisticated access control
mechanism to allow you to
build robust and secure applications. Plugins can replace or enhance
the default
iBus//MessageServer access control facilities. Furthermore, plugins
allow you to integrate iBus
into existing user management and directory services.
What administration facilities are available?
For iBus//MessageServer a
powerful graphical user interface is available which allows the
configuration and monitoring of any number of servers. An administration
API is also available
to integrate management of iBus services into a larger application,
or to administer a
iBus//MessageServer installation programatically. The API offers
full access to all configuration
and management options of iBus//MessageServer.
How is licensing handled?
Technically, licensing is
managed by adding a license file in the servers library directory
($INSTALL_DIR$/server/lib) or by using the convenient license
installation tool. Note that there shouldn't be other iBus licenses
in the CLASSPATH as this might confuse the license checker.
What is the price of
iBus//MessageServer
For pricing and licensing
information, please contact info@softwired-inc.com
Which platforms are supported?
Formally tested platforms are:
Linux on Intel Platforms
Windows 9x, NT and 2000
Sun Solaris (Sparc)
The iBus//MessageServer Clients run on any JDK1.1 or higher while
the Server itself
requires a JDK1.2 or higher. Customers use iBus on AIX, AS/400,
HP UX or IRIX, and there are no known
problems with any platform.
JMS Chapter 8
iBus//MessageServer 4.5 supports application server facilities
as defined in the JMS specification in chapter 8
which include ConnectionConsumer - used for application server
integration - and XA transaction - two phase,
distributed transactions.
Can I use multicast
and persistency?
Yes. iBus//MessageBus and iBus//MessageServer can be seamlessly
used together, while the iBus//MessageBus
is mainly based on multicast and can therefore help in a LAN environment,
iBus//MessageServer provides
the percistency (besides many other features like protocol translation
etc.).
Why do I need to choose
between iBus//MessageServer's support for queues and persistence,
and iBus//MessageBus's scalable multicast protocols?
You don't need to. The iBus//MessageBus client library can also
connect
to iBus//MessageServer. After creating your ConnectionFactory
object,
cast it to IBusTopicConnectionFactory or IBusQueueConnectionFactory
and
call setProvider() to tell which provider to use. Using an application
gateway of about 10 lines of code (see sample code in the Programmer's
Manual under "Using iBus//MessageServer in an iBus//MessageBus
Client"),
you can forward data from one product to the other.
Why do my messages not
get delivered?
When the expiration aka time-to-live value on a message
is small and the client machine's clock is not well enough
synchronized with the server's clock, messages can
arrive at the server and have an expiration time that
is already "in the past". Therefore such messages can
already be regarded as expired and they are not
distributed.
To prevent this from happening, make sure that your
client's clocks are synchronized with the server or
your time-to-live value on the messages is big enough.
Where can I learn how
to tune the iBus//MessageServer?
There's a seperate manual available for server tuning. Please
consult the online documentation for the "Server Performance
and Memory Manual".
Are non transacted messages
faster?
Yes. Non transacted messages are sent asynchronously to the server
and therefore don't require a synchronous request. They are considerably
faster than transacted messages. So if your application allows
(part of) the messaging to be non
transactional, you are encouraged to do so.
Can I run the config wizard in text mode?
Yes you can. Add the parameter -tui to the parameters in the
corresponding script file. For the windows script add it to the
MSRV_MAIN environment variable, in the shell script add it
to the MSRV_FLAGS.
How can my client connect
to two iBus//MessageServers?
This can be done conveniently using the iBus extension methods
available on the ConnectionFactory object. See the code sniplets
below:
IBusTopicConnectionFactory factory = IBusJMSContext.getTopicConnectionFactory();
factory.setServerName("messageserver1.yourdomain.com");
factory.setServerPort(8733);