SlideShare a Scribd company logo
1 of 21
Download to read offline
KIT – University of the State of Baden-Wuerttemberg and
National Research Center of the Helmholtz Association
PERVASIVE COMPUTING SYSTEMS, INSTITUTE FOR TELEMATICS, FACULTY OF INFORMATICS
www.kit.edu
Always-On Web of Things Infrastructure
Dynamic Software Updating
2016-11-07, Web of Things Workshop
Martin Alexander Neumann, Christoph Tobias Bach, Andrei Miclaus, Till Riedel, Michael Beigl
2 16-11-08
e.g. production control,
health monitoring
Simplify IoT
interoperability
Common technologies/
web standards
HTTP, REST
JSON, JSON-LD
WebSockets, CoAP, MQTT
Martin Alexander Neumann, KIT
Web of Things
http://forklog.net/the-way-iot-and-blockchain-change-the-world/
3 16-11-08
Updating the Infrastructure
Cloud services and gateways
Highly available, real-time communications
Maintenance windows, or rolling updates
Software updates
Low-disruptive rollout of updates and patches
But, especially: timely rollout of security patches
Martin Alexander Neumann, KIT
5 16-11-08
Ad Hoc
Approach enabling …
Every update to every
installation of a software
has to be planned
Takes time and effort
General
At least – approach fits
an update to
all installations of a SW
Better – approach fits
all updates to
all installations of a SW
Dynamic Software Updating
Martin Alexander Neumann, KIT
Low-Disruptive and Timely Hot/Live Updates
Least preferrable with
common technologies
widely adopted
6 16-11-08
1. Preparation
Vendor tailors
program to DSU system
2. Installation/Rollout
Vendor provides
a dynamic update
(instead of a regular one)
to update any old
program instances
Martin Alexander Neumann, KIT
Goal of Dynamic Software Updating
7 16-11-08
Conventional Update
Martin Alexander Neumann, KIT
𝑣0 update
stop restart
persist
data
offline
𝑣1
reload
data
online
disruption
8 16-11-08
Transform state in memory → efficient
Stop 𝑣0 immediately → timely
Transform anything → flexible
Use with any software → generic
Dynamic Software Updating
Martin Alexander Neumann, KIT
𝑣0 DSU
offline
𝑣1
online
disruption
9 16-11-08
Close classes world and load 𝑣1
Compare 𝑣0 to 𝑣1 for automatic transformation
Load update code 𝑣0 → 𝑣1 that finalizes transform.
𝑢𝑛𝑙𝑜𝑎𝑑 𝑣0
𝑙𝑜𝑎𝑑 𝑣1
𝑐𝑜𝑚𝑝𝑎𝑟𝑒
Lusagent DSU Phases – Preparation & Cleanup
Martin Alexander Neumann, KIT
𝑣0 DSU
offline
𝑣1
online
prepare cleanup
update
10 16-11-08
Stop all threads, transform state, release threads
Properties or onetime instrumentation for safe state
Explore entire heap to find and transform objects
Lusagent DSU Phases – Update
Martin Alexander Neumann, KIT
𝑣1𝑣0
offline online
prepare cleanup
update
𝑢𝑝𝑑𝑎𝑡𝑒 𝑐𝑜𝑑𝑒
𝑎𝑢𝑡𝑜. 𝑡𝑟𝑎𝑛𝑠𝑓𝑜𝑟𝑚.
12 16-11-08
Develop (one-time) program instrumentation
Definition of update points for timely updates
Lusagent DSU Workflow (1)
Martin Alexander Neumann, KIT
Update Points
𝑣0
𝑣1
𝑣0
Update Points
𝑣1
IDE
13 16-11-08
Develop update-specific update code/transformations
Understand automatically covered transformations
Program finalization of transformations
Lusagent DSU Workflow (2)
Martin Alexander Neumann, KIT
𝑣0
𝑣1
Analysis
Stubs for
Update Code
𝑣0 → 𝑣1
Automatic
Transformation
IDE
Update
Code
𝑣0 → 𝑣1
14 16-11-08
Lusagent DSU Workflow (3)
Martin Alexander Neumann, KIT
Run instance of 𝑣0
Install dynamic update to 𝑣1 (on instance of 𝑣0)
DSU System
Update Points
𝑣1
DSU System
Update Points
𝑣0
Update Points
𝑣1
Update Code
𝑣0 → 𝑣1
DSU System
Update Points
𝑣0
1 32
15 16-11-08
Case Study – Message Broker
Martin Alexander Neumann, KIT
Programming effort? Broker performance on update?
16 16-11-08
Features
MQTT 3.1, QoS 0, 1, 2
Persistent sessions
Event-processor, netty.io
IoT Framework
MQTT adapter
Fraunhofer’s SensorThingsServer (OGC SensorThings API), …
Releases
Martin Alexander Neumann, KIT
Moquette – Java MQTT Message Broker
Users
Version Date SLoC Classes
v0.7.0 7/2015 8468 151
v0.8.0 1/2016 9691 166
v0.8.1 2/2016 9670 163
Updates
1 major & 1 minor release
17 16-11-08
Programming Effort – Instrumentation
Martin Alexander Neumann, KIT
Version Date SLoC Classes
v0.7.0 7/2015 8468 151
v0.8.0 1/2016 9691 166
v0.8.1 2/2016 9670 163
Changed
classes
Added
lines
Deleted
lines
3 19 3
2 11 1
same
Add update points (& long-running code interruptable)
4 netty.io event processors 4 update points
Timer (background thread) persisting database
𝑣0.7 uses additional async. ring buffer in reception
18 16-11-08
Update Point Instrumentation
Martin Alexander Neumann, KIT
19 16-11-08
Programming Effort – Update Code
Martin Alexander Neumann, KIT
Version Date SLoC Classes
v0.7.0 7/2015 8468 151
v0.8.0 1/2016 9691 166
v0.8.1 2/2016 9670 163
Transformed
classes
SLOC
16 230
3 28
𝑣0.7 → 𝑣0.8 took about 1 day
20 16-11-08
Update Code – Moquette v0.7 to v0.8
Martin Alexander Neumann, KIT
Field moved
Fields renamed
21 16-11-08
Update Code – Moquette v0.8 to v0.8.1
Martin Alexander Neumann, KIT
Packages changed, last class renamed
Transform
how persisted
messages
are stored
22 16-11-08
Throughput Latency
Martin Alexander Neumann, KIT
Updating Performance
Update while no connections or messages are lost
23 16-11-08
Summary
Web of Things
Common technologies
Updating the infrastructure
Dynamic Software Updating
In-memory updates, generic
Development workflow
Case Study: Moquette MQTT message broker
Programming efforts
Performance properties
Martin Alexander Neumann, KIT

