High-performance network rtk positioning data broadcasting method and system

By combining the Netty framework, Redis database, and RocketMQ, the problems of low data transmission efficiency and inflexible permission management in network RTK positioning data broadcasting are solved, achieving high-performance positioning data broadcasting and improving the system's real-time performance and scalability.

CN120935248APending Publication Date: 2025-11-11齐鲁空天信息研究院
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202511132968.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-13
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

Existing network RTK positioning data broadcasting methods suffer from problems such as low data transmission efficiency, high server load, and inflexible user permission management, which limit their promotion in large-scale applications.

Method used

By combining the Netty framework with the Redis database and using RocketMQ for user permission management and service expiration monitoring, we can achieve efficient distributed data transmission and automated resource management.

Benefits of technology

It improves the real-time performance and accuracy of location data, enables flexible user access control and efficient location data transmission, and adapts to the scalability needs of future business development.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120935248A_ABST
    Figure CN120935248A_ABST
Patent Text Reader

Abstract

The invention discloses a high-performance network rtk positioning data broadcasting method and system, and belongs to the technical field of satellite navigation positioning. The method comprises the following steps: constructing a server based on a Netty framework, wherein the server is used for processing a connection request and data transmission of a client; configuring a Redis database to store network rtk positioning data, and taking the data as back-end storage of the Netty server; establishing a message queue service by using Rocket MQ, wherein the message queue service is used for processing messages of user permission verification and service deadline check; and when the client requests for connection, the user permission is verified through the Rocket MQ authentication operation, after the verification is passed, the Netty server establishes connection, retrieves the nearest network RTK positioning data in the Redis database by adopting a grid method according to the user coordinates and sends the nearest network RTK positioning data to the user. According to the invention, distributed efficient data transmission and automatic resource management are realized, and the performance and reliability of the whole system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of satellite navigation and positioning technology, specifically relating to a high-performance network RTK positioning data broadcasting method and system. Background Technology

[0002] Network RTK, also known as base station RTK, is a new technology developed based on conventional RTK and differential GPS. It establishes multiple base stations within a region to form a network coverage and transmits observation data to a data processing center in real time via a data communication link, ultimately providing high-precision real-time positioning services.

[0003] With the development of precise positioning technology, network RTK positioning has been widely used in surveying, agriculture, autonomous driving and other fields due to its high accuracy. However, existing network RTK positioning data broadcasting methods suffer from problems such as low data transmission efficiency, high server load, and inflexible user permission management, which limit their promotion in large-scale applications. Summary of the Invention

[0004] To address the aforementioned technical issues, this invention provides a high-performance network RTK positioning data broadcasting method and system. By combining the Netty framework with a Redis database and leveraging RocketMQ for user permission management and service duration monitoring, it achieves distributed, efficient data transmission and automated resource management, thereby improving the overall system performance and reliability.

[0005] To achieve the above objectives, the technical solution adopted by the present invention is as follows:

[0006] In a first aspect, the present invention provides a high-performance network RTK positioning data broadcasting method, the method comprising:

[0007] Step 1: Build a server based on the Netty framework to handle client connection requests and data transmission;

[0008] Step 2: Configure a Redis database to store network RTK location data and use it as the backend storage for the Netty server;

[0009] Step 3: Build a message queue service using RocketMQ to handle messages for user permission verification and service expiration checks;

[0010] Step 4: When a client requests a connection, the user's permissions are verified through RocketMQ authentication. After successful verification, the Netty server establishes a connection, retrieves the nearest network RTK location data from the Redis database using a grid method based on the client's coordinates, and sends it to the user. At the same time, RocketMQ monitors the service period and automatically disconnects the connection upon expiration.

[0011] Secondly, this invention provides a high-performance network RTK positioning data broadcasting system, comprising:

[0012] The Netty module is used to build servers based on the Netty framework, which handle client connection requests and data transmission.

