Build Your Own IoT Platform: Develop a Flexible and Scalable Internet of Things Platform
Anand Tamboli
Résumé
Every solution that is in some way related to the IoT needs a platform; learn how to create that platform with us. This book is about being agile and reducing your time to market without breaking the bank. It is about designing something that can scale incrementally without rework and potentially disrupting the current work.
So, the key questions are: What does it take? How long does it take? And, how much does it take to build your own IoT platform? This book answers these questions and provides you with step-by-step guide to building your own IoT platform.
In this book, the author highlights what the core of an IoT platform looks like. There are always some must-haves and some nice-to-haves. This book distinguishes the two and focuses on building the must-haves. Building your IoT platform is not only the most significant cost-saver but can also be a satisfying learning experience. This edition will extend your work with a sample project to clarify the concepts and show you the possibilities. Additional chapters will also shed some light on the hardware interface and considerations.
What You Will Learn
* Master how to architect an interconnected system and develop a flexible platform architecture
* Understand how to prioritize system requirements with a bottom-up approach
* Design and build a robust IoT communications platform
* Create an end-to-end application using guidelines in this book
Who Is This Book For
IoT developers with basic-to-intermediate programming skills, small business owners, as well as entrepreneurs and startup founders would benefit from this book
-
Chapter 1: So... You Want to Build Your Own!
* The Background of IoT and Our Focus
* How Many Platforms Are Out There?
* Platforms Supporting Network Servicing
* Platforms Sitting Between Networks and Applications
* Application-Layer Development Platforms
* What Should a Good IoT Platform Have?* Why Should You Build Your Own IoT Platform?
* Summary
Chapter 2: The Building Blocks of an IoT Solution
* The Functional Blocks of an IoT Solution
* The Detailed Block Diagram of an IoT Platform
* Is Everything from this Block Architecture Mandatory?
* What Is the Proposed Approach?* Summary
Chapter 3: The Essentials for Building Your Own Platform
* Deciding Cloud Instance Specifics
* Additional Specifications
* Where Do We Get this Cloud Instance?
* What About Our Own Machine?
* Expanding on the IoT Platform Block Diagram
* Edge Interface, Message Broker, and Message Bus
* Message Router and Communications Management* Time-Series Storage and Data Management
* REST API Interface
* Microservices
* Rule Engine
* Device Manager and Application Manager
* Our Own IoT Platform Block Diagram
* Summary
Chapter 4: Let's Create Our Platform Wish List
* Connecting with the Platform in Real Time
* Using MQTT as the Message Broker
* How Do We Want to Store the Data?
* Data Storage Schema
* Accessing Platform Resources Through APIs
* Data Accessing APIs
* Elementary Microservices and Utilities
* Routing and Filtering Data and Messages
* Updated Block Diagram of Our IoT Platform
* Summary
* Initializing the Cloud Instance
* Register and Create
* Choosing an Operating System Image
* Choosing the Size
* Choosing a Datacenter Region
* Finalizing and Creating the Instance
* Connecting to Our Cloud Instance
* Installing Basic Software Stacks
* Installing Apache
* Installing MySQL
* Installing PHP
* Securing the Instance and Software
* It's Easier with a Domain Name
* Add Virtual Hosts to Our Web Server
* Installing SSL Certificates
* Installing Node.js and Node-RED
* Modifying Node-RED Settings
* Securing our Node-RED Editor
* Summary
Chapter 6: The Message Broker
* What Is MQTT?
* Publish and Subscribe Paradigm
* Other Features of a Message Broker and MQTT
* Quality of Service
* Keep Alive Period
* Last Will and Testament
* The Retained Message
* The Best Part: WebSocket
* Are We Using the Best Message Broker Option?
* When to Utilize a Message Broker and When Not To
* Installing a Message Broker
* Securing a Message Broker
* Summary
Chapter 7: Building the Critical Components
* Creating a Time-Series Core Database
* Installing Required Nodes in Node-RED
* Creating First Flow for Our Platform
* Adding MQTT Publish Capability
* REST API Message Publisher
* Creating the Database Listener
* REST API Message Retriever
* Verifying that Everything Is Working as Expected
* Running Node-RED in the Background Continuously
* Summary
* The Difference Between WebSocket and Normal MQTT
* Why Is WebSocket Important?
* Adding WebSocket to Our MQTT Configuration
* Testing WebSocket
* Let's Add User Access Controls
* Let's Check If This Is Working
* Using the Forever Tool with the Message Broker
* Summary
* Data Access APIs
* Adding Time-Based Filters
* Data Deletion APIs
* Removing Data Records Completely
* Adding Microservices to the Platform
* Getting the Current Timestamp
* Random Code Generator
* Adding New Modules to Node-RED
* UUID Generator
* Email and Text Message Microservice APIs
* Configuration of Nodes
* SMS Sending Utility
* Email-Sending Utility
* Summary
* Start with the Rule Engine Logic
* Creating a Database
* Building the Flow Sequence
* Testing the Rule Engine
* Rule Management APIs
* Enable and Disable a Specific Rule
* Enable and Disable All Rules
* Create a New Rule
* Building Another Rule Engine with Node-RED
* Adding Authentication to the Data API
* What Are Our Options?
* What Is the Plan?
* Adding Authentication Middleware
* Enable and Test Authentication
* Our Core Platform Is Ready Now
* Summary
Chapter 11: Documentation and Testing
* Preparing a Valid OpenAPI Specification Document
* Platform API Specification File Explained
* Preparing Distribution Package for Final Upload
* Upload API Docs and Make It Live
* Authorize and Test API
* Summary
* Why learn hardware alongwith IoT platform?
* Available hardware options
* Creating bespoke designs
* Choosing the best option for your project
* Connectivity options and suitability for project
* Various topologies and arrangementsThe "why" behind each topology and arrangement
* Connecting our hardware to the platform
Two possible modeso Using REST API
o Using MQTT
o Can you use both? Why and when?
Requirements for each mode
o Circuit specific
o Firmware specific
How to incorporate them in hardware
o Circuit specific
o Firmware specific
* Other considerations for connecting the hardware
* Summary
* Backstory of better mousetrap case study
How I got this opportunity
What does "better" mean?
How I decided to approach this problem
Importance of top-down approach* System architecture
High level system design process
Block diagram and explanation* Hardware selection
What are different scenarios
What are potential optionsWhat is on our shortlist
* Connectivity choice
What are different scenarios
What are potential options
What is on our shortlist* Front-end application
What are different scenarios
What are potential optionsWhat is on our shortlist
* Hardware arrangement
Hardware construction (overview)
How it works
Testing the hardware* Backend buildup on the platform
What additions we need on the platform side
How to build them (details)Testing the backend
* Dashboard for visualization
Building a basic dashboard
How to pool the data
* Additional services I built in the mousetrap application
Workflow for CRM
Client alert mechanism
Operator SchedulingCompliance reporting
Machine learning provision for intelligent pest management
Other business benefits
* Project takeaways - real life and for you (as a reader)
* Summary
* What do I mean by unlimited possibilities?
* Why is this platform so capable?
* Five ideas you can work on
One button - based on my 1btn project
o The concept
o Block diagram
o Key ideas and things to work on
o Potential applications
Smart street lamps
o The concept
o Block diagram
o Key ideas and things to work on
o Potential applications
Council garbage collection management
o The concept
o Block diagram
o Key ideas and things to work on
o Potential applications
Datacenter climate control
o The concept
o Block diagram
o Key ideas and things to work on
o Potential applications
People counter for Covid-19 gathering compliance in shops & stores
o The concept
o Block diagram
o Key ideas and things to work on
o Potential applications
* Summary
* Increasing Security for the Cloud Instance
* What About SQL Injection Through APIs?
* Should We Have Used MongoDB Instead of MySQL?
* Some Experts Might Still Try to Talk You Out of This
* How Is Our Platform Different from AWS, Google, and Azure?
* There Is a New Version of MQTT* My Platform Is Ready. Now What?
* The Next Big Thing
* If You Need to Find More Resources
* Finally
Anand is an award-winning author, innovator, professional speaker, and futurist. A sought-after thought leader, he helps people adapt, leverage technology, and transform with the power of creativity and innovation.
Anand specializes in areas that intersect technology and people. As a technology, innovation, and transformation specialist, he is well-known for bringing ideas and strategies to life.
Being a polymath, he often sheds new light on a topic you think is "done to death." Having worked with several Fortune 500 multinationals for the past two decades, he has cross-industry, multi-cultural experience.
Caractéristiques techniques
PAPIER | |
Éditeur(s) | Apress |
Auteur(s) | Anand Tamboli |
Parution | 26/03/2022 |
Nb. de pages | 215 |
EAN13 | 9781484280720 |
Avantages Eyrolles.com
Consultez aussi
- Les meilleures ventes en Graphisme & Photo
- Les meilleures ventes en Informatique
- Les meilleures ventes en Construction
- Les meilleures ventes en Entreprise & Droit
- Les meilleures ventes en Sciences
- Les meilleures ventes en Littérature
- Les meilleures ventes en Arts & Loisirs
- Les meilleures ventes en Vie pratique
- Les meilleures ventes en Voyage et Tourisme
- Les meilleures ventes en BD et Jeunesse