More Related Content

What's hot

QoA4ML – A Framework for Supporting Contracts in Machine Learning Services
QoA4ML – A Framework for Supporting Contracts in Machine Learning ServicesQoA4ML – A Framework for Supporting Contracts in Machine Learning Services
QoA4ML – A Framework for Supporting Contracts in Machine Learning ServicesHong-Linh Truong
 
FIWARE Global Summit - DRACO: Managing the Stream of Context Information Hist...
FIWARE Global Summit - DRACO: Managing the Stream of Context Information Hist...FIWARE Global Summit - DRACO: Managing the Stream of Context Information Hist...
FIWARE Global Summit - DRACO: Managing the Stream of Context Information Hist...FIWARE
 
Michael Hall [InfluxData] | InfluxDB Community Update | InfluxDays EMEA 2021
Michael Hall [InfluxData] | InfluxDB Community Update | InfluxDays EMEA 2021Michael Hall [InfluxData] | InfluxDB Community Update | InfluxDays EMEA 2021
Michael Hall [InfluxData] | InfluxDB Community Update | InfluxDays EMEA 2021InfluxData
 
node.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehne
node.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehnenode.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehne
node.js is made for IoT - node.hh 07/16, Hamburg by Michael KuehneMichael Kuehne-Schlinkert
 
Knot.x - reactive web integration platform
Knot.x - reactive web integration platformKnot.x - reactive web integration platform
Knot.x - reactive web integration platformKnot.x Team
 
OpenNebula Conf 2014 | OpenNebula at Cenatic - Jose Angel Diaz Diaz
OpenNebula Conf 2014 | OpenNebula at Cenatic - Jose Angel Diaz DiazOpenNebula Conf 2014 | OpenNebula at Cenatic - Jose Angel Diaz Diaz
OpenNebula Conf 2014 | OpenNebula at Cenatic - Jose Angel Diaz DiazNETWAYS
 
