自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

逐梦追风_博客

必须要全力以赴,才能看起来毫不费力

  • 博客(20)
  • 收藏
  • 关注

转载 Zookeeper数据查看工具ZooInspector

Zookeeper作为常用的集群协调者组件被广泛应用,尤其是在大数据生态圈中;Zookeeper集群存储各个节点信息,包括:Hadoop、Hbase、Storm、Kafka等等;1. 查询ZK数据的方式那如何查看Zookeeper中的数据呢,我们可以通过ZkCli.sh命令客户端查看,但是不太直观,因为ZK本身数据是以树型结构存储组织的,所以今天推荐一个实用的界面操作工具ZooInspec...

2020-03-15 17:00:57 521

转载 Java并发编程:volatile关键字解析

volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先来了解一...

2020-03-15 16:58:20 174

转载 从构建分布式秒杀系统聊聊分布式锁

从构建分布式秒杀系统聊聊分布式锁1.案例介绍在尝试了解分布式锁之前,大家可以想象一下,什么场景下会使用分布式锁?单机应用架构中,秒杀案例使用ReentrantLcok或者synchronized来达到秒杀商品互斥的目的。然而在分布式系统中,会存在多台机器并行去实现同一个功能。也就是说,在多进程中,如果还使用以上JDK提供的进程锁,来并发访问数据库资源就可能会出现商品超卖的情况。因此,需要我...

2020-03-15 16:49:21 365

原创 Jdk提供线程池-原理、解析和使用

1.背景我们都很清楚java创建线程的方式:1.继承Thread 2.实现Runnable接口,但是在项目中,我们几乎从来不会这样使用,因为线程创建和销毁都很耗费系统资源(CPU、IO、内存等),那么问题来了,如果能有一种工具能在我们需要的时候(eg:前端页面请求、后端定时任务等)提供创建线程,当线程执行完成以后不进行销毁,直接被工具回收回去,进入闲置状态,等待被再次使用。这样的话,资源利用率就...

2020-03-15 16:46:16 300

转载 java的transient关键字

1. transient的作用及使用方法​ 我们都知道一个对象只要实现了Serialization接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serialization接口,这个类的所有属性和方法都会自动序列化。​ 然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序...

2020-02-28 19:21:44 134

原创 Enum遍历和根据参数返回指定枚举类型

1.枚举的遍历枚举遍历,采用Enum#values()for(Enum enum:Enum.values()){ ...}2.枚举遍历的运用项目中我们经常需要根据指定参数类型获取对象实例,因此在枚举类中我们需要自定方法,实例如下:import lombok.Getter;@Getterpublic enum NeitTaskTypeEnum { ZIP((shor...

2020-02-28 19:20:20 3114

原创 UML(Unified Modeling Language)类图

在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)1.泛化(Generalization)【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。例如:老虎是动物的一种,即...

2020-02-28 19:15:28 132

原创 MySQL如何设置手动提交

MySQL默认自动提交事务# 查看mysql自动提交状态show variables like 'autocommit';# 开启自动提交set @@autocommit=1;# 关闭自动提交set @@autocommit=0;启动数据库时,关闭事务自动提交找到my.ini文件,在[mysqld]下添加autocommit=0[mysqld]port=3306auto...

2020-02-28 19:11:50 2526

原创 redis的eval命令

