最近需求做一个易扩展,高可用,负载均衡的分布式任务调度器参考了网上的很多帖子和文章.遗憾的是没有找到一个可以跑起来实例,下面是我调整总结可以跑起来的实例.在这里记录下.
系统特点也是Quertz的特点,支持水平扩展,通俗的说就是可以部署多个服务节点/不存在任务重复执行的情况/一个任务节点宕机后其他节点的任务可以照常继续执行.不说废话了,直接上代码.
java代码操作git
发表于
java代码操作git
引入maven配置
1 | <!-- git client --> |
DNS域名解析过程
发表于
|
分类于
系统集成
当用户在浏览器输入wwww.xxx.com时,DNS解析将会有近10个步骤.
- 浏览器检查缓存有没有该域名对应的IP.如果有,这个解析过程就结束.浏览器缓存的域名是有限制的,不仅大小有限制,时间也有限制,通过TTL属性设置域名缓存时间.
- 浏览器缓存中没有,检查操作系统缓存中是否有解析结果.如果有,解析结束.没有的话,请求域名服务器解析该域名.
网络配置有配置DNS服务器地址,操作系统把域名送给这里的LDNS. Linux下通过以下命令查看.
1
cat /etc/resolv.conf
LDNS未命中,直接到Root Server域名服务器请求解析.
- 根据域名服务器返回本地域名服务器一个服务器地址(gTLDServer).gTLD是国际顶级域名服务器, 如.com, .cn, .org等,全球只有13台左右.
- 本地域名服务器再向上一步返回的gTLD服务器发送请求.
- gTLD服务器查找并返回次域名对应的Name Server域名服务器地址,这个Name Server通常就时你注册的域名服务器.
- Name Server域名服务器查询存储的域名和IP映射关系,正常情况下查询到目标IP记录,连同一个TTL值返回给DNS Server域名服务器.
- 返回该域名对应的IP和TTL值, Local DNS Server会缓存该记录.
- 解析结果返回给用户, 用户根据TTL值缓存这个记录.
实际过程,可能不止这10个步骤,如Name Server有多级或者有个GTM负载均衡控制,这都会影响域名解析的过程.