架构师必备之常见面试题整理——高性能三十问!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了架构师必备之常见面试题整理——高性能三十问!相关的知识,希望对你有一定的参考价值。
分布式架构(一)
大型互联网架构演进过程,架构师应具备的分布式知识,主流分布式架构设计详解
分布式系统
分布式系统是一个由硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。其拥有如下特点
- 分布性
- 对等性
- 并发性
- 缺乏全局时钟
- 故障总是会发生
(开心一笑)
分布式协调和分流(二)
Zookeeper分布式环境指挥官,nginx高并发分流进阶实战
应用场景
Zookeeper的功能很强大,应用场景很多,结合我实际工作中使用Dubbo框架的情况,Zookeeper主要是做注册中心用。
基于Dubbo框架开发的提供者、消费者都向Zookeeper注册自己的URL,消费者还能拿到并订阅提供者的注册URL,以便在后续程序的执行中去调用提供者。而提供者发生了变动,也会通过Zookeeper向订阅的消费者发送通知。
Zookeeper有哪几种节点类型
持久节点(PERSISTENT)
所谓持久节点,是指在节点创建后,就一直存在,直到有删除操作来主动清除这个节点——不会因为创建该节点的客户端会话失效而消失。
持久顺序节点(PERSISTENT_SEQUENTIAL)
这类节点的基本特性和上面的节点类型是一致的。额外的特性是,在ZK中,每个父节点会为他的第一级子节点维护一份时序,会记录每个子节点创建的先后顺序。基于这个特性,在创建子节点的时候,可以设置这个属性,那么在创建节点过程中,ZK会自动为给定节点名加上一个数字后缀,作为新的节点名。这个数字后缀的范围是整型的最大值。
临时节点(EPHEMERAL)
和持久节点不同的是,临时节点的生命周期和客户端会话绑定。也就是说,如果客户端会话失效,那么这个节点就会自动被清除掉。注意,这里提到的是会话失效,而非连接断开。另外,在临时节点下面不能创建子节点。
临时顺序节点(EPHEMERAL_SEQUENTIAL)
可以用来实现分布式锁
高性能缓存和NoSQL面试题(三)
Redis高性能缓存数据库,Memcached进阶实战,高性能缓存开发实战,MongoDB进阶实战
(1)Memcached服务在企业集群架构中应用场景
(2)Memcached服务在不同企业业务应用场景中的工作流程
(3)Memcached服务分布式集群如何实现?
(4)Memcached服务特点及工作原理是什么?
(5)简述Memcached内存管理机制原理?
(6)mysql的delete与truncate区别?
(7)Redis常见的性能问题怎么解决?
(8)Redis与memcached有什么区别?
(9)Redis有哪些数据结构?
(10)Redis持久化方案区别以及优缺点?
(11)如何来维护集群之间的关系,或者说集群之间如何建立连接?
(12)在项目中缓存是如何使用的?缓存如果使用不当会造成什么后果?
(13)redis和memcached有什么区别?redis的线程模型是什么?为什么单线程的redis比多线程的memcached效率要高得多?
(14)redis都有哪些数据类型?分别在哪些场景下使用比较合适?
(15)redis的过期策略都有哪些?手写一下LRU代码实现?
异步与消息中间件面试题(四)
RabbitMq消息中间件,ActiveMq消息中间件,kafka百万级吞实战
(1)如何确保消息正确地发送至RabbitMQ?
(2) 如何确保消息接收方消费了消息?
(3) 如何避免消息重复投递或重复消费?
(4)使用RabbitMQ有什么好处?
(5)如何在activemq.xml里面配置消息队列的大小,来保证队列不会溢出?
(6)如何保证消息队列的高可用啊?
(7)如何保证消息不被重复消费啊(如何进行消息队列的幂等性问题)?
(8)如何保证消息的可靠性传输(如何处理消息丢失的问题)?
(9)如何保证消息的顺序性?
(10)如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?
(11)如果让你写一个消息队列,该如何进行架构设计啊?说一下你的思路
(12)为什么使用消息队列啊?消息队列有什么优点和缺点啊?
(13)kafka、activemq、rabbitmq、rocketmq都有什么优点和缺点啊?
请说明Kafka相对传统技术有什么优势?
(14)在Kafka中broker的意义是什么?
(15)Kafka服务器能接收到的最大信息是多少?
需要面试题汇总可关注我的公众号【风平浪静如码】领取!
附:高性能架构学习路线导图
写在最后:
欢迎大家关注我新开通的公众号【风平浪静如码】,海量Java相关文章,学习资料都会在里面更新,整理的资料也会放在里面。
觉得写的还不错的就点个赞,加个关注呗!点关注,不迷路,持续更新!!!
以上是关于架构师必备之常见面试题整理——高性能三十问!的主要内容,如果未能解决你的问题,请参考以下文章