Re: Test asynchronous things with MQTT
Dmitri T <[email protected]> Fri, 26 Jan 2024 14:39:09 +0100
| Newsgroups | gmane.comp.jakarta.jmeter.user |
|---|---|
| Message-ID | <PH7PR12MB7139381094A72C44849656B0C0792@PH7PR12MB7139.namprd12.prod.outlook.com> |
Aurélien FILEZ wrote: > Hi Team, > > Algo, my JMeter with the MQTT plugin is that : > > image.png > > But the MQTT plugin page show that : > > image.png > > Why have I just the possibility to set a *.p12 certificate and not a > jks file ? > > Thank you team, > Aurélien > > On Fri, Jan 26, 2024 at 12:19 PM Aurélien FILEZ > <[email protected] <mailto:[email protected]>> wrote: > > Hello, > > I'm working on an object connected company, and they ask me to > test the performance on the platform. > > We have HTTP endpoints which says "202 accepted" and the result, > after the process, is to send an MQTT Message in the oneM2M format. > > My goal is to check the average latency between an ordersent by > the HTTP endpoint, and the MQTT message received. > > I have a header sent to the HTTP query, and reinject in the MQTT > received message. > > Is it possible to do something with JMeter to mesure that ? Have > you got some examples I can reuse ? > > Thank you Team, > Aurélien > My approach for testing "asynchronous" stuff is the following: 1. Trigger the async processing somehow using a suitable Sampler or Plugin <https://jmeter-plugins.org/> 2. Add a While Controller <https://www.blazemeter.com/blog/while-controller-jmeter> after that Sampler and put a suitable condition to check if the asynchronous job is finished somehow 3. Add a Sampler or Plugin under the While Controller to query the asynchronous job status 4. Add a relevant Post-Processor <https://jmeter.apache.org/usermanual/component_reference.html#postprocessors> to extract the status and save it into a JMeter Variable which is used in While Controller's condition 5. Put the whole logic under the Transaction Controller <https://jmeter.apache.org/usermanual/component_reference.html#Transaction_Controller> to measure end-to-end processing time With regards to .jks truststore it's for overriding Java default truststore <https://www.baeldung.com/java-keystore-truststore-difference>, i.e. if you have custom certificate chain or authority which is not known to JDK. In the vast majority of cases the PKCS12 certificates storage should be sufficient, however I cannot comment on this as I don't know anything about your infrastructure.