[0013] The Redis module is used to configure a Redis database to store network RTK location data and to serve as the backend storage for the Netty server.

[0014] The RocketMQ module is used to build a message queue service using RocketMQ, and is used to handle messages for user permission verification and service expiration checks.

[0015] The implementation module is used to verify user permissions through RocketMQ authentication when a client requests a connection. After successful verification, the Netty server establishes a connection, retrieves the nearest network RTK location data from the Redis database using a grid method based on the client user's coordinates, and sends it to the user. At the same time, it monitors the service period through RocketMQ and automatically disconnects the connection when the service expires.

[0016] Thirdly, the present invention provides an electronic device, comprising: one or more processors; and a memory for storing one or more programs; wherein, when the one or more programs are executed by the one or more processors, the one or more processors implement the aforementioned high-performance network RTK positioning data broadcasting method.

[0017] Fourthly, the present invention provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, enable the processor to implement the aforementioned high-performance network RTK positioning data broadcasting method.

[0018] The beneficial effects of this invention are as follows:

[0019] Real-time performance and accuracy: By connecting to Redis via Netty, the latest RTK location data can be obtained in a timely manner, ensuring the real-time performance and accuracy of the location.

[0020] Access control: The message queue mechanism implemented using RocketMQ allows for flexible and scalable management of user permissions, improving system security; based on the message publish / subscribe transport protocol, it enables efficient transmission of location data in a distributed system; and based on a fast authentication mechanism, it enables secure and efficient access to services for massive numbers of users.

[0021] Recent location data acquisition: Retrieve the nearest location data to the user from the Redis database using a grid method to ensure that the user receives the most accurate and real-time data;

[0022] Automatic disconnection: By sending service expiration information to RocketMQ, timely management of user service account status is achieved, ensuring that users can use services within the legal period;

[0023] Scalability: The system adopts a modern technical architecture, making it more scalable and adaptable to the needs of future business development. Attached Figure Description

[0024] Figure 1 This is a flowchart of a high-performance network RTK positioning data broadcasting method according to the present invention;

[0025] Figure 2 Diagram of Redis caching tier strategy;

[0026] Figure 3 This is a schematic diagram of a RocketMQ dual-master dual-slave deployment scheme.

[0027] Figure 4 Diagram of a multi-level storage architecture. Detailed Implementation

[0028] The present invention will be further described below with reference to the accompanying drawings and embodiments.

[0029] This method represents the first attempt to integrate Netty, Redis, and RocketMQ to broadcast network RTK location data. Figure 1 The diagram shown is a flowchart of a high-performance network RTK positioning data broadcasting method according to the present invention, which specifically includes:

[0030] Step 1: Build a server based on the Netty framework to handle client connection requests and data transmission. Netty's non-blocking I / O model ensures high concurrency processing capabilities. A master-slave Reactor thread model is used, with the master thread group handling TCP connection requests. Two threads are configured; insufficient threads will lead to connection request backlog, while excessive threads will waste resources. Stress testing shows that two threads can handle 10,000+ concurrent connection requests. The worker thread group handles I / O read / write, with eight threads. Proper configuration maximizes CPU resource utilization and avoids thread context switching overhead. Stress testing shows it can support 20,000+ concurrent connections. A heartbeat mechanism is established, using IdleStateHandler to implement a 15-second idle detection (a 15-second timeout increases the number of connections maintained by a single server by 300% and reduces memory usage by 45%). Connections are automatically disconnected after the timeout to release resources.

[0031] Step 2: Configure a Redis database to store network RTK location data and use it as the backend storage for the Netty server, such as... Figure 2 As shown, an AOF persistence strategy is adopted. New data is first written to the Netty server's memory cache and then asynchronously saved to Redis. Redis periodically archives data to disk. When retrieving data, the archived data is loaded into Redis. The client idle timeout is set to 300 seconds to release idle connections and reduce memory usage. The periodic client keepalive check (tcp-keepalive) is changed from 300 seconds to 60 seconds to quickly detect dead connections, accelerating failover by 5 times. The expiration cleanup frequency (hz) is increased from 10 to 50, improving data timeliness. The Redis caching mechanism can greatly improve access speed.

