面试系列
文章平均质量分 83
hnbyboy
热爱技术
展开
-
0004:Spring Cloud Ribbon 中的 7 种负载均衡策略
Ribbon 是 Spring Cloud 技术栈中非常重要的基础框架,它为 Spring Cloud 提供了负载均衡的能力,比如 Fegin 和 OpenFegin 都是基于 Ribbon 实现的,就连 Nacos 中的负载均衡也使用了 Ribbon 框架。Ribbon 框架的强大之处在于,它不仅内置了 7 种负载均衡策略,同时还支持用户自定义负载均衡策略,所以其开放性和便利性也是它得以流行的主要原因。原创 2022-10-10 23:06:27 · 582 阅读 · 0 评论 -
0003:为什么创建线程池一定要用ThreadPoolExecutor?
线程池的创建方式总共分为两大类:手动使用 ThreadPoolExecutor 创建线程池和自动使用 Executors 执行器创建线程池的方式。其中使用 Executors 自动创建线程的方式,因为线程个数或者任务个数不可控,可能会导致内存溢出的风险,所以在创建线程池时,建议使用 ThreadPoolExecutor 的方式来创建。原创 2022-10-10 22:54:42 · 367 阅读 · 0 评论 -
0002:说一下线程池7个参数的含义
corePoolSize:核心线程数,线程池正常情况下保持的线程数,大户人家“长工”的数量。maximumPoolSize:最大线程数,当线程池繁忙时最多可以拥有的线程数,大户人家“长工”+“短工”的总数量。keepAliveTime:空闲线程存活时间,没有活之后“短工”可以生存的最大时间。TimeUnit:时间单位,配合参数 3 一起使用,用于描述参数 3 的时间单位。BlockingQueue:线程池的任务队列,用于保存线程池待执行任务的容器。原创 2022-10-09 21:33:51 · 209 阅读 · 0 评论 -
0001:List去重的6中方法?
本文我们介绍了 6 种集合去重的方法,其中实现最简洁,且去重之后的顺序能和原集合保持一致的实现方法,只有两种:LinkedHashSet 去重和 Stream 去重,而后一种去重方法无需借助新集合,是我们优先考虑的去重方法。原创 2022-10-09 21:09:47 · 136 阅读 · 0 评论 -
Docker的安装
本案例以Centos8为例,在Centos8中安装docker,需要系统为64位,也内核版本位3.10以上查看系统信息:$ lsb_release -a如果出现‘lsb_release: command not found’ 情况,请先执行安装命令yum install -y redhat-lsb查看内核版本$uname -r使用yum 安装docker$yum - y install docker使用官方脚本安装$curl -fsSL https://get.docker.原创 2021-12-17 23:28:42 · 468 阅读 · 0 评论 -
SpringBoot+Redis解决海量重复提交问题
一、前言在实际的开发项目中,一个对外暴露的接口往往会面临很多次请求,我们来解释一下幂等的概念:任意多次执行所产生的影响均与一次执行的影响相同。按照这个含义,最终的含义就是 对数据库的影响只能是一次性的,不能重复处理。如何保证其幂等性,通常有以下手段:1、数据库建立唯一性索引,可以保证最终插入数据库的只有一条数据。2、token机制,每次接口请求前先获取一个token,然后再下次请求的时候在请求的header体中加上这个token,后台进行验证,如果验证通过删除token,下次请求再次判断token。转载 2021-11-09 23:04:30 · 167 阅读 · 0 评论 -
限流:计数器,漏桶,令牌桶,三大算法的原理与实战
https://www.cnblogs.com/crazymakercircle/p/15187184.html限流限流 是面试中常见的面试题。为什么要限流简单来说限流在很多场景中用来限制并发和请求量,比如说秒杀抢购,保护自身系统和 下游系统不被巨型流量冲垮等。以微博为例,例如某明星公布了恋情,访问从平时的50万增加到500万,系统的规划能力,最多可用支持200万访问,那么就要执行限流规则,保证是一个可用的状态,不至于服务器崩溃,所以请求不可用参考链接系统架构知识图谱(一张价值10w的系统架转载 2021-09-26 21:58:47 · 690 阅读 · 1 评论