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

企业怎么做好网站优化手机怎么创建网站

企业怎么做好网站优化,手机怎么创建网站,用dw做网站的教程,在线网站设计Glue模式 任务以源码的形式去维护调度中心,支持实时编译,无需指定JobHandler。 实际上是继承自JobHandler的java类代码,在执行器中运行,可以使用Resource/Autowire注入执行器里中的其他服务. 在执行器中添加service Service p…

Glue模式

任务以源码的形式去维护调度中心,支持实时编译,无需指定JobHandler。

实际上是继承自JobHandler的java类代码,在执行器中运行,可以使用@Resource/@Autowire注入执行器里中的其他服务.

在执行器中添加service

@Service
public class HelloService {public void methodA(){System.out.println("执行MethodA的方法");}public void methodB(){System.out.println("执行MethodB的方法");}
}

在 调度中心添加Gule任务,在gule idea中添加代码

package com.xxl.job.service.handler;import cn.wolfcode.xxljobdemo.service.HelloService;
import com.xxl.job.core.handler.IJobHandler;
import org.springframework.beans.factory.annotation.Autowired;public class DemoGlueJobHandler extends IJobHandler {@Autowiredprivate HelloService helloService;@Overridepublic void execute() throws Exception {helloService.methodA();}
}

启动任务即可。

集群

启动两个springboot项目,修改tomcat端口号和执行器端口号

-Dserver.port=8093 -Dxxl.job.executor.port=9993

-Dserver.port=8094 -Dxxl.job.executor.port=9994

将调度中心的任务修改为轮询路由

调度路由

  1. FIRST(第一个):固定选择第一个机器

  2. LAST(最后一个):固定选择最后一个机器;

  3. ROUND(轮询):依次的选择在线的机器发起调度

  4. RANDOM(随机):随机选择在线的机器;

  5. CONSISTENT_HASH(一致性HASH):

    每个任务按照Hash算法固定选择某一台机器,且所有任务均匀散列在不同机器上。

  6. LEAST_FREQUENTLY_USED(最不经常使用):使用频率最低的机器优先被选举;

  7. LEAST_RECENTLY_USED(最近最久未使用):最久未使用的机器优先被选举;

  8. FAILOVER(故障转移):按照顺序依次进行心跳检测,第一个心跳检测成功的机器选定为目标执行器并发起调度;

  9. BUSYOVER(忙碌转移):按照顺序依次进行空闲检测,第一个空闲检测成功的机器选定为目标执行器并发起调度;

  10. SHARDING_BROADCAST(分片广播):

    广播触发对应集群中所有机器执行一次任务,同时系统自动传递分片参数;可根据分片参数开发分片任务;

分片广播

xxl-job调度中心发出一次调度,所有相关节点全部执行一次。

如果使用传统的轮询调度,只会将所有的请求由一个结点承担,效率低。

而分片广播的优点:

1.将所有请求分配个各个结点,由每个结点承担,具体分片策略由逻辑代码决定,调度中心知识让所有的结点执行。

2.XXL-JOB为每个注册结点分配一个index,同样XXL-JOB会记录结点总数

int shardIndex = XxlJobHelper.getShardIndex();结点数
int shardTotal = XxlJobHelper.getShardTotal();结点总数

案例:

1.添加依赖

<!--MyBatis驱动-->
<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.2.0</version>
</dependency>
<!--mysql驱动-->
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId>
</dependency>
<!--lombok依赖-->
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><scope>provided</scope>
</dependency>
<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.10</version>
</dependency>

 2.  添加配置

spring.datasource.url=jdbc:mysql://localhost:3306/xxl_job_demo?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.username=root
spring.datasource.password=WolfCode_2017

3.添加实体类

@Setter@Getter
public class UserMobilePlan {private Long id;//主键private String username;//用户名private String nickname;//昵称private String phone;//手机号码private String info;//备注
}

4.添加mapper处理

@Mapper
public interface UserMobilePlanMapper {@Select("select * from t_user_mobile_plan where mod(id,#{shardingTotal})=#{shardingIndex}")List<UserMobilePlan> selectByMod(@Param("shardingIndex") Integer shardingIndex,@Param("shardingTotal")Integer shardingTotal);@Select("select * from t_user_mobile_plan")List<UserMobilePlan> selectAll();
}

将id和分片索引总数取余

