我有一个在 tomcat 5.5 上运行的 Web 应用程序,它每分钟启动大约 100 个(仍在增长)线程以从传感器收集数据并将其上传到数据库中。我正在使用ScheduledExecutorService
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
scheduler.scheduleAtFixedRate(uploader, 0, 60 , TimeUnit.SECONDS);
我在这里遇到了一个奇怪的问题,有时tomcat自己启动多个实例并为同一个传感器收集相同的数据(如果数据已经在数据库中,我确实有一个检查不上传数据)。我不确定这里有什么问题。是tomcat的线程还是实例?任何想法可能是什么问题?