Sharing Blockchain Performance Knowledge for Edge Service Development
Sharing Blockchain Performance Knowledge for Edge Service DevelopmentSharing Blockchain Performance Knowledge for Edge Service Development
Sharing Blockchain Performance Knowledge for Edge Service DevelopmentHong-Linh Truong
 
DevSecCon London 2018: A Journey to Continuous Cloud Compliance
DevSecCon London 2018: A Journey to Continuous Cloud ComplianceDevSecCon London 2018: A Journey to Continuous Cloud Compliance
DevSecCon London 2018: A Journey to Continuous Cloud ComplianceDevSecCon
 
Lasso context-elicitation-framework- demo
Lasso context-elicitation-framework- demoLasso context-elicitation-framework- demo
Lasso context-elicitation-framework- demoHermann Stern
 
Machine Learning at E*Trade
Machine Learning at E*TradeMachine Learning at E*Trade
Machine Learning at E*TradeElasticsearch
 
Dominik Obermaier and Anja Helmbrecht-Schaar [HiveMQ] | IIoT Monitoring with ...
Dominik Obermaier and Anja Helmbrecht-Schaar [HiveMQ] | IIoT Monitoring with ...Dominik Obermaier and Anja Helmbrecht-Schaar [HiveMQ] | IIoT Monitoring with ...
Dominik Obermaier and Anja Helmbrecht-Schaar [HiveMQ] | IIoT Monitoring with ...InfluxData
 
SAVI-IoT: A Self-managing Containerized IoT Platform
SAVI-IoT: A Self-managing Containerized IoT PlatformSAVI-IoT: A Self-managing Containerized IoT Platform
SAVI-IoT: A Self-managing Containerized IoT PlatformYork University
 
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...FIWARE
 
Privacy Preserving Cloud Storage - A Rollback Protection Service for Untruste...
Privacy Preserving Cloud Storage - A Rollback Protection Service for Untruste...Privacy Preserving Cloud Storage - A Rollback Protection Service for Untruste...
Privacy Preserving Cloud Storage - A Rollback Protection Service for Untruste...LEGATO project
 
Introducing the Open Edge Module
Introducing the Open Edge ModuleIntroducing the Open Edge Module
Introducing the Open Edge ModuleIvan Zoratti
 
Trace your micro-services oriented application with Zipkin and OpenTracing
Trace your micro-services oriented application with Zipkin and OpenTracing Trace your micro-services oriented application with Zipkin and OpenTracing
Trace your micro-services oriented application with Zipkin and OpenTracing Corley S.r.l.
 
The truth about IoT field gateways (Luis Delgado - webinar)
The truth about IoT field gateways (Luis Delgado - webinar) The truth about IoT field gateways (Luis Delgado - webinar)
The truth about IoT field gateways (Luis Delgado - webinar) Codit
 

What's hot (20)

QoA4ML – A Framework for Supporting Contracts in Machine Learning Services
QoA4ML – A Framework for Supporting Contracts in Machine Learning ServicesQoA4ML – A Framework for Supporting Contracts in Machine Learning Services
QoA4ML – A Framework for Supporting Contracts in Machine Learning Services
 
FIWARE Global Summit - DRACO: Managing the Stream of Context Information Hist...
FIWARE Global Summit - DRACO: Managing the Stream of Context Information Hist...FIWARE Global Summit - DRACO: Managing the Stream of Context Information Hist...
FIWARE Global Summit - DRACO: Managing the Stream of Context Information Hist...
 
Michael Hall [InfluxData] | InfluxDB Community Update | InfluxDays EMEA 2021
Michael Hall [InfluxData] | InfluxDB Community Update | InfluxDays EMEA 2021Michael Hall [InfluxData] | InfluxDB Community Update | InfluxDays EMEA 2021
Michael Hall [InfluxData] | InfluxDB Community Update | InfluxDays EMEA 2021
 
node.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehne
node.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehnenode.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehne
node.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehne
 
Knot.x - reactive web integration platform
Knot.x - reactive web integration platformKnot.x - reactive web integration platform
Knot.x - reactive web integration platform
 
