Overview of Infologica Messaging Service

Infologica Messaging Service provides seamless integration of heterogenous IT systems improving business agility, efficiency and performance.
Current tutorial shows how to configure and access Messaging Service by the .NET and Java client applications. We will also show how to tune Infologica Message Processor Service to enable Infologica Fusion CEP-capabilities.

Important: Prior to the product installation make sure that all software prerequisites incl. Infologica Fusion Redistributable and the latest Infologica Fusion SDK have been installed on the server machine!

After installing the Infologica Messaging Service, run the netstat -b -p tcp command to check that default Infologica IMS tcp ports 9876 (ServicePort) and 6767 (Management.ServicePort) are not engaged by other processes. If required open the Infologica.Messaging.Service.exe.config file and edit the ServicePort and Management.ServicePort keys.
You also need to install the latest version of Infologica SDK to get access to the Messaging Service Remote Administration Console. If you are running console remotely or had modified the IMS Management.ServicePort key during the previous step, you have to edit the ServiceEndpoint key in the Infologica.Messaging.Console.exe.config file.
Note: You have to be a local administrator on the Messaging Service machine to be able to connect to IMS from Administration Console.

  • Start Remote Administration Console. The console should appear disabled in the offline mode if the IMS Service is down.
  • Start Messaging Service from the Services Applet. Alternatively you can run IMS as a console application which can provide you with a more verbose trace information.
  • For this tutorial we will run IMS as a console. To start console double-click on Infologica.Messaging.Service.exe file. To stop console type 'quit' or 'exit', or press ctrl-C.
    Your Remote Administration console should come automatically enabled once you started the IMS service.
  • Now you can easily create new IMS account and configure account authentication type.
  • We recommend to use Windows authentication for all .NET clients and Custom authentication for Java application.
    Note: For Windows authentication the account should be provided in the [Domain(ComputerName)]\[UserName] format.
    Account Name is case-insensitive.
  • On the next step we will create the new destination queue 'Demo' and add previously created account 'Test' to the 'subscriber' and 'publisher' list.

  • Note: By default the queue with empty subscribtion list is open for anonymous access. The mapping of any specific account to the queue automatically enables queue access security. This behaviour can be changed using IMS configuration settings. Important: The queue name is a case-sensitive!
    Infologica SDK comes with a fully functional IMS Client Sample application available in C# (code is included) and Java (requires JRE 1.5+). We will use both .NET and Java clients to demonstrate application interoperability via Infologica IMS service.
    The sample client application can be found under the [\Infologica Fusion SDK\Applications\Infologica.Messaging.Sample.Net] folder. The Java sample client application can be found under the [\Infologica Fusion SDK\Applications\Infologica.Messaging.Sample.Java] folder. Below is a code snippet from Infologica.Messaging.Sample project showing the use of Infologica Client Connection API:

  • Open Infologica.Messaging.Sample project in Visual Studio 2005, compile and run application.
  • Connect to IMS as a 'custom user' using credentials of the 'Test" account created at the previous step. If required modify IMS Host Name and Port.
  • Type 'Demo' into the queue subscription field and press 'Subscribe'. You will start receiving Heartbeat messages immediatelly.
  • Repeat the same steps for the Java Client. Run Infologica.Messaging.client.jar executable file, then connect to IMS as 'Test' account and subscribe to 'Demo' queue.
  • Now try to exchange messages between .NET and Java Applicaions by publishing messages on the 'Demo' queue.
  • You will start receiving messages immediatelly.
  • Select the EventViewer Node in the IMS Administration Console to check that both .NET and Java Clients were successfully authenticated and authorised to access 'Demo' queue as publishers and subscribers.
  • Infologica Fusion Framework provides .NET developers with the powerful IMS Adaptor, which significantly simplifies the application integration tasks.
    Infologica Fusion Administrator configures IMS adaptor using the Enterprise Management Console. The adaptor configuration includes the connectivity, probing, load balancing and failover information required by the Infologica Fusion Service Manager to provide an enterprise level of mediation between the business and infrastructure services layers.
    Administrator configures the IMS Service Endpoint, Destination Queue Name and Account Security Credentials, keeping developer abstracted from connectivity issues.
    If IMS connection policy requires Windows authentication and client application is supposed to run under the low-privileged account, administrator can use Adavanced Configuration Settings to enable dynamic impersonation and provide security context switch during message exchange.
    Finally administrator provides developers with the IMS Adapter Alias. This is the only information they need to know to message-enable their application. Infologica provides the code-snippet library for each Infrastructure Adapter. The snippet library is integrated with Visual Studio 2005.
    After selecting the IMS Adaptor code-snippet, developer just needs to replace the placeholders for adapter alias, message subject, body and headers.

    Infologica Messaging Service is integrated with the Infologiva Message Processor Service (MPS), which creates poweful CEP capabilities.
    Similar to the Fusion File System Watcher, SOAP and TCP Listeners, Infologica Message Processor Service allows for mapping of the destination queue and message subject to any of the registered Infologica Application Services which can be dynamically invoked to process messages arrived on the queue.

  • First Install Infologica Message Processor Service from the Infologica Product Download Site.
  • After installation start the Infologica Message Processor Configuration Tool and configure Persistance storage provider, Connection to the Messaging Service, Message Throttling, Purging and Logging Settings.
  • Test IMS connectivity and Start the Message Processor Service
  • From the Start Menu go to Programs/Infologica Fusion/MessageProcessor Administration and launch MPS Admin Console.
  • Start from configuring Message Processor by mapping Message Processor Alias to Application Service Component which implements Infologica Fusion IRequestHandler Interface.

  • In this example we will use the Infologica.App.Sample.MessageProcessor component provided by the Infologica Fusion SDK.
  • Next Step is to define the reusable unit of execution aka Task, providing a mapping between the Message Processor and Event assosiated with the arrival of specific message on the specific queue

  • Once the Task is enabled, the Message Processor will subscribe for the preconfigured destination queue and evaluate all incoming messages by the preconfigured message subject.
    All filtered messages will be immediatelly persist in the Message Processor Persistance Storage, and processed on the separate threads by passing message to the dynamically invoked custom application service.
    You can additionally define the message processing retry logic as well as configure extra parameters you would like to pass to your application service together with the message content.
    Administration Console also allows you to create the message notification groups and map them to the particular message processing status.
    Navigating to the Tools/Definitions/Export starts the Infologica Message Processor Definition Export Tool which helps to serialise the message processing instructions into the structured XML document format and seamlessly redeploy it to another machine or environment using Infologica MessageProcessor Definition Import Tool.
    Selecting the CurrentActivity node we can monitor the message processing status from the Administration Console .
    Double clicking on the message in the CurrentActivity panel opens the Message Detailed Processing Status.
    Back to demos and tutorials