1.介绍redis自从2.6.0版本起就采用内置的Lua解释器通过EVAL命令去执行脚本EVAL命令首个参数是一个Lua 5.1版本的脚本,这个脚本并不需要定义一个Lua函数或者说是不应该这样做。它可以仅仅是一个Lua语法,这个语法运行在redis服务器上下文EVAL命令第二参数是代表Redis键的数量,Lua采用基于数组形式(KEYS全局变量)访问这些参数(KEYS[1]、KEYS[2] ...

2020-02-28 19:09:32 8068 1

原创 Spring集成redis下如何获取访问redis服务端的Jedis实例

1.RedisTemplate介绍Spring为了更加方便操作redis,对redis操作进行封装,maven依赖如下:<dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId>...

2020-02-28 19:07:52 537

原创 基于数据库实现的分布式锁

1.概述在单机时代,虽然不需要分布式锁,但也面临过类似的问题,只不过在单机的情况下,如果有多个线程要同时访问某个共享资源的时候,我们可以采用线程间加锁的机制,即当某个线程获取到这个资源后,就立即对这个资源进行加锁,当使用完资源之后,再解锁,其它线程就可以接着使用了。例如,在JAVA中,甚至专门提供了一些处理锁机制的一些API(synchronize/Lock等)。但是到了分布式系统的时代,这种...

2020-02-28 19:05:29 295

转载 探索Mysql锁机制(二)——共享锁&排他锁&意向锁&间隙锁

????花絮????仔细看哦 ????今天采蜜采到一份看起来不错的简历,正襟危坐,电话call过去。对方的电话响着粤语版的《明年今日》,让我想起了村里的小芳,鞭子粗又长。“喂,哪位?”,对方的声音很Young很有钱。“同学你好,我是巴巴的面试官,你对XX巴巴有兴趣吗,现在方不方便聊聊?”。“…你好,有啊,方便的。”“okay,那我们简单的聊一会,你能先简单的介绍一下自己吗?”。“好,我叫小明...

2020-02-28 19:03:17 1127 1

转载 探索Mysql锁机制(一)——乐观锁&悲观锁

前言数据库的锁机制是并发控制的重要内容,是对程序控制数据一致性的补充,更细粒度的保障数据的一致性,而使各种共享资源在被并发访问变得有序所设计的一种规则。下面主要针对我们常见的InnoDB和Myisam进行解析。注:下文提到的分库分表、fail-fast理念如果有需要,可以给大家分享下,在我厂内部应用场景。????????????听着《嘴巴嘟嘟》,写着文章,有种初念的感觉。花絮小明是一家小作...

2020-02-28 19:01:10 354

原创 Mysql字符串类型

MySQL提供了多种对字符数据的存储类型,不同的版本可能有所差异。以5.0版本为例,MYSQL包括了CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET等多种字符串类型。下表详细列出了这些字符串的比较。字符串类型字节描述和存储需求CHAR(M)MM为0~255之间的整数VARCHAR(M)M为0~65535之间的整数...

2020-02-28 18:58:38 322

原创 事务的四种隔离级别

1.并发事务处理带来的问题相对于串行处理来说,并发事务处理能大大增加数据库资源的利用率,提高数据库系统的事务吞吐量,从而可以支持更多的用户。但并发事务处理也会带来一些问题,主要包括以下几种情况:脏读(Dirty Reads):一个事务读取到另一个事务尚未提交的数据不可重复读(Non-Repeatable Reads):一个事务在读取某些数据后的某个时间,在此读取以前读过的数据,却发现其读出...

2020-02-28 18:56:42 8275 9

原创 HSF和Dubbo服务互调

1.HSF调用Dubbo1.1 EDAS项目和Dubbo项目要求EDAS项目:war,启动方式:Ali-tomcatDubbo项目:war/jar,启动方式:tomcat81.2 调用方式方法:dubbo服务注册到zk,hsf从zk中调用dubbo服务详解:1.2.1 在当前应用中加入不低于1.5.1的edas-sdk依赖&lt;dependency...

2018-09-04 10:53:49 2723 2

转载 声明式事务传播属性研究

声明式事务验证propagation配置的就是一个事务的传播性问题。所谓事务传播性,就是被调用者的事务与调用者的事务之间的关系。举例说明。//in A.javaClass A { @Transactional(propagation=propagation.REQUIRED) public void aMethod { B b = new B();

2017-11-14 16:42:45 239

原创 java通过rest调用php暴露的接口,同一字段可能为false或List,反序列化报错

1.定义类型转换器/** * POJO属性有值是List,无值是false * * @author dujiayong * @create 2017-11-02 9:37 */public class ImagesFormater extends JsonDeserializer { @Override public Object deserialize(JsonParse

2017-11-14 16:23:19 247

转载 Stream流操作

stream流操作public class Streams { private enum Status{ OPEN,CLOSE }; private static final class Task{ private final Status status; private final Integer points; T

2017-09-09 22:33:07 394

转载 FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换

fastJson对于json格式字符串的解析主要用到了一下三个类:JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换。JSONObject:fastJson提供的json对象。JSONArray:fastJson提供json数组对象。我们可以把JSONObject当成一个Mappublic class JSONObject extends JSON

2017-09-09 22:28:13 526

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除