Java高级架构面试真题汇总:Nginx、 Netty、Zookeeper、Tomcat、Dubbo

(一)Nginx是什么——相关面试题

Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

1、请列举Nginx的一些特性。

2、解释Nginx是否支持将请求压缩到上游?

3、用Nginx服务器解释-s的目的是什么?

4、请解释Nginx如何处理HTTP请求。

5、在Nginx中,如何使用未定义的服务器名称来阻止处理请求?

6、在Nginx中,解释如何在URL中保留双斜线?

7、请列举Nginx服务器的最佳用途。

8、请解释Nginx服务器上的Master和Worker进程分别是什么?

9、解释如何在Nginx服务器上添加模块?

10、请解释是否有可能将Nginx的错误替换为502错误、503?


(二)Netty是什么——相关面试题

Netty 是一个吸收了多种协议(包括FTP、SMTP、HTTP等各种二进制文本协议)的实现经验,并经过相当精心设计的项目。最终,Netty 成功的找到了一种方式,在保证易于开发的同时还保证了其应用的性能,稳定性和伸缩性。

1、Java框架Netty的io结构是什么?

2、讲讲Netty的特点?

3、如何使用 Java NIO 搭建简单的客户端与服务端实现网络通讯?

4、如何使用 Netty 搭建简单的客户端与服务端实现网络通讯?

5、讲讲Netty 底层操作与 Java NIO 操作对应关系?

6、Channel 与 Socket是什么关系,Channel 与 EventLoop是什么关系,

7、Channel 与 ChannelPipeline是什么关系?

8、EventLoop与EventLoopGroup 是什么关系?

9、说说Netty 中几个重要的对象是什么,它们之间的关系是什么?

10、Netty 的线程模型是什么?


(三)Kafka是什么——相关面试题

Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。

1、请说明什么是Apache Kafka?

2、请说明什么是传统的消息传递方法?

3、请说明Kafka相对传统技术有什么优势?

4、在Kafka中broker的意义是什么?

5、Kafka服务器能接收到的最大信息是多少?

6、解释Kafka的Zookeeper是什么?我们可以在没有Zookeeper的情况下使用Kafka吗?

7、解释Kafka的用户如何消费信息?

8、解释如何提高远程用户的吞吐量?

9、解释一下,在数据制作过程中,你如何能从Kafka得到准确的信息?

10、Kafka为什么需要复制?

####需要面试题汇总(可私信我免费领取答案)私信【面试资料】即可领取####


(四)Mysql是什么——相关面试题

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

1、 如果发现CPU,或者IO压力很大,怎么定位问题?

2、问了mysql binlog的几种日志录入格式以及区别

3、 如何提高insert的性能?

4、 和上一个问题相关,如果insert等dml语句的性能有问题的话,或者其他问题的存在,可能造成同步延迟,所以如何有效避免同步延迟的出现?

5、有没有用GTID,对GTID了解吗?

6、Innodb是行锁,那什么时候会产生行锁,什么情况下会变成表锁?

7、 使用过其他分支版本的数据库吗?percona,mariadb等。对percona的pxc集群了解吗?

8、 除了mysql,还了解过其他数据库吗?oracle,redis,mongodb等。

9、新创建的数据库,需要调整哪些参数?

10、 mysql的权限怎么管理?


(五)Zookeeper是什么——相关面试题

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

1、zookeeper是如何保证事务的顺序一致性的

2、zookeeper是如何选取主leader的?

3、zookeeper是什么框架?

4、有哪些应用场景?

5、使用什么协议?

6、说说分布式一致性算法Paxos

7、说一说选举算法及流程

8、有哪几种部署模式?

9、Zookeeper集群中服务器之间是如何通信的

10、ZooKeeper有几种节点类型?


(六)Tomcat是什么——相关面试题

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。

1、请说明NAT协议的目的是什么?

2、请说明select * from tab的输出结果是什么?

3、请解释如何配置Tomcat来使用IIS和NTLM ?

4、请解释一下什么时候可以使用“.”,什么时候可以使用“[]”?

5、请解释Tomcat的默认端口是什么?

6、请解释Tomcat中使用的连接器是什么?

7、请阐述Catalina的配置文件有哪些?

8、请解释将Tomcat作为一个Windows 服务运行会带来哪些好处?

9、解释何时在Tomcat使用SSL ?

10、解释如何使用WAR文件部署web应用程序?


(七)Dubbo是什么——相关面试题

Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。Dubbo[]是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。

1、Dubbo 核心的配置有哪些?

2、Dubbo telnet 命令能做什么?

3、Dubbo启动时如果依赖的服务不可用会怎样?

4、Dubbo推荐使用什么序列化框架,你知道的还有哪些?

5、Dubbo默认使用的是什么通信框架,还有别的选择吗?

6、Dubbo有哪几种集群容错方案,默认是哪种?

7、Dubbo有哪几种负载均衡策略,默认是哪种?

8、Dubbo的管理控制台能做什么?

9、Dubbo支持服务多协议吗?

10、Dubbo可以对结果进行缓存吗?

需要面试题汇总可以加一下QQ:1547737063即可免费获取

附加java开发的资料(面试资源与经验总结,Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术视频教程资料,架构思维导图,以及面试资料,了解最新的学习动态;了解最新的阿里、京东招聘资讯)

你可能感兴趣的:(Java高级架构面试真题汇总:Nginx、 Netty、Zookeeper、Tomcat、Dubbo)