Day253,java后端面试怎么准备

./redis-benchmark -h 你的ip

-c Number of parallel connections (default 50)

#模拟有多少个客户端发送请求

-n Total number of requests (default 100000)

#总共上面的客户端发送多少请求

-d Data size of SET/GET value in bytes (default 2)

#每个数据的大小

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c53SICA1-1619621800383)(C:/Users/PePe/AppData/Roaming/Typora/typora-user-images/image-20210428202216765.png)]

根据你自己的高峰期的访问量,在高峰期,瞬时最大用户量会达到10万+,-c 100000,-n 10000000,-d 50

各种基准测试,直接出来

大部分情况下来说,看你的服务器的机器性能和配置,机器越牛逼,配置越高

单机上十几万,单机上二十万

很多公司里,给一些低配置的服务器,操作复杂度

几万,单机做到,差不多了

redis提供的高并发,至少到上万,没问题

几万~十几万/二十万不等

QPS的两个杀手

  • 一个是复杂操作,lrange,挺多的;

  • value很大,2 byte,我之前用redis做大规模的缓存

2、水平扩容redis读节点,提升度吞吐量


就按照上一节课讲解的,再向其他服务器上搭建redis从节点,单个从节点读请QPS在5万左右,两个redis从节点,所有的读请求打到两台机器上去,承载整个集群读QPS在10万+,不行就再加从节点

二、redis主从架构下如何才能做到99.99%的高可用性

=======================================================================================

0、什么是系统不可用?


[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L5T46K5C-1619621800385)(C:/Users/PePe/AppData/Roaming/Typora/typora-user-images/image-20210428203954501.png)]

1、什么是99.99%高可用?


让系统在全年99.9999%都是可以对外服务,可以用的

架构上,高可用性,99.99%的高可用性

讲的学术,99.99%,公式,系统可用的时间 / 系统故障的时间,

365天,在365天 * 99.99%的时间内,你的系统都是可以哗哗对外提供服务的,那就是高可用性,99.99%

系统可用的时间 / 总的时间 = 高可用性,然后会对各种时间的概念,说一大堆解释

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qeyVseuD-1619621800386)(C:/Users/PePe/AppData/Roaming/Typora/typora-user-images/image-20210428204223257.png)]

2、redis不可用是什么?单实例不可用?主从架构不可用?不可用的后果是什么?


  • redis集群中,master节点宕机代表该redis系统不可用状态,因为master是执行写操作,slave执行读操作,当master宕机,那整个服务中就没有一个能进行写缓存操作,并且不能向其他的slave节点数据复制,一次就相当于整个缓存系统不可用,大量的请求去请求mysql,于是mysql宕机,于是整个系统就宕机死亡

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z2Fyjmv5-1619621800389)(C:/Users/PePe/AppData/Roaming/Typora/typora-user-images/image-20210428205201947.png)]

3、redis怎么才能做到高可用?


  • 使用redis哨兵机制来保证

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n58erM9i-1619621800390)(C:/Users/PePe/AppData/Roaming/Typora/typora-user-images/image-20210428205718937.png)]


三、哨兵架构的相关基础知识

=======================================================================

1、哨兵的介绍


sentinal,中文名是哨兵

哨兵的主要功能如下:

  • (1)集群监控,负责监控redis master和slave进程是否正常工作

  • (2)消息通知,如果某个redis实例有故障,那么哨兵负责发送消息作为报警通知给管理员

  • (3)故障转移,如果master node挂掉了,会自动转移到slave node上

  • (4)配置中心,如果故障转移发生了,通知client客户端新的master地址

哨兵本身也是分布式的,作为一个哨兵集群去运行,互相协同工作

  • (1)故障转移时,判断一个master node是宕机了,需要大部分的哨兵都同意才行,涉及到了分布式选举的问题

  • (2)即使部分哨兵节点挂掉了,哨兵集群还是能正常工作的,因为如果一个作为高可用机制重要组成部分的故障转移系统本身是单点的,那就很坑爹了

目前采用的是sentinal 2版本,sentinal 2相对于sentinal 1来说,重写了很多代码,主要是让故障转移的机制和算法变得更加健壮和简单

2、哨兵的核心知识


  • (1)哨兵至少需要3个实例,来保证自己的健壮性

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
img

知其然不知其所以然,大厂常问面试技术如何复习?

1、热门面试题及答案大全

面试前做足功夫,让你面试成功率提升一截,这里一份热门350道一线互联网常问面试题及答案助你拿offer

2、多线程、高并发、缓存入门到实战项目pdf书籍

3、文中提到面试题答案整理

4、Java核心知识面试宝典

覆盖了JVM 、JAVA集合、JAVA多线程并发、JAVA基础、Spring原理、微服务、Netty与RPC、网络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB 、Cassandra、设计模式、负载均衡、数据库、一致性算法 、JAVA算法、数据结构、算法、分布式缓存、Hadoop、Spark、Storm的大量技术点且讲解的非常深入

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img

[外链图片转存中…(img-3cNpuxUF-1712630511300)]

[外链图片转存中…(img-0HyFY83o-1712630511300)]

[外链图片转存中…(img-uEhPsFbL-1712630511300)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-CcbI3pOq-1712630511301)]

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值