34 lines
1.2 KiB
Groovy
34 lines
1.2 KiB
Groovy
@GrabResolver(name='Paho', root='https://repo.eclipse.org/content/repositories/paho-releases/')
|
|
@Grab(group='org.eclipse.paho', module='mqtt-client', version='0.4.0')
|
|
|
|
/**
|
|
* Ths script is meant to measure the connection mean time from a client.
|
|
* It loops connecting and disconnecting to the broker.
|
|
* */
|
|
|
|
import org.eclipse.paho.client.mqttv3.MqttClient
|
|
import org.eclipse.paho.client.mqttv3.MqttMessage
|
|
import org.eclipse.paho.client.mqttv3.persist.MqttDefaultFilePersistence
|
|
|
|
String tmpDir = System.getProperty("java.io.tmpdir")
|
|
MqttDefaultFilePersistence dataStore = new MqttDefaultFilePersistence(tmpDir)
|
|
|
|
MqttClient client = new MqttClient("tcp://localhost:1883", "ReconnectingClient", dataStore)
|
|
10.times {
|
|
println "conneting.."
|
|
long start = System.currentTimeMillis()
|
|
client.connect()
|
|
long time = System.currentTimeMillis() - start
|
|
print "took ${time} ms "
|
|
|
|
MqttMessage message = new MqttMessage('Hello world!!'.bytes)
|
|
message.setQos(0)
|
|
long startPub = System.currentTimeMillis()
|
|
client.getTopic("log").publish(message)
|
|
long pubTime = System.currentTimeMillis() - startPub
|
|
print " pub (qos 0): ${pubTime} ms "
|
|
|
|
client.disconnect()
|
|
println "disconnected"
|
|
}
|
|
println "Finished" |