面试常问

2:LVS、Nginx、HAproxy有什么区别?在工作中怎么选择!

LVS:

1,抗负载能力强,是工作在网络4层之上仅作分发之用,没有流量的产生,这个特点也决定了它在负载均衡软件里的性能最强的,对内存和cpu资源消耗比较低。
2,配置较低,这是一个缺点也是一个优点,因为没有可太多配置的东西,所以并不需要太多接触,大大减少了人为出错的几率。
3,工作稳定,因为其本身抗负载均衡能力很强,自身有完整的双机热备方案,如LVS+Keepalived,不过我们在项目实施中用得最多的还是LVS/DR+Keepalived。
4,无流量,LVS只分发请求‘,而流量并不从它本身出去,这保证了均衡器IO的性能不会收到大流量的影响。

Nginx:

1,工作在网络的7层之上,可以针对http应用做一些分流的策略,比如针对域名,目录结构,它的正则规则比HAproxy更为强大和灵活
2:Nginx对网络稳定性的依赖非常小
3,可以承担高负载压力且稳定,在硬件不差的情况下一般能支撑几万次的并发量,负载度比LVS相对小些。
4,Nginx可以通过端口检测到服务器内部的故障,比如根据服务器处理网页返回的状态码,超时等等
5,Nginx不仅仅是一款优秀的负载均衡器/反向代理软件,它同时也是功能强大的Web应用服务器。

Haproxy:

1,HAproxy也是支持虚拟主机的。
2,HAproxy的优点能够补充Nginx的一些缺点,比如支持Session的保持,Cookie的引导:同时支持通过获取指定的url来检测后端服务器的状态。
3,HAproxy跟LVS类似,本身就只是一款负载均衡软件;单纯从效率上来讲HAproxy会比Nginx有更出色的负载均衡速度,在并发处理上也是优于Nginx的。
4,HAproxy支持TCP协议的负载均衡转发,可以对MySQL读进行负载均衡,对后端的MySQL节点进行检测和负载均衡

按照各自的优势:

HAproxy和Nginx由于可以做七层的转发,所以URL和目录的转发都可以做在很大并发量的时候我们就要选择LVS,像中小型公司的话并发量没那么大选择HAproxy或者Nginx足已,由于HAproxy由是专业的代理服务器配置简单,所以中小型企业推荐使用HAproxy+Nginx。大型企业未来追求稳定性推荐使用LVS+Nginx

3:简述NDS进行域名解析的过程!

1、当客户机提出查询请求时,首先在本地计算机的缓存中查找。如果在本地无法获得查询信息,则将查询请求发给DNS服务器。
2、首先客户机将域名查询请求发送到本地DNS服务器,当本地DNS服务器接到查询后,首先在该服务器管理的区域的记录中查找,如果找到该记录,则利用此记录进行解析;如果没有区域信息可以满足查询要求,服务器在本地的缓存中查找。
3、如果本地服务器不能在本地找到客户机查询的信息,将客户机请求发送到根域名DNS服务器。
4、根域名服务器负责解析客户机请求的根域部分,它将包含下一级域名信息的DNS服务器地址返回给客户机的DNS服务器地址。
5、客户机的DNS服务器利用根域名服务器解析的地址访问下一级DNS服务器,得到再下一级域我的DNS服务器地址。
6、按照上述递归方法逐级接近查询目标,最后在有目标域名的DNS服务器上找到相应IP地址信息
7、客户机的本地DNS服务器将递归查询结果返回客户机。
8、客户机利用从本地DNS服务器查询得到的IP访问目标主机,就完成了一个解析过程.

4:讲述Tomcat 8005、8009、8080三个端口的含义!

8005--关闭tomcat进程所用。当执行shutdown.sh关闭tomcat时就是连接8005端口
8009--httpd等反向代理tomcat时就可以使用使用ajp协议反向代理到该端口。
8080--默认的http监听端口

5:讲一下Keepalived的工作原理!

https://blog.csdn.net/rzlongg/article/details/90575434

6:如何优化linux系统

⑴登录系统:不使用root登录,通过sudo授权管理,使用普通用户登录。
⑵禁止SSH远程:更改默认的远程连接SSH服务及禁止root远程连接。
⑶时间同步:定时自动更新服务器时间。
⑷配置yum更新源,从国内更新下载安装rpm包。
⑸关闭selinux及iptables(iptables工作场景如有wan ip,一般要打开,高并发除外)
⑹调整文件描述符数量,进程及文件的打开都会消耗文件描述符。
⑺定时自动清理/var/spool/clientmquene/目录垃圾文件,防止节点被占满(c6.4默认没有sendmail,因此可以不配。)
⑻精简开机启动服务(crond、sshd、network、rsyslog)
⑼Linux内核参数优化/etc/sysctl.conf,执行sysct -p生效。
更改字符集,支持中文,但是还是建议使用英文,防止乱码问题出现。
⑾锁定关键系统文件(chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab 处理以上内容后,把chatter改名,就更安全了。)
⑿清空/etc/issue,去除系统及内核版本登陆前的屏幕显示。

你可能感兴趣的:(面试常问)