LIGHT

  • News
  • Docs
  • Community
  • Reddit
  • GitHub
Star
  • About Light
    • Overview
    • Testimonials
    • What is Light
    • Features
    • Principles
    • Benefits
    • Roadmap
    • Community
    • Articles
    • Videos
    • License
    • Why Light Platform
  • Getting Started
    • Get Started Overview
    • Environment
    • Light Codegen Tool
    • Light Rest 4j
    • Light Tram 4j
    • Light Graphql 4j
    • Light Hybrid 4j
    • Light Eventuate 4j
    • Light Oauth2
    • Light Portal Service
    • Light Proxy Server
    • Light Router Server
    • Light Config Server
    • Light Saga 4j
    • Light Session 4j
    • Webserver
    • Websocket
    • Spring Boot Servlet
  • Architecture
    • Architecture Overview
    • API Category
    • API Gateway
    • Architecture Patterns
    • CQRS
    • Eco System
    • Event Sourcing
    • Fail Fast vs Fail Slow
    • Integration Patterns
    • JavaEE declining
    • Key Distribution
    • Microservices Architecture
    • Microservices Monitoring
    • Microservices Security
    • Microservices Traceability
    • Modular Monolith
    • Platform Ecosystem
    • Plugin Architecture
    • Scalability and Performance
    • Serverless
    • Service Collaboration
    • Service Mesh
    • SOA
    • Spring is bloated
    • Stages of API Adoption
    • Transaction Management
    • Microservices Cross-cutting Concerns Options
    • Service Mesh Plus
    • Service Discovery
  • Design
    • Design Overview
    • Design First vs Code First
    • Desgin Pattern
    • Service Evolution
    • Consumer Contract and Consumer Driven Contract
    • Handling Partial Failure
    • Idempotency
    • Server Life Cycle
    • Environment Segregation
    • Database
    • Decomposition Patterns
    • Http2
    • Test Driven
    • Multi-Tenancy
    • Why check token expiration
    • WebServices to Microservices
  • Cross-Cutting Concerns
    • Concerns Overview
  • API Styles
    • Light-4j for absolute performance
    • Style Overview
    • Distributed session on IMDG
    • Hybrid Serverless Modularized Monolithic
    • Kafka - Event Sourcing and CQRS
    • REST - Representational state transfer
    • Web Server with Light
    • Websocket with Light
    • Spring Boot Integration
    • Single Page Application
    • GraphQL - A query language for your API
    • Light IBM MQ
    • Light AWS Lambda
    • Chaos Monkey
  • Infrastructure Services
    • Service Overview
    • Light Proxy
    • Light Mesh
    • Light Router
    • Light Portal
    • Messaging Infrastructure
    • Centralized Logging
    • COVID-19
    • Light OAuth2
    • Metrics and Alerts
    • Config Server
    • Tokenization
    • Light Controller
  • Tool Chain
    • Tool Chain Overview
  • Utility Library
  • Service Consumer
    • Service Consumer
  • Development
    • Development Overview
  • Deployment
    • Deployment Overview
    • Frontend Backend
    • Linux Service
    • Windows Service
    • Install Eventuate on Windows
    • Secure API
    • Client vs light-router
    • Memory Limit
    • Deploy to Kubernetes
  • Benchmark
    • Benchmark Overview
  • Tutorial
    • Tutorial Overview
  • Troubleshooting
    • Troubleshoot
  • FAQ
    • FAQ Overview
  • Milestones
  • Contribute
    • Contribute to Light
    • Development
    • Documentation
    • Example
    • Tutorial

Light IBM MQ

This is not an open-source component, so it is only available for paid customers. We have some enterprise customers who still have so many applications or services built on top of the Java EE platform with IBM MQ to integrate between applications across domains. To leverage these applications and services, we were asked to develop a light-4j component that can easily connect to the MQ to produce/consume messages.

Features

  • Security first design with all connections authenticated and authorized.
  • TLS support
  • Automatically create the JMSContext during the server startup and close the context during the server shutdown.
  • MQConfig and JMSContext are exposed through the startup hook for app developers.
  • MQ component can be enabled or disabled by an external config file

Configuration

Here is an example of mq.yml configuration file

# If the MQ component is enabled or not
enabled: true
# If TLS is used to connect to the MQ server
loadTrustStore: true
# The Truststore that contains the MQ client certificate
trustStore: mq.truststore
# The password that is used to open the truststore
trustStorePass: passw0rd
# Queue Manager
queueManager: QM1
# Channel
channel: DEV.APP.SVRCONN
# Connection host
host: localhost
# Connection port
port: 1414
# user
user: app
# password
password: passw0rd
# Cipher Suite used for the TLS
cipherSuite: SSL_RSA_WITH_AES_128_CBC_SHA256
# Default Queue Name
queue: DEV.QUEUE.1
# Default Topic Name
topic: dev/

Tutorial

There are two examples in the component to show users how to use the light-mq. One example is a producer that has two endpoints to put request body into a queue and to publish request body to a topic. Another example is a consumer service that has two startup hooks to consume the message from the queue and the topic in separate threads. It has two endpoints to display the last ten messages received from the queue and the topic.

The source code of the example applications is not available as open-source; however, we have published the docker images to the docker hub so that users can run the application locally by following the tutorial.

License

If anyone is interested in using this component, please contact [email protected] for more information.

Support

If you are a customer and have questions or issues with the component, please contact [email protected] for support. For customers who have other support channels, please use them for faster response than email support.

  • News
  • Docs
  • Community
  • Reddit
  • GitHub
  • About Light
  • Getting Started
  • Architecture
  • Design
  • Cross-Cutting Concerns
  • API Styles
  • Infrastructure Services
  • Tool Chain
  • Utility Library
  • Service Consumer
  • Development
  • Deployment
  • Benchmark
  • Tutorial
  • Troubleshooting
  • FAQ
  • Milestones
  • Contribute