java - 为要插入数据库的数据实现队列

标签 java mysql queue

我们正在开发一个车辆跟踪系统,其中多个 GPS 设备不断使用 TCP 连接将它们的 GPS 位置发送到服务器。 TCP 通信器解码 GPS 位置并将该数据插入数据库。现在,TCP 通信器的一个线程服务于一个设备请求。解码 GPS 数据后,它创建到数据库的连接并插入数据并释放连接。 随着设备数量的增加,与数据库(即 MySQL)的并发连接数也在增加。因此,我想实现一个队列,其中 TCP 通信器的每个线程都会将数据推送到一端,而一个作业将从另一端获取数据并将其插入数据库。

任何人都可以建议我处理这一切的最佳解决方案吗?我们的应用程序基于 Java,数据库是 MySQL。

谢谢, 紫罗兰

最佳答案

您可以使用线程安全的队列实现,例如 ConcurrentLinkedQueue对数据进行排队

关于java - 为要插入数据库的数据实现队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5499350/

相关文章:

java - 使用尝试自动完成

java - 用于访问 LinkedIn 数据的 Spring Boot 应用程序

mysql - 我想编写以下查询 Rails 方式

java - 每周仅将值保存到数据库一次

php - 计算所有唯一记录

c++ - std::queue 析构函数慢得要死,bug?

python - 了解 Python 队列并设置线程作为守护线程运行

java - 当所有测试都是最新的时如何运行 Gradle 测试?

java - header 签名无效;在 excel 文档上使用 Apache POI 的 IOException

java - 是否可以在链接阻塞队列的头部添加或修改元素?