- 博客(14)
- 资源 (2)
- 收藏
- 关注
原创 springboot 配置文件多环境设置
基于spring.profiles.include 多环境配置如图配置文件分为开发和测试,然后各环境分别延伸出一个redis的配置文件一. 配置文件配置1. 在application.yml 配置文件中添加如下配置,则默认使用开发环境(application-dev.yml)配置文件,改为test则默认使用(application-test.yml)spring: profiles.active: dev2. 在application-dev.yml 配置文件中添加如下..
2020-07-08 18:04:27
238
原创 JasperReport 打印面单时遇到的坑
最近使用iReport 画模板,使用SpringMVC + JasperReport打印面单,期间遇到各种坑,做个记录一. 首先画模板时候一定要减少布局Static Test控件,否则后期调试会布局比较麻烦二. 打印面单最好使用黑体(京东文档要求黑体)或者微软雅黑,一开始使用的宋体,打印出来恨不清晰三. 条形码打印问题:在windows下没任何问题,不过发布到linux时出现条码不显...
2020-04-22 17:12:27
2142
1
原创 Java 集合基础
Java集合框架Java集合框架可分为两大类,分别为Collection接口和Map接口,两者区别1. Collection是单列集合,Map是双列集合2.Conllection中List数据可重复,Set数据不可重复,Map 要求键是唯一,值可重复具体集合分类看下图集合总结一、 Collection接口List接口 (有序,可重复)ArrayList 优点:...
2019-10-24 16:15:14
202
转载 Redis cluster 高可用性与主备切换原理
redis cluster的高可用的原理,几乎跟哨兵是类似的1、判断节点宕机 如果一个节点认为另外一个节点宕机,那么就是pfail,主观宕机 如果多个节点都认为另外一个节点宕机了,那么就是fail,客观宕机,跟哨兵的原理几乎一样,sdown,odown 在cluster-node-timeout内,某个节点一直没有返回pong,那么就被认为pfail 如果一个节点认为某...
2019-10-14 11:20:13
2774
原创 Redis 缓存过期策略
Redis 过期策略有三种Redis 默认使用了惰性删除和定期删除(Memcached默认惰性删除)一、定时删除在设置key的过期时间时,同时为key创建一个定时器,让定时器在key过期时间来临时对key进行删除优点:保证内存尽快被释放缺点: 1)若过期key很多,删除这些key会占用很多CPU时间,在CPU紧张的情况下,CPU不能把所有时间来处理要紧的事情...
2019-10-11 16:51:17
275
原创 Redis 持久化
Redis有两种持久化方式 RDB和AOF需要注意:数据的恢复是阻塞操作(此间所到来的任何客户端读写请求都失效)一. RDB 快照(默认)1.优缺点执行机制:快照,直接将database中key-value的二进制形式存储到RDB文件中 优点:性能较高(因为是快照,且执行频率比AOF低,而RDB中直接存储的key-value的二进制形式,对于恢复数据也快) 缺点:在Sav...
2019-10-10 17:50:26
150
原创 Redis 数据类型
Redis支持5种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。1. StringString是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。value其实不仅是String,也可以是数字。string 类型是二进制安全的。意思是 r...
2019-10-10 15:51:02
114
原创 Redis主从同步原理
主从同步原理像MySQL一样,Redis是支持主从同步的,而且也支持一主多从以及多级从结构。主从结构,一是为了纯粹的冗余备份,二是为了提升读性能,比如很消耗性能的SORT就可以由从服务器来承担。Redis的主从同步是异步进行的,这意味着主从同步不会影响主逻辑,也不会降低Redis的处理性能。主从架构中,可以考虑关闭主服务器的数据持久化功能,只让从服务器进行持久化,这样可以提高主服务...
2019-09-28 17:56:31
324
原创 SpringCloud 之断路器(Hystrix)
断路器开启或者关闭的条件: 1、 当满足一定的阀值时候 (默认 10 秒内 超过 20 个请求出现问题 次数 ) 2、 当失败率达到一定的时候( 默认 10 秒内超过 秒内超过 50%的请求失败 ) 3、 到达以上阀值 ,断路器将会开启 4、 当开启的时候 ,所有请求 都不会进行转发 5、 一段时间之后( 默认是 5秒),这个时候断路器是半开状态, 会让其中一请求进行转发。如果...
2019-09-26 18:49:16
118
原创 Eureka 常用配置
Eureka Server常用配置#服务端开启自我保护模式,前面章节有介绍eureka.server.enable-self-preservation=true#扫描失效服务的间隔时间(单位毫秒,默认是60*1000)即60秒eureka.server.eviction-interval-timer-in-ms= 60000#间隔多长时间,清除过期的 delta 数据eureka....
2019-09-26 18:16:28
359
原创 Eureka 缓存机制详细配置
Eureka Server 数据存储我们知道 Eureka Server 在运行期间就是一个普通的 Java 项目,并没有使用数据库之类的存储软件,那么在运行期间是如何存储数据的呢?Eureka Server 的数据存储分了两层:数据存储层和缓存层。数据存储层记录注册到 Eureka Server 上的服务信息,缓存层是经过包装后的数据,可以直接在 Eureka Client 调用时返回。...
2019-09-26 18:14:56
708
原创 Eureka-Server 集群原理
Eureka 集群的工作原理。我们假设有三台 Eureka Server 组成的集群,第一台 Eureka Server 在北京机房,另外两台 Eureka Server 在深圳和西安机房。这样三台 Eureka Server 就组建成了一个跨区域的高可用集群,只要三个地方的任意一个机房不出现问题,都不会影响整个架构的稳定性。从图中可以看出 Eureka Server 集群相互之间通过 R...
2019-09-26 18:01:57
4070
原创 Eureka工作原理
Eureka 作为 Spring Cloud 体系中最核心、默认的注册中心组件,研究它的运行机制,有助于我们在工作中更好地使用它。Eureka 核心概念 Eureka包括两个端Eureka Server:注册中心服务端,用于维护和管理注册服务列表。 Eureka Client:注册中心客户端,向注册中心注册服务的应用都可以叫做Eureka Client(包括Eureka Serv...
2019-09-26 17:51:48
725
原创 Java 线程池
JAVA 线程池由 Executor 框架提供。 Executor 框架将处理请求任务的提交和它的执行解耦。可以制定执行策略。在线程池中执行线程可以重用已经存在的线程,而不是创建新的线程,可以在处理多请求时抵消线程创建、消亡产生的开销。如果线程池过大,会导致内存的高使用量,还可能耗尽资源。如果过小,会由于存在很多的处理器资源未工作,对吞吐量造成损失。 ThreadPoolExecut...
2019-09-19 17:21:55
170
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人