Use microservices and containers to 'contain' the IoT beast
From a software developer and tester perspective, there's nothing easy about the internet of things. How do you handle something that might not be online or have a user interface, not to mention is endlessly reinventing itself?
Surprisingly, one answer might be the use of two relatively new and increasingly popular, but rather prosaic, technologies -- containers and microservices. Many organizations are up to speed on how to take advantage of containers and microservices, so it makes sense to utilize these tools to help with the uncharted waters that IoT represents.
Let's start with the humble container, which allows a developer or tester to take an application and strip it down so it can be run virtually on a wide variety of operating systems. That's not only an improvement on virtual machines, but also a way to easily create, manage and test parts of applications without moving or provisioning them. So it's easy to see why -- from an IoT perspective, where things aren't so straightforward -- containers could solve a host of application development challenges. The trick, of course, is to be both thoughtful and creative when using them.
Microservices are also vital to the IoT development challenge. They allow an application to be divided into single pieces. And when it comes to IoT, the smaller the piece, the easier it is to develop, manage and test. Also, microservices, in conjunction with containers, can help make an IoT application "immutable" or more secure. Since so many IoT devices are out in the wild, security is an ongoing challenge, and using containers and microservices will help breach that gap.
This handbook will examine how to take advantage of containers and microservices to gain solid footing in the wild world of IoT.