[0032] Step 3: Build a message queue service using RocketMQ to handle messages for user permission verification and service expiration checks. It is also used to record user request logs and location data distribution records, and periodically archive log data to a distributed file system to support subsequent auditing and performance analysis.

[0033] A cluster architecture is adopted: NameServer + Broker dual-master dual-slave deployment, such as... Figure 3As shown, the NameServer cluster has two master routing nodes, Broker1 and Broker2. The NameServer registry establishes a long-lived connection with the Brokers. The master nodes are responsible for writing data, and each master node contains two Broker slave nodes. The master nodes synchronize data to the slave nodes, and the slave nodes are mainly responsible for reading. The parameter brokerRole is set to SYNC_MASTER, adopting a master-slave synchronous mode to ensure zero data loss. The flushDiskType is set to ASYNC_FLUSH, using asynchronous flushing, which improves write performance by 5 times. A failure may result in the loss of 1 second of data. The number of sending threads, sendMessageThreadPoolNums, is set to 32 to improve concurrency and handle messages for user authorization verification and service expiration checks. Given the message characteristics of Rocket, it can effectively solve system crashes and message loss caused by large-volume message requests; Figure 4 The diagram illustrates the message storage and processing flow in RocketMQ. Message producers write messages to the system, initially in an in-memory page cache to improve write performance. The system periodically persists messages in batches from memory to the CommitLog file on disk, ensuring no data loss. The system asynchronously builds a ConsumeQueue, a lightweight index structure used to accelerate message retrieval by topic and queue for consumers. Expired messages are periodically cleaned up to free up storage space. Some data may be archived to long-term storage for later querying or auditing.

[0034] Step 4: When a client requests a connection, the message is sent to the server via RocketMQ, and authentication is performed to verify user permissions. After successful authentication, the server establishes a connection with the Netty server and transmits the user information to the Netty server. Then, the Netty server uses a grid method to retrieve the nearest network RTK location data from the Redis database based on the user's coordinates and returns it to the server. This network RTK location data is then sent to the user via RocketMQ. Simultaneously, the server monitors the user's service period and automatically sends a disconnection notification via RocketMQ upon expiration, at which point Netty disconnects the connection. Specifically:

[0035] The client initiates a request, and RocketMQ authentication verifies whether the user has permission to obtain network RTK location data. After successful authentication, the Netty server establishes a connection and obtains the user's coordinates based on the transmitted user information. Then, it uses a grid method to retrieve the nearest network RTK location data to the user from the Redis database. The Netty server sends the selected nearest network RTK location data to the user via RocketMQ, achieving accurate and efficient data delivery. When the client coordinates are divided into uniform regions using the grid method, a dynamic grid adjustment strategy is adopted to optimize the grid size in real time based on the client distribution density. This ensures that high-density areas have finer grids to improve data retrieval accuracy, while low-density areas have merged grids to reduce computational overhead.

[0036] The server monitors in real time whether the server purchased by the user has expired. Once it expires, it will automatically send a service expiration message to the Netty server via RocketMQ. After receiving the service expiration message, the Netty server will immediately disconnect from the user and stop data transmission.

[0037] Example

[0038] In precision agriculture, unmanned tractors require high-precision positioning data to enable autonomous driving and precise seeding, fertilization, and irrigation. Traditional positioning methods have low accuracy and cannot meet the needs of precision agriculture. This embodiment will demonstrate how to utilize the high-performance network RTK positioning data broadcasting system of the present invention to provide high-precision, real-time positioning data support for agricultural machinery.

