Treffer: Exploring dynamic RESTful API implementation in IoT environments using Docker.

Title:
Exploring dynamic RESTful API implementation in IoT environments using Docker.
Authors:
Mabotha E; Department of Electrical and Electronic Technology, University of Johannesburg, Johannesburg, South Africa., Mabunda NE; Department of Electrical and Electronic Technology, University of Johannesburg, Johannesburg, South Africa., Ali A; Department of Electrical and Electronic Technology, University of Johannesburg, Johannesburg, South Africa., Khan B; Department of Electrical and Electronic Technology, University of Johannesburg, Johannesburg, South Africa. baseem.khan04@gmail.com.; Department of Electrical and Computer Engineering, Hawassa University, Hawassa, Ethiopia. baseem.khan04@gmail.com.; Center for Research on Microgrids (CROM), Huanjiang Laboratory, Zhuji, China. baseem.khan04@gmail.com.
Source:
Scientific reports [Sci Rep] 2025 Oct 01; Vol. 15 (1), pp. 34267. Date of Electronic Publication: 2025 Oct 01.
Publication Type:
Journal Article
Language:
English
Journal Info:
Publisher: Nature Publishing Group Country of Publication: England NLM ID: 101563288 Publication Model: Electronic Cited Medium: Internet ISSN: 2045-2322 (Electronic) Linking ISSN: 20452322 NLM ISO Abbreviation: Sci Rep Subsets: PubMed not MEDLINE; MEDLINE
Imprint Name(s):
Original Publication: London : Nature Publishing Group, copyright 2011-
References:
Fielding, R. T. Architectural styles and the design of network-based software architectures. Doctoral dissertation, University of California, Irvine (2000).
Richardson, L. & Ruby, S. RESTful Web Services (O’Reilly Media Inc., 2007).
Merkel, D. Docker: Lightweight Linux containers for consistent development and deployment. Linux J. 2014(239), 2–11 (2014).
Mehta, B. RESTful Java Patterns and Best Practices (Packt Publishing, 2014).
Daigneau, R. Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services (Addison-Wesley Professional, 2011).
Shaikh, N. et al. Application of RESTful APIs in IOT: A review. Int. J. Res. Appl. Sci. Eng. Technol. 9, 1022214 (2021).
Crockford, D. (2006). JSON: The fat-free alternative to XML. in Proceedings of XML 2006 (pp. 1–1). Boston, USA. Retrieved from http://www.json.org/fatfree.html (2006).
Mulloy, B. Web API design: Crafting interfaces that developers love (2012).
Vinoski, S. RESTful web services development checklist. IEEE Internet Comput. 12(6), 94–96 (2008). (PMID: 10.1109/MIC.2008.130)
Montenegro, H. & Gómez, J. Building APIs with Python and FastAPI (Apress, 2020).
Ramírez, S. FastAPI documentation. Retrieved from https://fastapi.tiangolo.com/ (2024).
Lathkar, M. High-Performance Web Apps with FastAPI: The Asynchronous Web Framework Based on Modern Python (Packt Publishing, 2021).
Richardson, L. & Amundsen, M. RESTful Web APIs: Services for a Changing World (O’Reilly Media, Inc., 2013).
Stopford, B. Designing Event-Driven Systems (O’Reilly Media, 2018).
Pautasso, C., Zimmermann, O., & Leymann, F. (2008, April). RESTful web services vs. “big” web services: Making the right architectural decision. in Proceedings of the 17th International Conference on World Wide Web (pp. 805–814) (2008).
Gadge, S., & Kotwani, V. Microservice architecture: API gateway considerations. GlobalLogic Organisations, 11 (2017).
Zhao, J. T., Jing, S. Y. & Jiang, L. Z. Management of API gateway based on micro-service architecture. J. Phys. Conf. Ser. 1087(3), 032032 (2018). (PMID: 10.1088/1742-6596/1087/3/032032)
Ed-Douibi, H., Izquierdo, J. L. C. & Cabot, J. Automatic generation of test cases for REST APIs: A specification-based approach. in 2018 IEEE 22nd International Enterprise Distributed Object Computing Conference (EDOC) (pp. 181–190). https://doi.org/10.1109/EDOC.2018.00031 (2018).
Hartig, O., & Pérez, J. Semantics and complexity of GraphQL. in Proceedings of the 2018 World Wide Web Conference (WWW ‘18) (pp. 1155–1164). Lyon, France (2018).
Quiña-Mera, A., Fernandez, P., García, J. M. & Ruiz-Cortés, A. GraphQL: A systematic mapping study. ACM Comput. Surv. 55(10), 1–35 (2023). (PMID: 10.1145/3561818)
Pamadi, V. N., Chaurasia, A. K. & Singh, T. Comparative analysis of gRPC vs. ZeroMQ for fast communication. Int. J. Emerg. Technol. Innov. Res. 7(2), 937–951 (2020).
Chamas, C. L., Cordeiro, D. & Eler, M. M. Comparing REST, SOAP, Socket and gRPC in computation offloading of mobile applications: An energy cost analysis. in Proc. 2017 IEEE 9th Latin-American Conf. Commun. (LATINCOM), pp. 1–6 (2017).
Anderson, J. & Brown, S. Containerization in API testing: Leveraging Docker for efficient and scalable test environments. IEEE Softw. 37(1), 24–31. https://doi.org/10.1109/MS.2019.2938127 (2020). (PMID: 10.1109/MS.2019.2938127)
Niswar, M., Safruddin, R. A., Bustamin, A. & Aswad, I. Performance evaluation of microservices communication with REST, GraphQL, and gRPC. Int. J. Electron. Telecommun. 70(2), 429–436 (2024). (PMID: 10.24425/ijet.2024.149562)
Flask, “Welcome to Flask,” Flask Documentation. [Online]. Available: https://flask.palletsprojects.com/.
FastAPI, “FastAPI – The fast web framework for building APIs with Python 3.7+,” [Online]. Available: https://fastapi.tiangolo.com/.
Django, “Django Web Framework,” [Online]. Available: https://www.djangoproject.com/.
Felter, W., Ferreira, A., Rajamani, K. & Rubio, J. An updated performance comparison of virtual machines and Linux containers. in 2015 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS) (pp. 171–172) (2015).
Kunda, D., Chihana, S., & Sinyinda, M. Web server performance of apache and Nginx: A systematic.
Pahl, C. Containerization and the paas cloud. IEEE Cloud Comput. 2(3), 24–31 (2015). (PMID: 10.1109/MCC.2015.51)
Newman, S. Building Microservices: Designing Fine-Grained Systems (O’Reilly Media, Inc., 2015).
Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P. Berners-Lee, T. RFC 2616: Hypertext Transfer Protocol—HTTP/1.1. Retrieved from http://tools.ietf.org/html/rfc2616 (1999).
Higginbotham, J. The Principles of API Design (O’Reilly Media, Inc., 2018).
Voron, F. Building Data Science Applications with FastAPI: Develop, manage, and deploy efficient machine learning applications with Python (Packt Publishing Ltd., 2023).
Makris, A., Tserpes, K., Spiliopoulos, G., Zissis, D. & Anagnostopoulos, D. MongoDB Vs PostgreSQL: A comparative study on performance aspects. GeoInformatica 25, 243–268 (2021). (PMID: 10.1007/s10707-020-00407-w)
Stonebraker, M., Rowe, L. & Wong, E. The design of POSTGRES. in Proceedings of the 1986 ACM SIGMOD International Conference on Management of Data, 340–355 (2007).
Docker Documentation. (n.d.). Docker Compose Overview. Retrieved from https://docs.docker.com/compose/ .
Gkatziouras, E. A Developer’s Essential Guide to Docker Compose: Simplify the Development and Orchestration of Multi-container Applications (Packt Publishing Ltd., 2022).
Smith, R. Docker Orchestration (Packt Publishing Ltd., 2017).
Contributed Indexing:
Keywords: API; Deployment; Docker; Interface; IoT; RESTful
Entry Date(s):
Date Created: 20251001 Latest Revision: 20251004
Update Code:
20251004
PubMed Central ID:
PMC12488872
DOI:
10.1038/s41598-025-16460-0
PMID:
41034553
Database:
MEDLINE

