当前位置: 首页 > news >正文

封装系统如何做自己的网站专做英文类网站

封装系统如何做自己的网站,专做英文类网站,姑苏美食标题网页设计素材,域名和WordPress1、java自带的Timer Timer是java中自带的类。 优点#xff1a;使用简单#xff0c;缺点是当添加并执行多个任务时#xff0c;前面任务的执行用时和异常将影响到后面任务。 Timer timer new Timer();timer.schedule(new TimerTask() {int i 0;Overridepublic void run() …1、java自带的Timer Timer是java中自带的类。 优点使用简单缺点是当添加并执行多个任务时前面任务的执行用时和异常将影响到后面任务。 Timer timer new Timer();timer.schedule(new TimerTask() {int i 0;Overridepublic void run() {System.out.println(循环执行的代码块 i);}},启动后多长时间按第一次开始执行,间隔执行时间);讲解源码讲解 2、ScheduledThreadPool-定时任务线程池 ScheduledExecutorService 也是Java自带的类它可以实现Timer具备的所有功能并解决了 Timer类存在的问题。 优点该类是JDK1.5自带的类使用简单缺点是该方案仅适用于单机环境。 ScheduledExecutorService scheduledThreadPool Executors.newScheduledThreadPool(该线程池里的线程数);scheduledThreadPool.scheduleAtFixedRate(new Runnable() { public void run() {System.out.println(循环代码块);}},初始延迟,迟期, 时间单位); 参数1、任务主体循环代码块 2、首次执行的延时时间 3、任务执行间隔 4、间隔时间单位讲解源码讲解 3、Spring Task Spring系列框架中Spring Framework自带的定时任务可以实现某些特定需求比如每周一执行某任务。 1、开启定时任务在SpringBoot的启动类上声明 EnableScheduling SpringBootApplication EnableScheduling //开启定时任务 public class SystemApplication { // -- -- }2、添加定时任务只需使用Scheduled注解标注即可如果有多个定时任务可以创建多个Scheduled标注的方法。Spring Boot 启动后会自动加载并执行定时任务无需手动操作。 import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; Component // 把此类托管给 Spring public class TaskUtils { // 添加定时任务 Scheduled(cron 30 00 10 0 0 5) // cron表达式每周一 10:00:30 执行 public void doTask(){ System.out.println(我是定时任务~); } }4、分布式定时任务 分布式环境可以使用 Redis 来实现定时任务。 使用 Redis 实现延迟任务的方法大体可分为两类通过 ZSet 的方式和键空间通知的方式。 ZSet 实现方式 通过 ZSet 实现定时任务的思路是将定时任务存放到 ZSet 集合中并且将过期时间存储到 ZSet 的 Score 字段中然后通过一个无线循环来判断当前时间内是否有需要执行的定时任务如果有则进行执行。 import redis.clients.jedis.Jedis; import utils.JedisUtils; import java.time.Instant; import java.util.Set; public class DelayQueueExample { private static final String _KEY DelayQueueExample; public static void main(String[] args) throws InterruptedException { Jedis jedis JedisUtils.getJedis(); // 30s 后执行 long delayTime Instant.now().plusSeconds(30).getEpochSecond(); jedis.zadd(_KEY, delayTime, order_1); // 继续添加测试数据 jedis.zadd(_KEY, Instant.now().plusSeconds(2).getEpochSecond(), order_2); jedis.zadd(_KEY, Instant.now().plusSeconds(2).getEpochSecond(), order_3); jedis.zadd(_KEY, Instant.now().plusSeconds(7).getEpochSecond(), order_4); jedis.zadd(_KEY, Instant.now().plusSeconds(10).getEpochSecond(), order_5); // 开启定时任务队列 doDelayQueue(jedis); } /** * 定时任务队列消费 * param jedis Redis 客户端 */ public static void doDelayQueue(Jedis jedis) throws InterruptedException { while (true) { // 当前时间 Instant nowInstant Instant.now(); long lastSecond nowInstant.plusSeconds(-1).getEpochSecond(); // 上一秒时间 long nowSecond nowInstant.getEpochSecond(); // 查询当前时间的所有任务 Set data jedis.zrangeByScore(_KEY, lastSecond, nowSecond); for (String item : data) { // 消费任务 System.out.println(消费 item); } // 删除已经执行的任务 jedis.zremrangeByScore(_KEY, lastSecond, nowSecond); Thread.sleep(1000); // 每秒查询一次 } } }键空间通知 可以通过 Redis 的键空间通知来实现定时任务它的实现思路是给所有的定时任务设置一个过期时间等到了过期之后我们通过订阅过期消息就能感知到定时任务需要被执行了此时我们执行定时任务即可。 默认情况下 Redis 是不开启键空间通知的需要我们通过 config set notify-keyspace-events Ex 的命令手动开启。 import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPubSub; import utils.JedisUtils; public class TaskExample { public static final String _TOPIC __keyevent0__:expired; // 订阅频道名称 public static void main(String[] args) { Jedis jedis JedisUtils.getJedis(); // 执行定时任务 doTask(jedis); } /** * 订阅过期消息执行定时任务 * param jedis Redis 客户端 */ public static void doTask(Jedis jedis) { // 订阅过期消息 jedis.psubscribe(new JedisPubSub() { Override public void onPMessage(String pattern, String channel, String message) { // 接收到消息执行定时任务 System.out.println(收到消息 message); } }, _TOPIC); } }SpringBoot中使用Redis实现分布式锁 5、springboot整合xxl-job实现定时任务 注后续继续补充
http://www.w-s-a.com/news/124705/

相关文章:

  • 阿里云服务器发布网站收款网站怎么建设
  • 开发东莞网站制作公司做网站优化步骤
  • 网站版权信息的正确写法如何制作网络游戏
  • 郑州移动端网站建设如何在网上推广自己的公司
  • 企业建站源码系统破解网站后台
  • 石家庄网站开发报价企业注册资本代表什么
  • 招商平台公司宁波seo教程推广平台
  • 哪些网站可以做房产推广垂直门户网站都有什么
  • 不得不知道的网站金石项目管理软件
  • 怎么恢复网站数据库网站开发作业代做
  • 哪里建设网站最好用中国第五冶金建设公司医院网站
  • 雄安网建 网站建设订餐网站建设
  • 广州视频网站建站公司网站 体系
  • 青浦门户网站网站推广烟台公司电话
  • 湖北荆门建设银行网站wordpress购物模板下载
  • 学ui+wordpress模板北京推广优化
  • 建分类网站得花多少钱深圳设计网站开发
  • 网站集群建设和网站集约化百度商桥怎么绑定网站
  • 青岛模板网站建设价格网络品牌网站建设
  • 网站建设的几大要素网站的做网站的公司
  • 怎么登陆自己的公司网站垂直电商网站建设
  • 温州微网站制作哪里有许昌网站建设哪家最好
  • 中国中小企业网站官网网页制作工具按其制作方式分 可以分为
  • 做资源下载网站违法吗河南企业做网站
  • 网站开发总体功能设计网站建设 北京昌平
  • 辽宁省高等级公路建设局网站书画院网站建设方案
  • 本地生活网站 源码重庆本地网站有哪些
  • 企业网站域名服务器国外html响应式网站
  • 东莞网站建设策划企业网站推广策划方法
  • 网站的图片怎么制作WordPress交互式网站