import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; public class TaskScheduler { private static ScheduledExecutorService scheduledExecutor = Executors.newScheduledThreadPool(5); /** * @param args */ public static void main(String[] args) { // System.out.print(System.currentTimeMillis()); // 每秒生成固定数目的数据量,每种数据的数据量可配置 MetadataTask humanTask = new MetadataTask(Metadata2KafkaTask.TARGET_TYPE_HUMAN); MetadataTask vehicleTask = new MetadataTask(Metadata2KafkaTask.TARGET_TYPE_VEHICLE); // VehiclePassData2KafkaTask vehiclePassTask = new VehiclePassData2KafkaTask(); // VehicleAlarmData2KafkaTask vehicleAlarmTask = new VehicleAlarmData2KafkaTask(); scheduledExecutor.scheduleAtFixedRate(humanTask, 0, 1000, TimeUnit.MILLISECONDS); scheduledExecutor.scheduleAtFixedRate(vehicleTask, 0, 1000, TimeUnit.MILLISECONDS); // scheduledExecutor.scheduleAtFixedRate(vehiclePassTask, 400, 1000, TimeUnit.MILLISECONDS); // scheduledExecutor.scheduleAtFixedRate(vehicleAlarmTask, 800, 1000, TimeUnit.MILLISECONDS); } }