自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

转载 RabbitMQ

实战前言RabbitMQ 作为目前应用相当广泛的消息中间件,在企业级应用、微服务应用中充当着重要的角色。特别是在一些典型的应用场景以及业务模块中具有重要的作用,比如业务服务模块解耦、异步通信、高并发限流、超时业务、数据延迟处理等。其中课程的学习链接地址:https://edu.csdn.net/cours...

2020-01-20 11:21:27 683

原创 接口幂等性

接口幂等性,防止重复提交String key = Constants.SAVE_TOPIC_ACT_CACHE.concat(id); boolean val = jedisClient.acquireLock(key, 5); if (!val) { return RestResult.wrapErrorResponse(RestConstants....

2019-12-25 14:53:30 181

原创 RedisDistributedLock

Redis实现的分布式锁,适用于对公共资源争抢更新加锁和解锁@Slf4j@Component("redisDistributedLock")public class RedisDistributedLock { @Autowired private JedisClient jedisClient; public static final String BEAN_NA...

2019-12-25 14:11:21 3539 1

原创 消息中间件

消息中间件1.场景1.1.解耦1.2.异步1.3.削峰1.4.系统可用性降低1.5.系统复杂性增加2.分类2.1.Kafka2.2.ActiveMQ2.3.RabbitMQ2.4.RocketMQ3.重复消费(幂等性)3.1.拿消息做数据库的insert操作3.1.1.给消息做一个唯一主键,就算出现重复消费的情况,就会导致主键冲突3.2.拿消息做redis的set的...

2019-11-30 13:40:32 156 1

原创 分布式

分布式1.springCloud、dubbo1.1.服务调用方式1.1.1. dubbo:RPC远程方法调用,就是像调用本地方法一样调用远程方法底层是tcp连接1.1.2.springcloud:REST使用 HTTP 协议处理数据通信面向资源的,而资源是通过 URI 进行暴露1.2.注册中心1.2.1.dubbo:zookeeper取CAP的CP,注重一致性...

2019-11-30 13:39:08 189

原创 多线程

多线程1.并发编程三要素1.1.原子性1.1.1.一个或者多个操作,要么全部执行并且在执行的过程中不被其他操作打断,要么就全部都不执行1.2.可见性1.2.1.多个线程操作一个共享变量时,其中一个线程对变量进行修改后,其他线程可以立即看到修改的结果1.3.有序性1.3.1.程序的执行顺序按照代码的先后顺序来执行2.创建线程方式2.1.1.继承Thread类2.2.2.实现Ru...

2019-11-30 13:37:25 103

原创 SpringMvc

SpringMvc1.servlet生命周期1.1.创建Servlet实例1.1.1.服务器启动时1.1.2.一次请求该servlet时1.2.初始化1.2.1.调用Servlet中的 init(ServletConfig config) 方法,服务器自动调用1.3.调用service方法1.3.1.doGet()方法1.3.2.doPost()方法1.4.销毁1.4.1....

2019-11-30 13:36:13 73

原创 SpringBoot

SpringBoot1.优点1.1.独立运行1.1.1.内置Tomcat、Jetty容器,jar包独立运行1.2.简化配置1.2.1.spring-boot-starter-web启动器自动依赖其他组件,简少了maven的配置1.3.无代码生成和XML配置1.3.1.配置过程中无代码生成,也无需XML配置文件就能完成所有配置工作,都是借助于条件注解完成的1.4.应用监控1.4....

2019-11-30 13:35:04 87

原创 Spring

Spring1.框架优点1.1.1.低侵入式设计,代码的污染极低1.2.2.DI机制将对象之间的依赖关系交由框架处理,减低组件的耦合性1.3.3.提供了AOP技术,支持将一些通用任务,如安全、事务、日志、权限等进行集中式管理,从而提供更好的复用1.4.4.对于主流的应用框架提供了集成支持2.AOP2.1.面向切面,作为面向对象的一种补充,用于将那些与业务无关,却对多个对象产生影响的...

2019-11-30 13:34:00 101

原创 Redis

Redis1.持久化机制1.1.RDB1.1.1.按照一定的时间周期策略把内存的数据以快照的形式保存到硬盘的二进制文件。即Snapshot快照存储,对应产生的数据文件为dump.rdb,通过配置文件中的save参数来定义快照的周期1.2.AOF(优先)1.2.1.Redis会将每一个收到的写命令都通过Write函数追加到文件最后。当Redis重启时会通过重新执行文件中保存的写命令来在内...

2019-11-30 13:30:58 88

原创 Mysql

mysql1.索引1.1.普通索引(index)1.1.1.数据可以重复,没有任何限制1.2.唯一索引(unique)1.2.1.引列的值必须唯一,但允许有空值1.3.主键索引1.3.1.特殊的唯一索引,不允许有空值1.4.复合索引1.4.1.在多个字段上创建的索引,只有在查询条件中使用了创建索引时的第一个字段,索引才会被使用1.5.外键索引1.5.1.只有InnoDB类型...

2019-11-30 13:29:55 389

原创 JVM

JVM1.内存区域划分1.1.栈(Stack)1.1.1.是线程私有的,存储局部变量表,操作栈,动态链接,方法出口1.1.2.栈内存用来存储局部变量和方法调用信息1.1.3.栈中存的是基本数据类型和堆中对象的引用1.2.堆(Heap)1.2.1.存放对象实例1.2.2.堆内存用来存储Java中的对象。无论是成员变量、局部变量还是类变量,它们指向的对象都存储在堆内存中1.3.方法...

2019-11-30 13:27:26 135

原创 Java基础

Java基础1.集合类1.1.Collection1.1.1.ListArrayList• 扩容1.5倍• 线程不安全• 例:A线程向list中添加1-10,B线程向list中添加11-20,最后list中元素是混乱的LinkList• 双向链表节点对应的类Node的实例,Node中包含成员变量• prev• 该节点的上一个节点• next• 该节点的下一个节点•...

2019-11-30 13:23:30 68

原创 swagger使用

swagger使用添加maven依赖添加swagger配置添加properties配置springboot启动类添加注解使用注解param入参注解vo返回注解controller注解登录`http://localhost:10005/doc.html`查看接口文档添加maven依赖 <dependency> <groupId>io.springfox&l...

2019-11-23 15:26:51 214

原创 SnowFlake雪花算法

SnowFlake算法是Twitter设计的一个可以在分布式系统中生成唯一的ID的算法,它可以满足Twitter每秒上万条消息ID分配的请求,这些消息ID是唯一的且有大致的递增顺序SnowFlake算法产生的ID是一个64位的整型,结构如下(每一部分用“-”符号分隔):0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 000...

2019-10-30 10:11:04 106

转载 Java技术——String类的intern()方法

 0.引言什么都先不说,先看下面这个引入的例子:String str1 = new String("SEU")+ new String("Calvin"); System.out.println(str1.intern() == str1); System.out.println(str...

2019-10-22 21:38:24 119

原创 【面试题】有100瓶啤酒,3个空瓶可以换一瓶,7个瓶盖可以换一瓶,问总共可以喝到多少瓶啤酒?

【面试题】有100瓶啤酒,3个空瓶可以换一瓶,7个瓶盖可以换一瓶,问总共可以喝到多少瓶啤酒?

2019-10-18 18:40:05 1728

原创 Linux 安装openoffice及中文字库

Linux 环境安装openoffice及中文字库一、安装 openoffice将openoffice安装包上传至服务器解压安装包:tar -zxvf Apache_OpenOffice_4.1.6_Linux_x86-64_install-rpm_zh-CN.tar.gz进入openoffice安装目录:cd zh-CN/RPMS/安装插件:yum localinstall *.rp...

2019-09-04 18:49:39 855

原创 Windows 安装 Erlang 和 RabbitMQ

WINDOWS 安装 Ealang 和 RabbitMQ一、安装Erlang语言运行环境二、安装RabbitMQ一、安装Erlang语言运行环境下载地址:http://www.erlang.org/downloads配置环境变量:新建变量 ERLANG_HOME,变量值为 erlang 的安装路径;在Path 中新建 %ERLANG_HOME%\bin验证是否安装成功:erl...

2019-08-31 13:15:21 191

空空如也

空空如也

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

TA关注的人

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