为什么需要分布式锁
在分布式架构中,多个程序访问统一资源的时候,传统的synchronized是无效的,它只针对一个JVM进程内多个线程起到同步作用,对跨进程无效。
解决方案:
1、利用数据库select … for update 语句对库存进行锁定,依赖数据库自身特...
2年前 (2022-10-08) 1314℃
0喜欢
什么是BASE最终一致性
BASE 最终一致性是对CAP理论中一致性(C)和可用性(A)进行权衡的结果,起到承上启下的作用。其核心思想是无法做到强一致性,但每个应用都可以根据自身的特点,采用适当方式达到最终一致性。
举个例子:
CP:表现为订单创建后一直等待短信发送后才返回结果...
2年前 (2022-10-08) 4743℃
1喜欢
什么是CAP定理
CAP定理是分布式架构的基本理论,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。
C:更新操作成功后,所有节点在同一时间的数据完全一致。
A:用户访问数据时,系统能否在正常响应时间返...
2年前 (2022-10-08) 2075℃
1喜欢
为什么要用序列化
对象序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久地保存在磁盘上,或通过网络将这种二进制流传输到另一个网络节点。//当其它程序获取了这种二进制流,就可以恢复成原来的Java对象。
序列化过程:用一个字节序列可以表示一个...
2年前 (2022-10-08) 1002℃
0喜欢
说明
Hive自带了一些函数,比如:max/min等,但是数量有限,碰到一些个性化业务需求,比如数据加密脱敏、URL解码、身份证校验、解析IP和手机号归属地,就可以通过自定义UDF来方便的扩展。
官方文档:https://cwiki.apache.org/confluence/d...
2年前 (2022-10-07) 1142℃
0喜欢
垃圾回收算法概述
垃圾回收算法主要分为两个阶段,分别是标记阶段和清除阶段
垃圾标记阶段:主要是为了判断对象是否存活
1、在堆里存放着几乎所有的Java对象实例,在GC执行垃圾回收之前,首先需要区分出内存中哪些是存活对象,哪些是已经死亡的对象。只有被标记为己经死亡的对象,GC才会在...
2年前 (2022-10-06) 1089℃
1喜欢
定义
备忘录模式Memento是⼀种⾏为设计模式, 允许在不暴露对象实现细节 的情况下保存和恢复对象之前的状态。
很多时候我们总是需要记录⼀个对象的内部状态,这样做的⽬的就是为 了允许⽤户取消不确定或者错误的操作,能够恢复到他原先的状态,使 得他有”后悔药”...
2年前 (2022-10-06) 1046℃
1喜欢
这里是我技术长路的知识实践和总结,伴随着自己的成长
JAVA
JAVA 基础
JAVA—包装类的使用
JAVA—比较器
JAVA—泛型
JAVA—反射
JAVA—Lamba表达式
JAVA—StreamAPI
JAVA—SPI机制
JVM
JVM—类加载子系统
JVM—程序计数器...
2年前 (2022-10-06) 1966℃
10喜欢
结论
hive 压缩和存储组合推荐使用:orc + snappy 获得最好的性能和合理的压缩率
存储格式选择
Hive支持的存储数据的格式主要有:textfile 、orc、parquet。
textfile存储格式是基于行存储的,实际生产不使用,一般只有数仓的ODS原始数据层使...
2年前 (2022-10-04) 7648℃
1喜欢
介绍
桥接模式(Bridge 模式)是指:将实现与抽象放在两个不同的类层次中,使两个层次可以独立改变。
是一种结构型设计模式
桥接模式基于类的最小设计原则,通过使用封装、聚合及继承等行为让不同的类承担不同的职责。它的主要特点是把抽象(Abstraction)与行为实现(Imple...
2年前 (2022-10-04) 5102℃
0喜欢