2022-03-24准备

有些就实话实说比较好,就比如说我们就2个销售,而且我自己也负责销售。

 

1.负载均衡相关概念、策略,常用的负载均衡器(主流的有几种方案应该知道吧)

大公司用F5性能最好 有内置的操作系统,一个10几万起步。

haproxy装在服务器,做负载均衡是主流。

分四层代理负载均衡器(Linux的LVS,基于传输层协议TCP,仅支持轮询的负载均衡策略,效率高但是功能少)和七层代理负载均衡器(包括Nginx、haproxy,基于HTTP,支持丰富的负载均衡策略)---》他们的区别是HAPROXY专注于负载这件事,而nginx功能很多 负载只是其中一个,所以HAPROXY负载转发性能更好,而且对seafile来说session会话功能比较重要,nginx配置会话比较麻烦,所以我们选用haproxy。

新概念:pv( page view) ,所谓负载均衡就是要让集群中每台机器的pv保持差不多。

什么是会话保持:要保证在一次会话过程中,发起的多个请求都会落到同一台机器上。

为什么要会话保持:因为HTTP是一种无状态协议,对请求和响应的状态都不保存,会导致用户登陆过,但是跳转网站其他页面时候又要重新登录。 所以需要Cookie和Session技术。

什么是Cookie:是保存在客户端的一小段文本,随着客户端每一个请求发送cookie字段到服务端。为什么要保存在客户端,因为成千上万客户端信息都放在服务端,服务端压力太大。

什么是Session:Session保存在服务端,相当于一个表记录所有SessionID,每个SessionID对应唯一一个客户端。

会话保持的工作原理:客户端发起请求---》服务端检查是否有cookie,如果没有给你生成一个set-cookie字段保存cookie,并写入你的SessionID来标识你这个客户端。----》客户端收到set-cookie字段,之后每次请求都带上Cookie信息和SessionID---》服务端返回响应

 

haproxy怎么保证不会单点故障:部署两个haproxy,通过keepalived来实现主备的高可用。keepalived相比于heartbeat部署起来要简单太多。

keepalived的工作原理是什么:他通过七层协议中三四五层的交换机制来监控节点服务状态,客户端通过一个虚拟IP地址来访问,当keepalived检测到主负载均衡不可用的时候,可以主动将VIP切换到备份负载均衡器上。

 

常用的负载均衡策略有哪些,你们用的有哪些?---》我们就用的默认轮询策略

1.轮询策略:所有请求均匀分配(排排坐吃果果,你一个我一个)

2.权重策略: 手动设置权重,性能高的服务器承担更多负载(我比你胖,我要吃10个)

3.IP哈希:以IP地址为标准,对服务器数量取模运算(一个萝卜(IP)一个坑,很不建议,无法保持负载的均衡)

4.IP_URL哈希:以IP发来的URL为标准,比如1.jpg取模之后余数为1 永远去服务器1处理,2.jpg永远去2服务器处理,处理粒度更细,但是还是负载不均衡。

5. Fair:优先将请求分配给低延时的机器(你们谁闲着就挑粪去)

 

3.数据库MariaDB的工作原理、优势,如何保证数据可靠性的

MariaDB集群分为主从和多主,主从的话异步同步有延迟,可能造成数据丢失。多主的方案是强一致性,来保证数据延迟,多主节点之间通过wsrep协议/接口来实现高可靠。

什么是wsrep API:是一种数据库插件接口,主要针对写复制,该程序主要用于定义应用程序如何调用复制库进行回写。

为什么用wsrep API:数据库的一个对象,被客户端修改,导致事务产生一系列的原子性改变,在集群中所有的节点都具备相同的对象,由同步复制机制应用到各个节点。

【数据库实现负载均衡的思路跟seafile是一样的】

 

4.统一认证的原理是什么?

 

 

4.存储你们是怎么保证数据可靠性的,怎么容灾的。

RPO:(Recovery Point Obejective,恢复点目标)是指业务系统所允许的在灾难过程中的最大数据丢失量,用来衡量容灾系统的数据冗余备份能力。

RTO:(Recovery Time Objective,恢复时间目标)是指信息系统从灾难状态恢复到可运行状态所需的时间,用来衡量容灾系统的业务恢复能力。

 

如果服务中心被摧毁,那我们在异地恢复服务的时间应该在1天以内。数据冗余就是不会丢失,都有异地的备份。

我们的容灾是这样的,备份服务器使用了类似seafile同步客户端的算法,从服务器检索增量的修改,以接近实时的频率来更新备份服务器的数据。并且每隔1小时会主动检查一次主服务器上的所有数据库。

还有数据库数据需要备份,通过msqldump工具来导出,这些数据可以通过crontab任务来定时备份。延时备份也不会影响资料库数据的完整性。

这就是我们的容灾方案,他可以保证你的任何数据都不会丢失,通过重新搭建服务和快速恢复这两部分数据,可以很快建立业务,集群恢复的RTO在一天以内。 如果你是一个单节点的方案,那么1小时以内就可以恢复。

 

4.web服务怎么保证安全性:

(1)防火墙过滤网络攻击,杀毒软件查杀

(2)尽量避免暴露不必要的端口,比如我们就只开放了80和443
(3)限制登录IP段,我们有限制登录的功能

 

4.nginx反向代理有什么好处

为什么要用反向代理,因为正向代理是代理服务器和客户端之间做一些配置,需要用户有感知。而反向代理是应用服务器和代理服务器之间做一些配置,用户无感知。

反向代理的好处是可以只暴露代理服务器地址,隐藏应用真实服务器地址,提高了安全性。对于客户端的请求,可以进行一些过滤处理掉一些不安全的信息。代理服务器硬盘还会缓存一些访问过的数据,来提高访问速度。

 

 

4.你们网盘怎么保证同步的速度,你们如何处理数据的。 

 一个是本地来计算索引并且分块,另一个是多线程同步,主要还是自研的同步算法性能高。

 

6.你们的系统各部分都能保证没有单点故障么?

可以,前面回复了。

 

7.你们会帮客户做哪些测试?

压力测试、同步性能测试,再查查高可用容灾的指标吧。 另外你们的指标能达到多少。

(这些就说一下怎么做就行了吧,我不记自己的数据,负载都挺低的。)

 

1.统一认证 

 

2.docker相关概念、操作

 

 

4.STAR原则讲自己的优势,自我介绍用数据来突出自己的优势。包括你的产品也是,介绍给面试官要让他一下子觉得产品好,这才是合格的售前。 也要让面试官觉得你很好。

 

5.投标

 

6.网络知识过一遍

 

7.linux磁盘那些知识过一遍

 

8.统一认证的原理看一下

 

9.你是怎么写解决方案的?包括哪些内容?

其实我觉得把因果表达清楚就好,解决方案最主要还是让人能看懂,给领导的解决方案就要简明扼要一些,如果是技术的高层来看,那就要把实现原理介绍清楚。

 

9.我自己也是销售

 

posted @ 2022-03-24 12:09  写代码是唯一安静独处  阅读(30)  评论(0编辑  收藏  举报