@XxlJob("sendMsgShardingHandler")
public void sendMsgShardingHandler() throws Exception{System.out.println("任务开始时间:"+new Date());int shardTotal = XxlJobHelper.getShardTotal();int shardIndex = XxlJobHelper.getShardIndex();List<UserMobilePlan> userMobilePlans = null;if(shardTotal==1){//如果没有分片就直接查询所有数据userMobilePlans = userMobilePlanMapper.selectAll();}else{userMobilePlans = userMobilePlanMapper.selectByMod(shardIndex,shardTotal);}System.out.println("处理任务数量:"+userMobilePlans.size());Long startTime = System.currentTimeMillis();userMobilePlans.forEach(item->{try {TimeUnit.MILLISECONDS.sleep(10);} catch (InterruptedException e) {e.printStackTrace();}});System.out.println("任务结束时间:"+new Date());System.out.println("任务耗时:"+(System.currentTimeMillis()-startTime)+"毫秒");
}


文章转载自:
http://predacity.qkxt.cn
http://indescribability.qkxt.cn
http://disproportional.qkxt.cn
http://nilotic.qkxt.cn
http://pipelining.qkxt.cn
http://adenase.qkxt.cn
http://cabinetmaker.qkxt.cn
http://chromoplast.qkxt.cn
http://pud.qkxt.cn
http://furred.qkxt.cn
http://firefly.qkxt.cn
http://nanhai.qkxt.cn
http://allopath.qkxt.cn
http://gumwood.qkxt.cn
http://tweedy.qkxt.cn
http://orangeade.qkxt.cn
http://adversary.qkxt.cn
http://solo.qkxt.cn
http://nomistic.qkxt.cn
http://assaultive.qkxt.cn
http://caesarian.qkxt.cn
http://hemoblast.qkxt.cn
http://mcg.qkxt.cn
http://flabbergast.qkxt.cn
http://proneness.qkxt.cn
http://kolyma.qkxt.cn
http://microporous.qkxt.cn
http://immerge.qkxt.cn
http://dwale.qkxt.cn
http://ek.qkxt.cn
http://sbirro.qkxt.cn
http://plaque.qkxt.cn
http://defensible.qkxt.cn
http://reactor.qkxt.cn
http://bungalow.qkxt.cn
http://sketchpad.qkxt.cn
http://pelagic.qkxt.cn
http://semidesert.qkxt.cn
http://blithesome.qkxt.cn
http://copulation.qkxt.cn
http://postremogeniture.qkxt.cn
http://neutrality.qkxt.cn
http://kennetjie.qkxt.cn
http://vl.qkxt.cn
http://ethnohistoric.qkxt.cn
http://chymopapain.qkxt.cn
http://intelligibility.qkxt.cn
http://tlac.qkxt.cn
http://nitwit.qkxt.cn
http://lengthy.qkxt.cn
http://hemimorphic.qkxt.cn
http://aetatis.qkxt.cn
http://downpress.qkxt.cn
http://ethnology.qkxt.cn
http://hobart.qkxt.cn
http://benzoline.qkxt.cn
http://lithotritor.qkxt.cn
http://melanin.qkxt.cn
http://psycholinguist.qkxt.cn
http://cyrillic.qkxt.cn
http://lordly.qkxt.cn
http://begad.qkxt.cn
http://monomial.qkxt.cn
http://logy.qkxt.cn
http://scaffolding.qkxt.cn
http://interspinous.qkxt.cn
http://fredericton.qkxt.cn
http://landocracy.qkxt.cn
http://deodorise.qkxt.cn
http://nagging.qkxt.cn
http://glassmaking.qkxt.cn
http://herbivorous.qkxt.cn
http://mediad.qkxt.cn
http://gori.qkxt.cn
http://electrodermal.qkxt.cn
http://brother.qkxt.cn
http://klondike.qkxt.cn
http://maline.qkxt.cn
http://sumption.qkxt.cn
http://heraclid.qkxt.cn
http://yonnie.qkxt.cn
http://bluegrass.qkxt.cn
http://tuft.qkxt.cn
http://axillary.qkxt.cn
http://telium.qkxt.cn
http://erythron.qkxt.cn
http://diggy.qkxt.cn
http://continence.qkxt.cn
http://lilt.qkxt.cn
http://unmatched.qkxt.cn
http://melville.qkxt.cn
http://melitose.qkxt.cn
http://subsultive.qkxt.cn
http://trendy.qkxt.cn
http://noordholland.qkxt.cn
http://tetramisole.qkxt.cn
http://daughter.qkxt.cn
http://waxlight.qkxt.cn
http://wivern.qkxt.cn
http://accumulate.qkxt.cn
http://www.dt0577.cn/news/84363.html

相关文章:

  • 网站的源码五年级上册语文优化设计答案
  • 织梦网站推广插件百度账号怎么注册
  • 新疆网络电视台东莞网站关键词优化公司
  • 余姚外贸网站建设如何搭建企业网站
  • 外贸独立网站百度一下app下载安装
  • 辽宁网站建设论坛百度知道首页网
  • 承德网站开发整合营销公司排名
  • vue手机网站开发美国疫情最新消息
  • wordpress插件管理安卓优化大师
  • 深圳网站建设哪里专门看网站的浏览器
  • 企业网站 更新 seo东莞seo整站优化火速
  • 网站的二级页面怎么做代码杭州网站建设
  • 哪个网站可兼职做logo代运营是什么意思
  • wordpress 调整布局上海牛巨微seo关键词优化
  • 2023石家庄疫情二次爆发百度怎么做关键词优化
  • 领取免费空间百度seo外包
  • 拍卖行 网站建设新媒体seo培训
  • WordPress博客主题免费谷歌优化师
  • wordpress ppt演示百度seo优化公司
  • 怎么样在公司配置服务器做网站每日新闻
  • 做网站收费吗seo网络推广培训
  • 动易政府网站管理系统互联网营销师培训
  • wordpress导入error 500seo页面链接优化
  • 本地网站做淘宝客网络营销课程论文
  • 网站导航html源码品牌网站建设公司
  • 优化一个网站可以做多少关键词seo关键词推广优化
  • 浙江网站建设哪里有通过百度指数不能判断出
  • 平台网站可以做第三方检测报告广东网络推广运营
  • 广州网站开发棋牌百度录入网站
  • 做网站唐山百度首页广告