-
Message redelivery for New Java API - if an exception or un-acknowledgement happened
I am exploring new Java API for solace integration. I have noticed that message redelivery is not happening if an exception happened in consumer thread. In JCMP api we were able close/ unbind and bind consumer. Spring cloud stream binder also doing same way. But new Java API I those apis's were not exposed. Please let me…
-
Consume from multiple queues in Spring Cloud Stream
Yesterday I got asked by a developer how she could have multiple functions in her Spring Cloud Stream microservice each consume from its' own queue. Luckily the framework makes this relatively simple to accomplish, but the devil is in the details as your configuration must match your code so I figured I'd share the steps…
-
Specify Spring Cloud Stream Error Handlers though application configuration
In the current scheme of things, you would be wiring the error handlers through @ServiceActivator annotation. The annotation parameters helped distinguish global versus binding-specific error handlers. If you notice, the association is captured in the code, and a change would require code-level updates. In the…
-
Spring Cloud Stream Batch Consumer and Batch Publisher using Function
Consumer spring.cloud.stream.bindings.receiveMessage-in-0.consumer.batch-mode=true spring.cloud.stream.solace.bindings.receiveMessage-in-0.consumer.batchMaxSize=255 spring.cloud.stream.solace.bindings.receiveMessage-in-0.consumer.batchTimeout=500 ### Publish messages to Topic…
-
Spring Cloud Stream | Batch | TPS | Tuning
In our micro service, we are using solace binder with SCS, during non-functional testing we found some differences in performance, Could you please help to understand. service - Processor is used. The TPS is approx 200 TPS. Function<Message<List<String>>, Collection<Message<SafeStoreObject>>> receiveMessage() The…
-
Spring Cloud Stream - Confirming publication and Acknowledging Receipt
Hi I read the following as well as some of the guides which talks about publishing and the dispatch being async. All the examples refer to using a StreamBridge however, the same case occurs when an application is a 'processor', in which case we can't use the CorrelationData approach as described. Please correct me if I am…
-
Spring Cloud Stream | Solace connections
Hi All, I am running a microservice with Spring cloud stream The batch mode is true and batch size is 255. So does the service opens 255 connections to read the msg ? as i am seeing the window size is 255. which controls this window size of the solace queue.
-
Effortless Request-Reply Functionality for Spring Cloud Stream Binders
Simplify Request-Reply Communication with spring-boot-starter-request-reply Hello, Spring Boot developers and integration enthusiasts! We're pleased to announce the launch of the spring-boot-starter-request-reply, a new addition to the Spring Boot ecosystem. This starter aims to enhance communication capabilities in Spring…
-
StreamBridge null pointer with Spring 3
I try to get "spring-cloud-starter-stream-solace" version 3.0.0 with spring 3.1.0 running. But every time i use the "StreamBridge" i get this error message: 2023-06-01T14:38:25.602+0200 ERROR Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed:…
-
Spring cloud stream Solace binder prevents application from running when Solace is down
Hello everyone, I am currently working on an application that consumes messages from Solace and serves users with HTTP endpoints. However, when Solace is down, the Solace binder prevents the application from running until Solace is reachable again. This behavior is problematic for our business as we want to continue…
-
Spring Cloud Stream Solace - Sticky Load Balancing Implementation
Can any one please help me with a sample implementation of sticky load balancing with spring cloud stream solace. My use case is account transaction information are posted to a solace topic to 6 different partitions. There will be consumer(s) reading from these partitions. Initially there will be 1 consumer which is hosted…
-
Spring Cloud Stream Solace - Manual Acknowledgement
The batch mode is working fine as i am able to receive the msgs as batch and publish as batch. Now, i am trying to manually acknowledge the messages. If no exception, update the database with success and then accept the message. Else, update the DB with error and then requeue the message. Function<Message<List<?>>,…
-
Spring Cloud Stream Data Type in Function
Function<Message<?>, Message<?>> The function takes the input paylaod as bytes even when datatype is mentioned. The auto conversion from json to pojo is not happening. Any suggestion? For example, Message<ClassName> when i directly use it, i am getting Class class exception ClassName a = message.getPayload(). Works as…
-
How to connect to pre-provisioned queue in solace using spring cloud stream ?
I am using @StreamListner, created input binding of type SubscribableChannel & trying to connect to a pre-provisioned queue and used similar configurations as suggested in previous comment but i am not able to bind consumer with queue . Getting error - "EL1008E: Property or field 'isAnonymous' cannot be found on object of…
-
How to use/ enable oAuth2 in spring cloud stream to connect to Solace broker ?
I have implemented spring cloud solace binder to consume messages from Solace Queue. I am using Azure OAuth and registered the app as well as enabled OAuth on the solace broker. I am having hard time finding Oauth properties to connect to solace binder. Referred to various dev tutorials and could only find below properties…
-
In Spring cloud , i would like to read data from pre-define queue.
Currently spring cloud app will create the queue "scst/an/some randome-id/plain/myConsumer-in-0" at server startup (some thing similar), Since i already have a queue and queue has some persistence message so how to command spring cloud to use existing queue for subscriptions.
-
Failed to consume a message from destination Queue
I am using Spring cloud stream 2021.0.2 to consume messages from queue, when some messages are sent , I can see the message get spooled continously in the queue but It is not coming inside application and processed because of below exception. Please help org.springframework.messaging.MessagingException: Incorrect type…
-
Failed to consume a message from destination
I have a queue A which has many topic subscriptions. We run our microservice using Spring cloud stream stack. When queue A receives messages from different topics and processing them and all of a sudden, we see below exception stacktrace is continuously printing in the logs. I am not sure about the reason, while it is…
-
Spring Cloud Stream Batch Consumer and Batch Producer
Batch mode is true and batch size is 10. Still when we run the application with volumes of data, the batch size grows upto 75. Any suggestions on the below properties? Properties: spring.cloud.stream.bindings.receiveMessage-in-0.consumer.batch-mode=true…
-
Publish Confirmation when using batch publish of Spring Cloud Stream binder for Solace PubSub+
I was posed with the question of whether it would be possible to get publish confirmation with a Batch Publish operation when using Spring Cloud Stream binder for Solace PubSub+. The answer is Yes! Just that you would have to check on the correlation data in a separate thread. Here is a sample function, the last published…
-
Spring cloud Stream Solace Unit Test
Solace Spring Cloud BOM 2.4.0 Solace Spring Cloud Stream Starter 3.4.0 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-stream</artifactId> <type>test-jar</type> <scope>test</scope> <classifier>test-binder</classifier> </dependency> <!--…
-
Solace Client metrics to scaling my application
Hello guys, I'm migrating from RabbitMQ to Solace, there's a feature important in my spring boot applications with the rabbitmq client about metrics. We are using the metric `rabbitmq.consumed` to find the rate of consumed messages per second and scaling horizontally after a certain threshold. I'm able to get this metric…
-
StaleSessionException - Tried to call receive on a stopped message consumer
at java.base/java.lang.Thread.run(Thread.java:834), exception_class=com.solacesystems.jcsmp.StaleSessionException, exception_message=Tried to call receive on a stopped message…
-
Using Spring cloud Stream, message is being sent as an attachment instead of content
hello, i am using org.springframework.cloud.stream.function.StreamBridge to send the message to a solace topic. Using the mime type as "text/plan". The message is being sent to queue. But as an attachment. The content size is zero bytes, but the attachment size is same as the message size I sent. I couldn't find any…
-
Now Available: PubSub+ Connector for IBM MQ
I am pleased to announce the General Availability (GA) version of the Solace PubSub+ Connector for IBM MQ v1.0.0 is now available! The connector is the 1st of many connectors coming from Solace that leverage a new, common architecture built on various Spring framework technologies. I introduced this new common architecture…
-
View topic subsciptions in Solace Admin UI
Hello We are using Spring Cloud Stream to consume and publish messages using solace binder. From the logs we can see the message - "Subscribing Queue xxxx to topic yyy" at application startup. However in Solace admin UI, we can't see any subscriptions under the topic. Could you please help where we can view the topic…
-
Spring cloud stream - concurrency
Hi there I'm trying to configure more than one Consumer Thread for my functional consumer But I saw that when I config concurrency as 5. It will create 5 session connection to the solace server. when config concurrency is 5. It will create 5 session connection to the solace when config concurrency is 10. It will create 10…
-
Do not alter queue settings when using Spring Cloud Stream binder for Solace PubSub+
Typically, queues and other Broker resources are pre-provisioned, and the clients simply bind and use them at run-time. The auto-provisioning feature supported by Solace binder helps the creation of queues at startup - a handy feature! Both message queues and error queues can be provisioned dynamically at the time of…
-
Close connection on openshift every 2sec
My consumer connection to solace is closed after every 2seconds that leads to fail big message more than 5 mb read. Please suggest
-
Custom Queue Names when using Spring Cloud Stream binder for Solace PubSub+
The Spring Expression Language (SpEL for short) is a powerful expression language that supports querying and manipulating an object graph at runtime. In Solace Binder, we can use the SpEL to specify queue name expressions to generate custom queue names. Not all properties present in the application configuration are…