上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 91 下一页
  2021年4月25日
该文被密码保护。 阅读全文
posted @ 2021-04-25 22:29 duanxz 阅读(7) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2021-04-25 22:24 duanxz 阅读(11) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2021-04-25 22:23 duanxz 阅读(11) 评论(0) 推荐(0)
摘要: 一、从最简单的开始:List 队列(LPUSH+BRPOP实现) 首先,我们先从最简单的场景开始讲起。 如果你的业务需求足够简单,想把 Redis 当作队列来使用,肯定最先想到的就是使用 List 这个数据类型。 因为 List 底层的实现就是一个「链表」,在头部和尾部操作元素,时间复杂度都是 O( 阅读全文
posted @ 2021-04-25 20:06 duanxz 阅读(3464) 评论(0) 推荐(2)
摘要: 说清楚几个问题:1.bitmap的原理、用法。2.bitmap的优势、限制。3.bitmap空间、时间粗略计算方式。4.bitmap的使用场景。5.使用bitmap过程中可能会遇到的坑。6.bitmap进阶用法(思考)。 一、bitmap的原理、用法 8bit = 1b = 0.001kb bitm 阅读全文
posted @ 2021-04-25 16:53 duanxz 阅读(8309) 评论(0) 推荐(1)
摘要: 还没有安装Redis的同学,可以参考我先前的文章安装,传送门《玩转Redis-Redis安装、后台启动、卸载》。Redis 4.0开始以插件形式提供布隆过滤器。 # docker方式安装 > docker pull redislabs/rebloom # 拉取镜像> docker run -p637 阅读全文
posted @ 2021-04-25 14:58 duanxz 阅读(1117) 评论(0) 推荐(0)
摘要: 前面讲到bloomfilter的原理及guava实现的bloomfilter的用法,现在看看redis如何实现: 一、bitmaps 我们知道计算机是以二进制位作为底层存储的基础单位,一个字节等于8位。 比如“big”字符串是由三个字符组成的,这三个字符对应的ASCII码分为是98、105、103, 阅读全文
posted @ 2021-04-25 09:29 duanxz 阅读(2706) 评论(0) 推荐(1)
摘要: Guava中的布隆过滤器 示例: import com.google.common.base.Charsets; import com.google.common.hash.BloomFilter; import com.google.common.hash.Funnels; public clas 阅读全文
posted @ 2021-04-25 09:17 duanxz 阅读(1720) 评论(0) 推荐(0)
  2021年4月15日
摘要: 这几天发现一些项目(没有引入redis包的),因为redis的健康检查失败。初步怀疑是项目引入了redis,但在build.gradle中没有相关的jar引入,因为是自定义的jar中间接引入了。需要查看依赖关系。 1、用gradle命令查看依赖关系: 2、用idea查看依赖关系: 看下面输出的依赖关 阅读全文
posted @ 2021-04-15 16:52 duanxz 阅读(4640) 评论(0) 推荐(0)
  2021年4月14日
摘要: 缓存 本次主要讨论缓存。缓存在日常开发中举足轻重,如果你的应用对某类数据有着较高的读取频次,并且改动较小时那就非常适合利用缓存来提高性能。 缓存之所以可以提高性能是因为它的读取效率很高,就像是 CPU 的 L1、L2、L3 缓存一样,级别越高相应的读取速度也会越快。 但也不是什么好处都占,读取速度快 阅读全文
posted @ 2021-04-14 20:53 duanxz 阅读(1890) 评论(0) 推荐(0)
摘要: 限流是保护高并发系统的三把利器之一,另外两个是缓存和降级。 限流的目的是通过对并发访问/请求进行限速或者一个时间窗口内的的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务或进行流量整形。 常用的限流方式和场景有: A、限制总并发数(比如数据库连接池、线程池)B、限制瞬时并发数(如nginx的l 阅读全文
posted @ 2021-04-14 19:25 duanxz 阅读(1759) 评论(0) 推荐(0)
  2021年4月5日
摘要: 要点解说 假设现在有一大批需要进行计算的任务,为了提高整批任务的执行效率,你可能会使用线程池,向线程池中不断submit异步计算任务,同时你需要保留与每个任务关联的Future,最后遍历这些Future,通过调用Future接口实现类的get方法获取整批计算任务的各个结果。 虽然使用了线程池提高了整 阅读全文
posted @ 2021-04-05 13:19 duanxz 阅读(285) 评论(0) 推荐(0)
摘要: 《Thread之四:java线程返回结果的方法》 《Runnable、Callable、Future和FutureTask之一:获取线程的返回值》 《CompletionService之一:获得线程(线程池的)处理结果》 使用线程池的时候,经常会有需要获得线程处理结果的时候。此时我们通常有两种做法: 阅读全文
posted @ 2021-04-05 11:08 duanxz 阅读(517) 评论(0) 推荐(0)
  2021年4月2日
摘要: 一、tomcat原理 二、tomcat线程池介绍 三、tomcat线程池工作原理 四、tomcat线程池跟jdk线程池的主要区别 一、tomcat原理 功能组件结构 Tomcat 的核心功能有两个,分别是负责接收和反馈外部请求的连接器 Connector,和负责处理请求的容器 Container。其 阅读全文
posted @ 2021-04-02 09:11 duanxz 阅读(4191) 评论(0) 推荐(0)
摘要: 是 阅读全文
posted @ 2021-04-02 09:08 duanxz 阅读(202) 评论(0) 推荐(0)
  2021年4月1日
摘要: 一、线程池工作原理(新任务进入时线程池的执行策略)二、创建线程池的方式三、合理配置线程池四、ThreadPoolExecutor的函数说明 一、线程池工作原理(新任务进入时线程池的执行策略) 线程池的触发时机如下图: 当一个任务通过execute(Runnable)方法欲添加到线程池时: 1、如果此 阅读全文
posted @ 2021-04-01 15:29 duanxz 阅读(375) 评论(0) 推荐(0)
摘要: 背景 部分业务校验规范或疏忽场景,传入bad request 导致接口熔断,影响接口正常流量 处理 重写Feign error decoder逻辑 import com.netflix.hystrix.exception.HystrixBadRequestException; import feig 阅读全文
posted @ 2021-04-01 11:25 duanxz 阅读(515) 评论(0) 推荐(0)
  2021年3月30日
摘要: 一、Hystrix的Feign熔断的粒度 Feign可以直接去集成Hystrix熔断,那么默认的熔断粒度是多大呢?或者说,当serviceA调用serviceB#method1(param)时,如果出现超时导致熔断后,serviceA还能不能调用serviceB#method2(param)呢? 我 阅读全文
posted @ 2021-03-30 17:33 duanxz 阅读(1654) 评论(0) 推荐(0)
  2021年3月15日
摘要: 通常在编写业务代码时,会通过下面2种方式来编写各种业务场景。 "返回异常码”:在业务代码中return错误码 “抛出异常+捕获转为返回异常码”:有种观点认为,业务失败异常流程应该基于Exception控制,在这样的项目里就会看到大量的基于业务定义的Exception类,比如UserNotFoundE 阅读全文
posted @ 2021-03-15 10:19 duanxz 阅读(760) 评论(0) 推荐(2)
  2021年1月14日
摘要: 《consul之:常用API接口》 《springCloud+consul优雅停机》 《Consul之:服务健康监测》 之前的方案:先调用待更新的模块的shutdown的Endpoint,这是springboot的功能实现,consul上可见服务确实下线了,再kill掉进程。但是还会有一些请求被转发 阅读全文
posted @ 2021-01-14 16:34 duanxz 阅读(2234) 评论(0) 推荐(0)
  2020年12月18日
该文被密码保护。 阅读全文
posted @ 2020-12-18 15:34 duanxz 阅读(6) 评论(0) 推荐(0)
  2020年12月7日
摘要: 销售点终端(POS):即Point of Sales。它是指摆放在商户收银台,可受理银行卡的设备。 POSProxy:POS前置系统 硬件安全模块(英语:hardware security module,缩写HSM)是一种用于保护和管理强认证系统所使用的密钥,并同时提供相关密码学操作的计算机硬件设备 阅读全文
posted @ 2020-12-07 10:37 duanxz 阅读(4318) 评论(0) 推荐(1)
该文被密码保护。 阅读全文
posted @ 2020-12-07 10:21 duanxz 阅读(7) 评论(0) 推荐(0)
  2020年12月1日
摘要: 微服务和传统的单块应用相比,在测试策略上,会有一些不太一样的地方。简单来说,在微服务架构中,测试的层次变得更多,而且对环境的搭建要求更高。比如对单块应用,在一个机器上就可以setup出所有的依赖,但是在微服务场景下,由于依赖的服务往往很多,要搭建一个完整的环境非常困难,这对团队的DevOps的能力也 阅读全文
posted @ 2020-12-01 14:43 duanxz 阅读(1334) 评论(0) 推荐(2)
  2020年10月29日
摘要: Hazelcast是什么 “分布式”、“集群服务”、“网格式内存数据”、“分布式缓存“、“弹性可伸缩服务”——这些牛逼闪闪的名词拿到哪都是ITer装逼的不二之选。在Javaer的世界,有这样一个开源项目,只需要引入一个jar包、只需简单的配置和编码即可实现以上高端技能,他就是 Hazelcast。 阅读全文
posted @ 2020-10-29 09:16 duanxz 阅读(1401) 评论(0) 推荐(0)
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 91 下一页