OpenNebula Conf 2014 | OpenNebula at Cenatic - Jose Angel Diaz Diaz
OpenNebula Conf 2014 | OpenNebula at Cenatic - Jose Angel Diaz DiazOpenNebula Conf 2014 | OpenNebula at Cenatic - Jose Angel Diaz Diaz
OpenNebula Conf 2014 | OpenNebula at Cenatic - Jose Angel Diaz Diaz
 
Sharing Blockchain Performance Knowledge for Edge Service Development
Sharing Blockchain Performance Knowledge for Edge Service DevelopmentSharing Blockchain Performance Knowledge for Edge Service Development
Sharing Blockchain Performance Knowledge for Edge Service Development
 
DevSecCon London 2018: A Journey to Continuous Cloud Compliance
DevSecCon London 2018: A Journey to Continuous Cloud ComplianceDevSecCon London 2018: A Journey to Continuous Cloud Compliance
DevSecCon London 2018: A Journey to Continuous Cloud Compliance
 
Lasso context-elicitation-framework- demo
Lasso context-elicitation-framework- demoLasso context-elicitation-framework- demo
Lasso context-elicitation-framework- demo
 
Machine Learning at E*Trade
Machine Learning at E*TradeMachine Learning at E*Trade
Machine Learning at E*Trade
 
Dominik Obermaier and Anja Helmbrecht-Schaar [HiveMQ] | IIoT Monitoring with ...
Dominik Obermaier and Anja Helmbrecht-Schaar [HiveMQ] | IIoT Monitoring with ...Dominik Obermaier and Anja Helmbrecht-Schaar [HiveMQ] | IIoT Monitoring with ...
Dominik Obermaier and Anja Helmbrecht-Schaar [HiveMQ] | IIoT Monitoring with ...
 
SAVI-IoT: A Self-managing Containerized IoT Platform
SAVI-IoT: A Self-managing Containerized IoT PlatformSAVI-IoT: A Self-managing Containerized IoT Platform
SAVI-IoT: A Self-managing Containerized IoT Platform
 
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
FIWARE Global Summit - Using ML/AI Techniques with FIWARE and Connected IoT D...
 
Open source industrial IoT
Open source industrial IoTOpen source industrial IoT
Open source industrial IoT
 
Privacy Preserving Cloud Storage - A Rollback Protection Service for Untruste...
Privacy Preserving Cloud Storage - A Rollback Protection Service for Untruste...Privacy Preserving Cloud Storage - A Rollback Protection Service for Untruste...
Privacy Preserving Cloud Storage - A Rollback Protection Service for Untruste...
 
Introducing the Open Edge Module
Introducing the Open Edge ModuleIntroducing the Open Edge Module
Introducing the Open Edge Module
 
IoT
IoTIoT
IoT
 
Trace your micro-services oriented application with Zipkin and OpenTracing
Trace your micro-services oriented application with Zipkin and OpenTracing Trace your micro-services oriented application with Zipkin and OpenTracing
Trace your micro-services oriented application with Zipkin and OpenTracing
 
Realtime traffic monitoring
Realtime traffic monitoringRealtime traffic monitoring
Realtime traffic monitoring
 
The truth about IoT field gateways (Luis Delgado - webinar)
The truth about IoT field gateways (Luis Delgado - webinar) The truth about IoT field gateways (Luis Delgado - webinar)
The truth about IoT field gateways (Luis Delgado - webinar)
 

Viewers also liked

Towards an industrial Web of Things
Towards an industrial Web of ThingsTowards an industrial Web of Things
Towards an industrial Web of ThingsOlivier Liechti
 
A component based architecture for the Web of Things
A component based architecture for the Web of ThingsA component based architecture for the Web of Things
A component based architecture for the Web of ThingsAndreas Ruppen
 
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...Andrei Ciortea
 
WoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of ThingsWoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of ThingsSimon Mayer
 
Enabling reactive cities with the iFLUX middleware
Enabling reactive cities with the iFLUX middlewareEnabling reactive cities with the iFLUX middleware
Enabling reactive cities with the iFLUX middlewareOlivier Liechti
 
Enabling High Level Application Development In The Internet Of Things
Enabling High Level Application Development In The Internet Of ThingsEnabling High Level Application Development In The Internet Of Things
Enabling High Level Application Development In The Internet Of ThingsPankesh Patel
 
IndianaJS - Building spatially aware web sites for the Web of Things
IndianaJS - Building spatially aware web sites for the Web of ThingsIndianaJS - Building spatially aware web sites for the Web of Things
IndianaJS - Building spatially aware web sites for the Web of ThingsTECO Research Group
 
