Project Background
-
Provide a complete set of commissioning scheme for IoT equipment, including equipment management, MQTT server management, customer management and other functions, to help equipment operators simplify the commissioning process. -
The self-developed Nmqs communication layer component realizes the encryption of connection information and ensures the security of data transmission. -
Provide high-performance, stable and reliable services to meet the commissioning and management requirements of large-scale IoT equipment. -
Open source projects attract more developers to participate in and contribute to the development of the debugging field of the Internet of Animals.
Technical selection
1. System environment
-
Java 8 -
Servlet 3.0 -
Apache Maven 3
2. Main frame
-
Spring Boot 2.7.x -
Spring Framework 5.3.x -
Spring MVC 5.3.x
3. Persistence layer
-
Mybatis 3.5.x -
Alibaba Druid 1.2.x -
Hibernate Validation 6.0.x -
Java MySQL Connector 8.0.x
4. View layer
-
Thymeleaf 3.x -
Bootstrap 5.x -
Layui 2.x
5. Tools
-
Apache Commons -
Hutool 5.x
6. Communication layer
-
Nmqs implements connection information encryption and message forwarding, and supports WS/TCP protocol connections -
Eclipse Paho
Project Structure
cn.mmanager ☆ mm common//tool class ││ -- annotation//Custom annotation ││ -- constant//General constant │ L -- core//core control │← - enums//Universal enumeration │ L -- exception//General exception ☆ mm framework//framework core │ L -- aspectj//Annotation implementation │ L -- interceptor//interceptor │ L -- manager//Asynchronous processing ││ -- web//front-end control ▄ -- mm web//Web service ☆ mm dao//Data access layer ☆ mm service//business layer ☆ mm model//model
Communication layer
_ _ __ __ ____ _____ | \\ | | \\/ |/ __ \\ / ____| | \\| | \\ / | | | | (___ | . ` | |\\/| | | | |\\___ \\ | |\\ | | | | |__| |____) | |_| \\_|_| |_|\\___\\_\\_____/
-
**Connection information encryption: * * Nmqs uses advanced encryption algorithms to encrypt the connection information between devices and servers. This can ensure data security in the communication process and prevent information from being stolen or tampered with. -
**Security authentication: * * Nmqs provides a security authentication mechanism to ensure that only authorized devices and servers can establish connections. By means of authentication and key exchange, the identity legitimacy and communication security of both sides of the communication are ensured. -
**Data compression and optimization: * * Nmqs supports data compression and optimization technology, which can compress data during transmission, reduce bandwidth occupation and transmission delay of data transmission, and improve communication efficiency. -
**Reliability assurance: * * Nmqs has a reliability assurance mechanism that can handle data loss, retransmission and error handling during communication. It adopts reliable transmission protocol to ensure the integrity and reliability of data. -
**Adaptability and flexibility: * * Nmqs communication layer components have good adaptability and flexibility, and can adapt to different network environments and device types. It supports a variety of communication protocols and network transmission modes, and can adapt to different debugging scenarios of IoT devices.
Open source address
Issues & Pull Requests
Author Introduction
-
Name: NicholasLD -
Full stack development engineer, IoT enthusiast -
Member of Dromara Open Source Organization, author of dromara/WeMQ
-
Email: 878639947@qq.com -
WeChat: NicholasLD505