[0039] Hardware Environment: Multiple base stations are deployed in the agricultural operation area to form a network RTK base station network. One high-performance server is configured as a Netty server to handle client connection requests and data transmission; one server is configured as a Redis database server to store network RTK positioning data; two servers are configured as RocketMQ message queue service nodes, using a cluster architecture to ensure high availability; agricultural machinery is equipped with terminal devices that support network RTK positioning as clients.

[0040] Software environment: The Netty server runs a network RTK location data broadcasting service developed based on the Netty framework; the Redis database runs a Redis service for storing and retrieving network RTK location data; the RocketMQ message queue runs a RocketMQ service for processing user permission verification and service expiration checks; and the client devices run software clients that support the reception of network RTK location data.

[0041] Implementation steps:

[0042] System initialization: Start the Netty server and configure connections to the Redis database and RocketMQ message queue. Start the Redis database service and load network RTK location data. Start the RocketMQ message queue service and configure the relevant parameters for user permission verification and service expiration checks.

[0043] Client connection request: The terminal device (client) of agricultural machinery sends a connection request to the Netty server via the network; after receiving the request, the Netty server forwards the request to the RocketMQ message queue for user permission verification; the RocketMQ message queue verifies whether the client has permission to obtain network RTK positioning data according to the preset user permission information; if the verification is successful, the Netty server establishes a connection with the client.

[0044] Location data acquisition and transmission: The client device sends its current location coordinates to the Netty server; the Netty server retrieves the nearest network RTK location data from the Redis database using a grid method based on the client coordinates; the retrieved location data is sent to the client device through the Netty server, and the client device performs autonomous driving and precision operations based on the received location data.

[0045] Service Expiration Monitoring: RocketMQ message queues monitor the service expiration of clients in real time; if the service expiration date is reached, RocketMQ message queues will send a service expiration notification to the Netty server; upon receiving the notification, the Netty server will automatically disconnect from the client and stop data transmission.

[0046] Fault tolerance and exception handling: If the client device suddenly loses connection during the job (such as due to network failure), the Netty server will detect the connection abnormality through a heartbeat mechanism and automatically record the current data transmission status; once the network is restored and the client reconnects, the Netty server will continue to transmit data according to the recorded status to ensure job continuity; if the Redis database fails, the system will automatically switch to the backup database to ensure the continuous availability of location data.

[0047] Through the network RTK positioning data broadcasting system of this invention, agricultural machinery can acquire high-precision positioning data in real time during operation, with positioning accuracy reaching the centimeter level. Compared with traditional methods, operation efficiency is increased by 30% and operation accuracy is increased by 50%, significantly improving the automation and precision level of agricultural production.

[0048] On the other hand, the present invention provides a high-performance network RTK positioning data broadcasting system, which includes modules capable of implementing the steps of the aforementioned method, specifically including:

[0049] The Netty module is used to build servers based on the Netty framework, which handle client connection requests and data transmission.

[0050] The Redis module is used to configure a Redis database to store network RTK location data and to serve as the backend storage for the Netty server.

[0051] The RocketMQ module is used to build a message queue service using RocketMQ, and is used to handle messages for user permission verification and service expiration checks.

[0052] The implementation module is used to verify user permissions through RocketMQ authentication when a client requests a connection. After successful verification, the Netty server establishes a connection, retrieves the nearest network RTK location data from the Redis database using a grid method based on the client user's coordinates, and sends it to the user. At the same time, it monitors the service period through RocketMQ and automatically disconnects the connection when the service expires.

[0053] As is generally true, if the client wishes to continue using the service, they will need to repurchase the service and re-verify their permissions.

[0054] Thirdly, the present invention provides an electronic device, comprising: one or more processors; and a memory for storing one or more programs; wherein, when the one or more programs are executed by the one or more processors, the one or more processors implement the aforementioned high-performance network RTK positioning data broadcasting method.

[0055] Fourthly, the present invention provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, enable the processor to implement the aforementioned high-performance network RTK positioning data broadcasting method.

