
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
需求,由于现在定时任务较多,bash项目单机部署压力过大、效率太低,现需要多机部署,并且当前时刻只能有一个定时任务成功执行。3 JAVA demo环境概述启3个springboot项目,端口不一致,定时任务代码一致。当前任务获取锁,如果获取到锁,则执行任务,如果获取不到,则什么都不干。Code:检测任务:日志:检测结果:问题: 由于任务执行的时间很短,A节点抢到锁释放锁完成了,B节点抢锁去发现就没
步骤:2 Facebook 配置2.1 进入开发者配置2.2 创建应用描述: 创建应用,集成FaceBook 登录描述: 记录appId、appSecret描述: 设置获取授权码url描述: 查看其它3.2 拼接uri后点击获取授权码
步骤:2 google 授权配置2.1 配置网站2.2 配置投屏3.2 授权码回调接口3.3 获取授权码描述: 运行后,直接访问,获取授权码
1 分布式锁具备的条件(1) 独占性:在分布式系统环境下,一个方法在同一时间只能被一个机器的一个线程执行。(2) 高可用:不能因某一个节点挂了而出现获取锁和释放锁失败的情况。(3) 防死锁:要有超时机制或撤销操作兜底释放锁。(4)不乱抢:自己只能解自己上的锁,不能解其它线程上的锁。(5)可重入:同一个节点的同一个线程如果获得锁之后可以再次获取锁。2 代码实现@Service@Slf4jpublic
DIM层设计要点:(1)DIM层的设计依据是维度建模理论,该层存储维度模型的维度表。(2)DIM层的数据存储在 HBase 表中DIM 层表是用于维度关联的,要通过主键去获取相关维度信息,这种场景下 K-V 类型数据库的效率较高。常见的 K-V 类型数据库有 Redis、HBase,而 Redis 的数据常驻内存,会给内存造成较大压力,因而选用 HBase 存储维度数据。(3)DIM层表名的命名规
DIM层设计要点:(1)DIM层的设计依据是维度建模理论,该层存储维度模型的维度表。(2)DIM层的数据存储在 HBase 表中DIM 层表是用于维度关联的,要通过主键去获取相关维度信息,这种场景下 K-V 类型数据库的效率较高。常见的 K-V 类型数据库有 Redis、HBase,而 Redis 的数据常驻内存,会给内存造成较大压力,因而选用 HBase 存储维度数据。(3)DIM层表名的命名规
1、Kubernetes概念Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。1.1、通过Kubernetes你可以:1)快速部署应用2) 快速扩展应用3)无缝对接新的应用功能4)节省资源,优化硬件资源的使用1.2、Kubernetes 特点1)可移植: 支持公有云,私有云,混合云,多重云(multi-cloud)2)...
1、环境两台虚拟机40,41安装Nginx2、keepalived简介Keepalived我的理解是能够为服务器创建虚拟IP,简称VIP。并且能够配置主从模式,如果主机的vip挂掉,那么从节点的vip会立马启动起来,保证vip可用。2.1、安装#两台机器同时解压tar -zxvf keepalived-2.0.0.tar.gz#进入keepalived目录下cd keepaliv...
Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。1 方法区简单说方法区用来存储类型的元数据信息,一个.class文件是类被java虚拟机使用之前的表现形式,一旦这个类要被使用,java虚拟机就会对其进行装载、连接(验证、准备、解析)和初始化,而装载后的结果就是由.class文件转变为方法区中的一段特定的数据结构。(1)方法区存储的信息类型信息:全限定名、直接超