Web of Things presentation - Document Generation
Web of Things presentation - Document GenerationWeb of Things presentation - Document Generation
Web of Things presentation - Document GenerationKIT
 
Thesis Defence: A Model Driven Architecture for the Web of Things
Thesis Defence: A Model Driven Architecture for the Web of ThingsThesis Defence: A Model Driven Architecture for the Web of Things
Thesis Defence: A Model Driven Architecture for the Web of ThingsAndreas Ruppen
 
From Load Forecasting to Demand Response - A Web of Things Use Case
From Load Forecasting to Demand Response  - A Web of Things Use CaseFrom Load Forecasting to Demand Response  - A Web of Things Use Case
From Load Forecasting to Demand Response - A Web of Things Use CaseTill Riedel
 
Service Integration in the Web of Things
Service Integration in the Web of ThingsService Integration in the Web of Things
Service Integration in the Web of ThingsSimon Mayer
 
IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015Jollen Chen
 
A Model-Driven, Component Generation Approach for the Web of Things
A Model-Driven, Component Generation Approach for the Web of ThingsA Model-Driven, Component Generation Approach for the Web of Things
A Model-Driven, Component Generation Approach for the Web of ThingsAndreas Ruppen
 
Maker of Things - the open IoT cloud for makers chapter.
Maker of Things - the open IoT cloud for makers chapter.Maker of Things - the open IoT cloud for makers chapter.
Maker of Things - the open IoT cloud for makers chapter.Jollen Chen
 
Distributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-REDDistributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-REDMichael Blackstock
 
5 Years of Web of Things Workshops
5 Years of Web of Things Workshops5 Years of Web of Things Workshops
5 Years of Web of Things WorkshopsDominique Guinard
 
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.Jollen Chen
 

Viewers also liked (18)

Towards an industrial Web of Things
Towards an industrial Web of ThingsTowards an industrial Web of Things
Towards an industrial Web of Things
 
A component based architecture for the Web of Things
A component based architecture for the Web of ThingsA component based architecture for the Web of Things
A component based architecture for the Web of Things
 
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...
 
WoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of ThingsWoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of Things
 
Enabling reactive cities with the iFLUX middleware
Enabling reactive cities with the iFLUX middlewareEnabling reactive cities with the iFLUX middleware
Enabling reactive cities with the iFLUX middleware
 
Enabling High Level Application Development In The Internet Of Things
Enabling High Level Application Development In The Internet Of ThingsEnabling High Level Application Development In The Internet Of Things
Enabling High Level Application Development In The Internet Of Things
 
Presentation evrythng
Presentation evrythngPresentation evrythng
Presentation evrythng
 
IndianaJS - Building spatially aware web sites for the Web of Things
IndianaJS - Building spatially aware web sites for the Web of ThingsIndianaJS - Building spatially aware web sites for the Web of Things
IndianaJS - Building spatially aware web sites for the Web of Things
 
Web of Things presentation - Document Generation
Web of Things presentation - Document GenerationWeb of Things presentation - Document Generation
Web of Things presentation - Document Generation
 
Thesis Defence: A Model Driven Architecture for the Web of Things
Thesis Defence: A Model Driven Architecture for the Web of ThingsThesis Defence: A Model Driven Architecture for the Web of Things
Thesis Defence: A Model Driven Architecture for the Web of Things
 
From Load Forecasting to Demand Response - A Web of Things Use Case
From Load Forecasting to Demand Response  - A Web of Things Use CaseFrom Load Forecasting to Demand Response  - A Web of Things Use Case
From Load Forecasting to Demand Response - A Web of Things Use Case
 
Service Integration in the Web of Things
Service Integration in the Web of ThingsService Integration in the Web of Things
Service Integration in the Web of Things
 
IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015
 
A Model-Driven, Component Generation Approach for the Web of Things
A Model-Driven, Component Generation Approach for the Web of ThingsA Model-Driven, Component Generation Approach for the Web of Things
A Model-Driven, Component Generation Approach for the Web of Things
 
Maker of Things - the open IoT cloud for makers chapter.
Maker of Things - the open IoT cloud for makers chapter.Maker of Things - the open IoT cloud for makers chapter.
Maker of Things - the open IoT cloud for makers chapter.
 
Distributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-REDDistributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-RED
 
5 Years of Web of Things Workshops
5 Years of Web of Things Workshops5 Years of Web of Things Workshops
5 Years of Web of Things Workshops
 
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
 

Similar to Always-On Web of Things Infrastructure Dynamic Software Updating

“eXtending” the Automation Toolbox: Introduction to TwinCAT 3 Software and eX...
“eXtending” the Automation Toolbox: Introduction to TwinCAT 3 Software and eX...“eXtending” the Automation Toolbox: Introduction to TwinCAT 3 Software and eX...
“eXtending” the Automation Toolbox: Introduction to TwinCAT 3 Software and eX...Design World
 
Elastic Stack @ Swisscom Application Cloud
Elastic Stack @ Swisscom Application CloudElastic Stack @ Swisscom Application Cloud
Elastic Stack @ Swisscom Application CloudLucas Bremgartner
 
Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer De...
Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer De...Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer De...
Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer De...Yoshitake Kobayashi
 
Addressing data plane performance measurement on OpenStack clouds using VMTP
Addressing data plane performance measurement on OpenStack clouds using VMTPAddressing data plane performance measurement on OpenStack clouds using VMTP
Addressing data plane performance measurement on OpenStack clouds using VMTPSuhail Syed
 
DevOps and Magento
DevOps and MagentoDevOps and Magento
DevOps and MagentoAarno Aukia
 
Creating the open source building blocks for IoT
Creating the open source building blocks for IoT Creating the open source building blocks for IoT
Creating the open source building blocks for IoT Ian Skerrett
 
Test Execution Infrastructure for IoT Quality analysis
Test Execution Infrastructure for IoT Quality analysisTest Execution Infrastructure for IoT Quality analysis
Test Execution Infrastructure for IoT Quality analysisAxel Rennoch
 
Spring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonSpring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonVMware Tanzu
 
SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...
SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...
SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...VMware Tanzu
 
Spring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel Lavoie
Spring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel LavoieSpring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel Lavoie
Spring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel LavoieVMware Tanzu
 
【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth
【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth
【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growthシスコシステムズ合同会社
 
Nurturing Business Friendly Open Source Ecosystems
Nurturing Business Friendly Open Source EcosystemsNurturing Business Friendly Open Source Ecosystems
Nurturing Business Friendly Open Source EcosystemsGaël Blondelle
 
Modern CI/CD in the microservices world with Kubernetes
Modern CI/CD in the microservices world with KubernetesModern CI/CD in the microservices world with Kubernetes
Modern CI/CD in the microservices world with KubernetesMikalai Alimenkou
 
November Patch Tuesday Analysis
November Patch Tuesday AnalysisNovember Patch Tuesday Analysis
November Patch Tuesday AnalysisIvanti
 
Pivotal Cloud Foundry 2.6: A First Look
Pivotal Cloud Foundry 2.6: A First LookPivotal Cloud Foundry 2.6: A First Look
Pivotal Cloud Foundry 2.6: A First LookVMware Tanzu
 

Similar to Always-On Web of Things Infrastructure Dynamic Software Updating (20)

“eXtending” the Automation Toolbox: Introduction to TwinCAT 3 Software and eX...
“eXtending” the Automation Toolbox: Introduction to TwinCAT 3 Software and eX...“eXtending” the Automation Toolbox: Introduction to TwinCAT 3 Software and eX...
“eXtending” the Automation Toolbox: Introduction to TwinCAT 3 Software and eX...
 
Open stack nova reverse engineer
Open stack nova reverse engineerOpen stack nova reverse engineer
Open stack nova reverse engineer
 
Elastic Stack @ Swisscom Application Cloud
Elastic Stack @ Swisscom Application CloudElastic Stack @ Swisscom Application Cloud
Elastic Stack @ Swisscom Application Cloud
 
Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer De...
Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer De...Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer De...
Civil Infrastructure Platform: Industrial Grade SLTS Kernel and Base-layer De...
 
Addressing data plane performance measurement on OpenStack clouds using VMTP
Addressing data plane performance measurement on OpenStack clouds using VMTPAddressing data plane performance measurement on OpenStack clouds using VMTP
Addressing data plane performance measurement on OpenStack clouds using VMTP
 
DevOps and Magento
DevOps and MagentoDevOps and Magento
DevOps and Magento
 
