From b835d665c3b14a95c66b3fd350a7aea4f3befc6a Mon Sep 17 00:00:00 2001 From: Andrew Shvayka Date: Fri, 11 May 2018 19:43:14 +0300 Subject: [PATCH 1/3] Few performance tuning parameters --- application/src/main/resources/thingsboard.yml | 1 + .../server/dao/cassandra/AbstractCassandraCluster.java | 8 ++++++-- .../transport/mqtt/MqttTransportServerInitializer.java | 8 ++++---- .../server/transport/mqtt/MqttTransportService.java | 5 +++-- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/application/src/main/resources/thingsboard.yml b/application/src/main/resources/thingsboard.yml index c47fc28fbd..6a45f42808 100644 --- a/application/src/main/resources/thingsboard.yml +++ b/application/src/main/resources/thingsboard.yml @@ -87,6 +87,7 @@ mqtt: leak_detector_level: "${NETTY_LEASK_DETECTOR_LVL:DISABLED}" boss_group_thread_count: "${NETTY_BOSS_GROUP_THREADS:1}" worker_group_thread_count: "${NETTY_WORKER_GROUP_THREADS:12}" + max_payload_size: "${NETTY_MAX_PAYLOAD_SIZE:65536}" # MQTT SSL configuration ssl: # Enable/disable SSL support diff --git a/dao/src/main/java/org/thingsboard/server/dao/cassandra/AbstractCassandraCluster.java b/dao/src/main/java/org/thingsboard/server/dao/cassandra/AbstractCassandraCluster.java index 2e56416351..ca94822301 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/cassandra/AbstractCassandraCluster.java +++ b/dao/src/main/java/org/thingsboard/server/dao/cassandra/AbstractCassandraCluster.java @@ -60,6 +60,10 @@ public abstract class AbstractCassandraCluster { private long initTimeout; @Value("${cassandra.init_retry_interval_ms}") private long initRetryInterval; + @Value("${cassandra.max_requests_per_connection_local:128}") + private int max_requests_local; + @Value("${cassandra.max_requests_per_connection_remote:128}") + private int max_requests_remote; @Autowired private CassandraSocketOptions socketOpts; @@ -90,8 +94,8 @@ public abstract class AbstractCassandraCluster { .withClusterName(clusterName) .withSocketOptions(socketOpts.getOpts()) .withPoolingOptions(new PoolingOptions() - .setMaxRequestsPerConnection(HostDistance.LOCAL, 32768) - .setMaxRequestsPerConnection(HostDistance.REMOTE, 32768)); + .setMaxRequestsPerConnection(HostDistance.LOCAL, max_requests_local) + .setMaxRequestsPerConnection(HostDistance.REMOTE, max_requests_remote)); this.clusterBuilder.withQueryOptions(queryOpts.getOpts()); this.clusterBuilder.withCompression(StringUtils.isEmpty(compression) ? Compression.NONE : Compression.valueOf(compression.toUpperCase())); if (ssl) { diff --git a/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/MqttTransportServerInitializer.java b/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/MqttTransportServerInitializer.java index 976d8bacad..432966eeff 100644 --- a/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/MqttTransportServerInitializer.java +++ b/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/MqttTransportServerInitializer.java @@ -33,8 +33,6 @@ import org.thingsboard.server.transport.mqtt.adaptors.MqttTransportAdaptor; */ public class MqttTransportServerInitializer extends ChannelInitializer { - private static final int MAX_PAYLOAD_SIZE = 64 * 1024 * 1024; - private final SessionMsgProcessor processor; private final DeviceService deviceService; private final DeviceAuthService authService; @@ -42,10 +40,11 @@ public class MqttTransportServerInitializer extends ChannelInitializer Date: Tue, 15 May 2018 22:26:51 +0800 Subject: [PATCH 2/3] fixed missed semicolon! --- ui/src/app/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/src/app/app.js b/ui/src/app/app.js index 0b6a141ba3..c328a5a496 100644 --- a/ui/src/app/app.js +++ b/ui/src/app/app.js @@ -79,7 +79,7 @@ import 'font-awesome/css/font-awesome.min.css'; import 'angular-material/angular-material.min.css'; import 'angular-material-icons/angular-material-icons.css'; import 'angular-gridster/dist/angular-gridster.min.css'; -import 'v-accordion/dist/v-accordion.min.css' +import 'v-accordion/dist/v-accordion.min.css'; import 'md-color-picker/dist/mdColorPicker.min.css'; import 'mdPickers/dist/mdPickers.min.css'; import 'angular-hotkeys/build/hotkeys.min.css'; From b9a988f33a2927860f742a967195778d9b22cc23 Mon Sep 17 00:00:00 2001 From: Volodymyr Babak Date: Wed, 16 May 2018 18:12:31 +0300 Subject: [PATCH 3/3] Fix for correct install if env var changed --- docker/tb/run-application.sh | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/docker/tb/run-application.sh b/docker/tb/run-application.sh index e297335fe2..a2a1e2beba 100755 --- a/docker/tb/run-application.sh +++ b/docker/tb/run-application.sh @@ -18,6 +18,11 @@ dpkg -i /thingsboard.deb +# Copying env variables into conf files +printenv | awk -F "=" '{print "export " $1 "='\''" $2 "'\''"}' >> /usr/share/thingsboard/conf/thingsboard.conf + +cat /usr/share/thingsboard/conf/thingsboard.conf + if [ "$DATABASE_TYPE" == "cassandra" ]; then until nmap $CASSANDRA_HOST -p $CASSANDRA_PORT | grep "$CASSANDRA_PORT/tcp open\|filtered" do @@ -46,12 +51,6 @@ if [ "$ADD_SCHEMA_AND_SYSTEM_DATA" == "true" ]; then fi fi - -# Copying env variables into conf files -printenv | awk -F "=" '{print "export " $1 "='\''" $2 "'\''"}' >> /usr/share/thingsboard/conf/thingsboard.conf - -cat /usr/share/thingsboard/conf/thingsboard.conf - echo "Starting 'Thingsboard' service..." service thingsboard start