关于scheduler:使用ScheduledExecutorService实现延时任务延时发布视频

应用ScheduledExecutorService能够实现定时工作(例如定时公布的性能) 先在类中定义局部变量 ScheduledExecutorService service = Executors.newScheduledThreadPool(50);Executors.newScheduledThreadPool(50); 此处应用了工厂模式。 工厂模式次要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到进步灵活性的目标。 @PostMapping("/ops/scheduled/publish") public ResponseResult scheduledPublish(@RequestBody ScheduleVideoDto dto) { List<Integer> vids = dto.getVids(); if (vids.isEmpty()){ return ResponseResult.of().withErrorMessage("公布视频失败,请抉择视频进行公布"); } Date pushTime = dto.getPushTime(); if (pushTime==null){ return ResponseResult.of().withErrorMessage("公布视频失败,请从新抉择公布工夫"); } for (int i = 0; i< vids.size();i++){ int status = videoService.getStatusById(vids.get(i)); if (status==1) vids.remove(vids.get(i)); } if (vids.isEmpty()){ return ResponseResult.of().withErrorMessage("公布视频失败,所选视频均为已公布"); } long delay = pushTime.getTime() - System.currentTimeMillis(); vids.forEach(vid->{ videoService.updatePushTime(vid,pushTime); service.schedule(() -> videoService.publish(vid), delay, TimeUnit.MILLISECONDS); }); return ResponseResult.of(); }在接口传入的dto中传入公布工夫PushTime ...

January 31, 2022 · 1 min · jiezi

关于scheduler:深入解析Scheduler

Kubernetes以其先进的理念、沉闷的社区,已成为以后容器集群化编排、部署和运行的事实标准。越来越多的企业和团队将Kubernetes引入到本人的研发和生产环境。 Scheduler是Kubernetes的重要组件,在整个零碎中承当了“承前启后”的重要性能,其外围的作用是将待调度的Pod依照特定的调度算法和调度策略绑定(Binding)到集群中某个适合的Node上,并将绑定信息写入etcd中。 8月26日晚8点,JFrog中国资深解决方案架构师高欣,将深刻、粗疏地剖析Scheduler的次要调度办法,及其运行机制,并通过实操演示的形式,来解说Scheduler如何通过这些调度办法实现Pod的无效调度。 你将学习到:1、Scheduler的工作原理2、Scheduler的次要调度办法3、实操演示Scheduler的调度过程 你将播种:1、深刻了解Scheduler的运行机制2、相熟和把握Scheduler的各种调度办法3、应用Scheduler来实现Pod的无效调度 参加形式点击下方链接报名即可 深刻解析Scheduler

August 24, 2021 · 1 min · jiezi