Creating the open source building blocks for IoT
Creating the open source building blocks for IoT Creating the open source building blocks for IoT
Creating the open source building blocks for IoT
 
1st RINASim webinar
1st RINASim webinar1st RINASim webinar
1st RINASim webinar
 
Securing DevOps
Securing DevOpsSecuring DevOps
Securing DevOps
 
Test Execution Infrastructure for IoT Quality analysis
Test Execution Infrastructure for IoT Quality analysisTest Execution Infrastructure for IoT Quality analysis
Test Execution Infrastructure for IoT Quality analysis
 
1st RINASim Webinar
1st RINASim Webinar1st RINASim Webinar
1st RINASim Webinar
 
Spring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonSpring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - Boston
 
SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...
SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...
SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...
 
Spring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel Lavoie
Spring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel LavoieSpring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel Lavoie
Spring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel Lavoie
 
【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth
【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth
【Cisco OpenStack Seminar 2015.10.26】 OpenStack as Strategy for future growth
 
Nurturing Business Friendly Open Source Ecosystems
Nurturing Business Friendly Open Source EcosystemsNurturing Business Friendly Open Source Ecosystems
Nurturing Business Friendly Open Source Ecosystems
 
Modern CI/CD in the microservices world with Kubernetes
Modern CI/CD in the microservices world with KubernetesModern CI/CD in the microservices world with Kubernetes
Modern CI/CD in the microservices world with Kubernetes
 
November Patch Tuesday Analysis
November Patch Tuesday AnalysisNovember Patch Tuesday Analysis
November Patch Tuesday Analysis
 
Pivotal Cloud Foundry 2.6: A First Look
Pivotal Cloud Foundry 2.6: A First LookPivotal Cloud Foundry 2.6: A First Look
Pivotal Cloud Foundry 2.6: A First Look
 
Transition scope
Transition scopeTransition scope
Transition scope
 

Recently uploaded

Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 

Recently uploaded (20)

Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 