[0056] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above descriptions are merely specific embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A high-performance network RTK positioning data broadcasting method, characterized in that, The method includes: Step 1: Build a server based on the Netty framework to handle client connection requests and data transmission; Step 2: Configure a Redis database to store network RTK location data and use it as the backend storage for the Netty server; Step 3: Build a message queue service using RocketMQ to handle messages for user permission verification and service expiration checks; Step 4: When a client requests a connection, the user's permissions are verified through RocketMQ authentication. After successful verification, the Netty server establishes a connection, retrieves the nearest network RTK location data from the Redis database using a grid method based on the client's coordinates, and sends it to the user. At the same time, RocketMQ monitors the service period and automatically disconnects the connection upon expiration.

2. The high-performance network RTK positioning data broadcasting method according to claim 1, characterized in that, In step 1, a master-slave Reactor thread model is adopted. The master thread group handles TCP connection requests, and the worker thread group handles I / O read and write. A heartbeat mechanism is established, and IdleStateHandler is used to implement 15-second idle detection. If the timeout occurs, the connection is automatically disconnected and resources are released.

3. The high-performance network RTK positioning data broadcasting method according to claim 1, characterized in that, In step 2, an AOF persistence strategy is used to store network RTK location data, the client's liveness time is periodically detected, and a caching hierarchy strategy is used to improve data timeliness.

4. The high-performance network RTK positioning data broadcasting method according to claim 1, characterized in that, In step 3, RocketMQ uses a dual-master dual-slave cluster architecture to process user permission verification and service expiration check messages.

5. The high-performance network RTK positioning data broadcasting method according to claim 1, characterized in that, In step 4, the client coordinates are divided into uniform regions using a grid method, and the RTK positioning data of the nearest grid node in Redis is retrieved; when the service expires, RocketMQ actively pushes a disconnection command to the Netty server, triggering connection release.

6. The high-performance network RTK positioning data broadcasting method according to claim 5, characterized in that, When the client coordinates are divided into uniform regions using a grid method, a dynamic grid adjustment strategy is adopted to optimize the grid size in real time according to the client distribution density, ensuring that the grid is subdivided in high-density areas to improve data retrieval accuracy, and the grid is merged in low-density areas to reduce computational overhead.

7. A high-performance network RTK positioning data broadcasting method according to claim 4, characterized in that, The RocketMQ message queue service is also used to record user request logs and location data distribution records, and periodically archives the log data to a distributed file system to support subsequent auditing and performance analysis.

8. A high-performance network RTK positioning data broadcasting method system, characterized in that, include: The Netty module is used to build servers based on the Netty framework, which handle client connection requests and data transmission. The Redis module is used to configure a Redis database to store network RTK location data and to serve as the backend storage for the Netty server. The RocketMQ module is used to build a message queue service using RocketMQ, and is used to handle messages for user permission verification and service expiration checks. The implementation module is used to verify user permissions through RocketMQ authentication when a client requests a connection. After successful verification, the Netty server establishes a connection, retrieves the nearest network RTK location data from the Redis database using a grid method based on the client user's coordinates, and sends it to the user. At the same time, it monitors the service period through RocketMQ and automatically disconnects the connection when the service expires.

9. An electronic device, characterized in that, include: One or more processors; Memory, used to store one or more programs; When one or more programs are executed by the one or more processors, the one or more processors implement the high-performance network RTK positioning data broadcasting method according to any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, It stores executable instructions that, when executed by a processor, enable the processor to implement a high-performance network RTK positioning data broadcasting method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Large-scale distributed user-oriented high-precision position broadcast service apparatus and method

    CN108710676A

  • Remote data transmission method based on Netty

    CN112148500A

  • Information processing method and device, equipment and storage medium

    CN117411865A

  • Elastic distributed message queue service system

    CN119961020A

  • Api and socket non-disruptive system using Netty and Redis

    KR102476119B1