Weitere Informationen

Effective deployment solutions are essential for maximizing the capabilities of Internet of Things (IoT) devices and platforms. This study proposes a technique for enhancing the management, monitoring, and deployment of Internet of Things (IoT) devices, focusing on Dynamic RESTful APIs and Docker technologies. The suggested framework emphasizes reliable interaction and real-time flexibility between IoT devices and deployment infrastructures via a Dynamic RESTful API, combined with the deployment convenience given by Docker's lightweight containerization. The framework's applicability in real-world contexts was tested using an ESP8266 NodeMCU microcontroller and Raspberry Pi, both coupled with DHT11 sensor used to measure temperature and humidity readings. The devices' own ability to interact via built-in Wi-Fi, which enables data transfer and storage via HTTP requests, demonstrates the framework's usefulness in managing and deploying IoT devices. Furthermore, the API's dynamic nature, which allows for endpoint updates without requiring software modifications, provides an important feature for adaptive device behavior, solving key difficulties in IoT deployment, such as scalability and environmental condition changes. The results highlight the dynamic API's broad application and adaptability across various IoT devices, demonstrating its flexibility. This work adds to the body of knowledge on effective IoT deployment techniques while also laying the groundwork for future industry developments by establishing a framework for managing and deploying IoT devices.
(© 2025. The Author(s).)

Declarations. Competing interests: The authors declare no competing interests. GitHub Repository: The GitHub repository has been fully populated with source code, documentation, and supporting materials. It is accessible here: https://github.com/Ebenhezer/dynamic_rest/