Always-On Web of Things Infrastructure Dynamic Software Updating

  • 1. KIT – University of the State of Baden-Wuerttemberg and National Research Center of the Helmholtz Association PERVASIVE COMPUTING SYSTEMS, INSTITUTE FOR TELEMATICS, FACULTY OF INFORMATICS www.kit.edu Always-On Web of Things Infrastructure Dynamic Software Updating 2016-11-07, Web of Things Workshop Martin Alexander Neumann, Christoph Tobias Bach, Andrei Miclaus, Till Riedel, Michael Beigl
  • 2. 2 16-11-08 e.g. production control, health monitoring Simplify IoT interoperability Common technologies/ web standards HTTP, REST JSON, JSON-LD WebSockets, CoAP, MQTT Martin Alexander Neumann, KIT Web of Things http://forklog.net/the-way-iot-and-blockchain-change-the-world/
  • 3. 3 16-11-08 Updating the Infrastructure Cloud services and gateways Highly available, real-time communications Maintenance windows, or rolling updates Software updates Low-disruptive rollout of updates and patches But, especially: timely rollout of security patches Martin Alexander Neumann, KIT
  • 4. 5 16-11-08 Ad Hoc Approach enabling … Every update to every installation of a software has to be planned Takes time and effort General At least – approach fits an update to all installations of a SW Better – approach fits all updates to all installations of a SW Dynamic Software Updating Martin Alexander Neumann, KIT Low-Disruptive and Timely Hot/Live Updates Least preferrable with common technologies widely adopted
  • 5. 6 16-11-08 1. Preparation Vendor tailors program to DSU system 2. Installation/Rollout Vendor provides a dynamic update (instead of a regular one) to update any old program instances Martin Alexander Neumann, KIT Goal of Dynamic Software Updating
  • 6. 7 16-11-08 Conventional Update Martin Alexander Neumann, KIT 𝑣0 update stop restart persist data offline 𝑣1 reload data online disruption
  • 7. 8 16-11-08 Transform state in memory → efficient Stop 𝑣0 immediately → timely Transform anything → flexible Use with any software → generic Dynamic Software Updating Martin Alexander Neumann, KIT 𝑣0 DSU offline 𝑣1 online disruption
  • 8. 9 16-11-08 Close classes world and load 𝑣1 Compare 𝑣0 to 𝑣1 for automatic transformation Load update code 𝑣0 → 𝑣1 that finalizes transform. 𝑢𝑛𝑙𝑜𝑎𝑑 𝑣0 𝑙𝑜𝑎𝑑 𝑣1 𝑐𝑜𝑚𝑝𝑎𝑟𝑒 Lusagent DSU Phases – Preparation & Cleanup Martin Alexander Neumann, KIT 𝑣0 DSU offline 𝑣1 online prepare cleanup update
  • 9. 10 16-11-08 Stop all threads, transform state, release threads Properties or onetime instrumentation for safe state Explore entire heap to find and transform objects Lusagent DSU Phases – Update Martin Alexander Neumann, KIT 𝑣1𝑣0 offline online prepare cleanup update 𝑢𝑝𝑑𝑎𝑡𝑒 𝑐𝑜𝑑𝑒 𝑎𝑢𝑡𝑜. 𝑡𝑟𝑎𝑛𝑠𝑓𝑜𝑟𝑚.
  • 10. 12 16-11-08 Develop (one-time) program instrumentation Definition of update points for timely updates Lusagent DSU Workflow (1) Martin Alexander Neumann, KIT Update Points 𝑣0 𝑣1 𝑣0 Update Points 𝑣1 IDE
  • 11. 13 16-11-08 Develop update-specific update code/transformations Understand automatically covered transformations Program finalization of transformations Lusagent DSU Workflow (2) Martin Alexander Neumann, KIT 𝑣0 𝑣1 Analysis Stubs for Update Code 𝑣0 → 𝑣1 Automatic Transformation IDE Update Code 𝑣0 → 𝑣1
  • 12. 14 16-11-08 Lusagent DSU Workflow (3) Martin Alexander Neumann, KIT Run instance of 𝑣0 Install dynamic update to 𝑣1 (on instance of 𝑣0) DSU System Update Points 𝑣1 DSU System Update Points 𝑣0 Update Points 𝑣1 Update Code 𝑣0 → 𝑣1 DSU System Update Points 𝑣0 1 32
  • 13. 15 16-11-08 Case Study – Message Broker Martin Alexander Neumann, KIT Programming effort? Broker performance on update?
  • 14. 16 16-11-08 Features MQTT 3.1, QoS 0, 1, 2 Persistent sessions Event-processor, netty.io IoT Framework MQTT adapter Fraunhofer’s SensorThingsServer (OGC SensorThings API), … Releases Martin Alexander Neumann, KIT Moquette – Java MQTT Message Broker Users Version Date SLoC Classes v0.7.0 7/2015 8468 151 v0.8.0 1/2016 9691 166 v0.8.1 2/2016 9670 163 Updates 1 major & 1 minor release
  • 15. 17 16-11-08 Programming Effort – Instrumentation Martin Alexander Neumann, KIT Version Date SLoC Classes v0.7.0 7/2015 8468 151 v0.8.0 1/2016 9691 166 v0.8.1 2/2016 9670 163 Changed classes Added lines Deleted lines 3 19 3 2 11 1 same Add update points (& long-running code interruptable) 4 netty.io event processors 4 update points Timer (background thread) persisting database 𝑣0.7 uses additional async. ring buffer in reception
  • 16. 18 16-11-08 Update Point Instrumentation Martin Alexander Neumann, KIT
  • 17. 19 16-11-08 Programming Effort – Update Code Martin Alexander Neumann, KIT Version Date SLoC Classes v0.7.0 7/2015 8468 151 v0.8.0 1/2016 9691 166 v0.8.1 2/2016 9670 163 Transformed classes SLOC 16 230 3 28 𝑣0.7 → 𝑣0.8 took about 1 day
  • 18. 20 16-11-08 Update Code – Moquette v0.7 to v0.8 Martin Alexander Neumann, KIT Field moved Fields renamed
  • 19. 21 16-11-08 Update Code – Moquette v0.8 to v0.8.1 Martin Alexander Neumann, KIT Packages changed, last class renamed Transform how persisted messages are stored
  • 20. 22 16-11-08 Throughput Latency Martin Alexander Neumann, KIT Updating Performance Update while no connections or messages are lost
  • 21. 23 16-11-08 Summary Web of Things Common technologies Updating the infrastructure Dynamic Software Updating In-memory updates, generic Development workflow Case Study: Moquette MQTT message broker Programming efforts Performance properties Martin Alexander Neumann, KIT