有关单点登录(SSO)之前有写过两篇文章一文读懂JWT!看完这篇不能再说不懂SSO原理了!如果说XXL-JOB你可能并不陌生,它是非常火爆的一个分布式任务调度平台。但其实在该作者还有一个非常优秀的开源项目叫XXL-SSO,这两个个项目都是1000+Star。XXL-SSO是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。拥有"轻量级、分布式、跨域、Cookie+Token均支持、Web+APP均支持"等特性。现已开放源代码,开箱即用。这里主要是通过对XXL-SSO源码的分析,将理论和实践结合!一、快速接入sso1、xxl-sso特性简洁:API直观简洁,可快速上手轻量级
笔者能力有限,小白一枚,在遇到问题之后记录问题的解决方式为主要目的,欢迎各位探讨交流。问题出现:拉取代码:dockerpullxuxueli/xxl-job-admin:2.3.0docker部署mysql部署代码:dockerrun-d--linkmysql:tolinkmysql-ePARAMS="--spring.datasource.url=jdbc:mysql://tolinkmysql:33061/xxl_job?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai--sp
笔者能力有限,小白一枚,在遇到问题之后记录问题的解决方式为主要目的,欢迎各位探讨交流。问题出现:拉取代码:dockerpullxuxueli/xxl-job-admin:2.3.0docker部署mysql部署代码:dockerrun-d--linkmysql:tolinkmysql-ePARAMS="--spring.datasource.url=jdbc:mysql://tolinkmysql:33061/xxl_job?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai--sp
有时,我们经常会在数据库服务器上做一些定时备份的工作,最常用的方法就是写个sh脚本,然后配置/etc/crontab定时策略即可,但它有缺点,我总结如下:脚本基本相同,代码需要在每个数据服务器上部署由于代码是分布的,并且是个代码,所以管理不清晰,不直观控制不统一,你需要在每个服务器的/etc/crontab里配置策略xxl-job主要解决任务调度的问题,并且它是分布式的,可以有多个执行器,多个执行器可以进行集群策略的定时,包括轮训,随即,hash,LRU,LFU等等,下面使用xxl-job来实现这个定时备份的功能。先准备脚本文件文件可以直接写在java代码时,通过代码去构建文件,就不需要在每个
有时,我们经常会在数据库服务器上做一些定时备份的工作,最常用的方法就是写个sh脚本,然后配置/etc/crontab定时策略即可,但它有缺点,我总结如下:脚本基本相同,代码需要在每个数据服务器上部署由于代码是分布的,并且是个代码,所以管理不清晰,不直观控制不统一,你需要在每个服务器的/etc/crontab里配置策略xxl-job主要解决任务调度的问题,并且它是分布式的,可以有多个执行器,多个执行器可以进行集群策略的定时,包括轮训,随即,hash,LRU,LFU等等,下面使用xxl-job来实现这个定时备份的功能。先准备脚本文件文件可以直接写在java代码时,通过代码去构建文件,就不需要在每个
主要包括XXL-JOB日志清理,包括分片广播任务,阻塞处理策略,路由策略,运行模式,创建子任务如果查看XXL-JOB基本使用和整合SpringBoot,请参考我另一篇文章:XXL-JOB基本配置使用导语:XLL-JOB是分布式任务调度平台,常见功能特性:1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,容易上手2、动态:支持动态修改任务状态,启动/停止任务,以及终止运行中的任务,即时生效3、调度中心HA(中心式):调度中心式设计,并支持集群部署,保证调度平台高可用4、执行器HA(分布式):任务分布执行,任务执行器支持集群部署,可保证任务执行高可用5、弹性扩容缩容:一旦有新执行器机器
主要包括XXL-JOB日志清理,包括分片广播任务,阻塞处理策略,路由策略,运行模式,创建子任务如果查看XXL-JOB基本使用和整合SpringBoot,请参考我另一篇文章:XXL-JOB基本配置使用导语:XLL-JOB是分布式任务调度平台,常见功能特性:1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,容易上手2、动态:支持动态修改任务状态,启动/停止任务,以及终止运行中的任务,即时生效3、调度中心HA(中心式):调度中心式设计,并支持集群部署,保证调度平台高可用4、执行器HA(分布式):任务分布执行,任务执行器支持集群部署,可保证任务执行高可用5、弹性扩容缩容:一旦有新执行器机器
定时任务几乎是每个业务系统必不可少的功能,计算到期时间、过期时间等,定时触发某项任务操作。在使用单体应用时,基本使用Spring提供的注解即可实现定时任务,而在使用微服务集群时,这种方式就要考虑添加分布式锁来防止多个微服务同时运行定时任务而导致同一个任务重复执行。 除了使用注解,现在还有一种方式,就是搭建分布式任务平台,所有的微服务注册到分布式任务平台,由分布式任务平台统一调度,这样避免了同一任务被重复执行。这里我们选择使用XXL-JOB作为分布式任务调度平台,XXL-JOB核心设计目标是开发迅速、学习简单、轻量级、易扩展。 使用分布式任务调度平台的优点除了避免同一任务重复执行外,还有
定时任务几乎是每个业务系统必不可少的功能,计算到期时间、过期时间等,定时触发某项任务操作。在使用单体应用时,基本使用Spring提供的注解即可实现定时任务,而在使用微服务集群时,这种方式就要考虑添加分布式锁来防止多个微服务同时运行定时任务而导致同一个任务重复执行。 除了使用注解,现在还有一种方式,就是搭建分布式任务平台,所有的微服务注册到分布式任务平台,由分布式任务平台统一调度,这样避免了同一任务被重复执行。这里我们选择使用XXL-JOB作为分布式任务调度平台,XXL-JOB核心设计目标是开发迅速、学习简单、轻量级、易扩展。 使用分布式任务调度平台的优点除了避免同一任务重复执行外,还有
一、使用背景目前项目中,采用的是微服务框架,由于在微服务中,存在需要定时的任务。但如果定时任务维护在每个微服务下,当微服务部署多个实例的情况下,会出现定事任务多次执行的情况。并且在解决问题的基础上,希望能够实现动态修改任务的定时时间,可以通过页面对定时任务进行控制。二、xxl-job简单介绍首先,xxl-job是一个轻量级分布式任务调度平台,内容采用了Quartz定时框架实现,服务之间通信通过RPC的方式实现。其次,在功能方面:支持通过web页面对任务进行增删改查操作支持动态修改任务状态、启动、停止等,即时生效。支持多种阻塞处理策略,如串行、丢弃后续调度、覆盖之前调度支持超时控制、失败重试、邮