很多同学都想得到亚马逊的实习或者校招机会。那从过来人的角度谈谈,要通过亚马逊的实习、校招面试,都有哪些经验和注意事项呢?今天就跟大家分享一下。
【笔试】
按照文档,在 aws 上做两个实验,一个关于 NAT 服务器,一个关于 ELB。
【电话面试】
1、根据以上两个实验提 问题
2、nat 的原理
NAT的基本工作原理是,当私有网主机和公共网主机通信的IP包经过NAT网关时,将IP包中的源IP或目的IP在私有IP和NAT的公共IP之间进行转换。. 如下图所示,NAT网关有2个网络端口,其中公共网络端口的IP地址是统一分配的公共 IP,为 202.20.65.5 ;私有网络端口的IP地址是保留地址,为 192.168.1.1 。 私有网中的主机 192.168.1.2 向公共网中的主机 202.20.65.4 发送了1个IP包 Dst=202.20.65.4,Src=192.168.1.2 。
3、nat 在 linux 中的实现机制
Linux的NAT是基于match的,即在满足一系列条件的前提下执行SNAT或者DNAT,因此要求也就比较宽松,唯一的约束就是路由,即路由动作发生的时候,必须是基于最终的目标IP地址,因此DNAT必须发生在路由之前 (对于本机发出的数据包,则在路由之后,然后重新路由),
4、负载均衡算法
【负载均衡算法分类】
任务平分类
负载均衡系统将收到的任务平均分配给服务器进行处理,这里的“平均”可以是绝对数量的平均,也可以是比例或者权重上的平均。
负载均衡类
负载均衡系统根据服务器的负载来进行分配,这里的负载并不一定是通常意义上我们说的“CPU 负载”,而是系统当前的压力,可以用 CPU 负载来衡量,也可以用连接数、I/O 使用率、网卡吞吐量等来衡量系统的压力。
性能最优类
负载均衡系统根据服务器的响应时间来进行任务分配,优先将新任务分配给响应最快的服务器。
Hash 类
负载均衡系统根据任务中的某些关键信息进行 Hash 运算,将相同 Hash 值的请求分配到同一台服务器上。常见的有源地址 Hash、目标地址 Hash、session id hash、用户 ID Hash 等。
【onsite 面】
总体情况:一个上午, 三轮面试,每轮一个小时,一面 HR 面,二面 hiring manager 面三面技术面
1、实习经历和项目经历
2、 mapreduce 的流程
mapreduce过程就包括6个步骤,input、splitting、mapping、shuffling、redecing、final redult。
3、hdfs 的细节
Hadoop Distributed File System,其本身是 Apache Hadoop 项目的一个模块,作为大数据存储的基石提供高吞吐的海量数据存储能力
4、hadoop1.0 和 yarn 的区别
Hadoop 1.0是由HDFS和MapReduce V1组成的,YARN出现之前是MapReduce V1来负责资源管理和任务调度,MapReduce V1由JobTracker和TaskTracker两部分组成。
5、如何调内核参数
两种修改内核参数方法: (1)使用echo value方式直接追加到文件里如echo "1" >/proc/sys/net/ipv4/tcp_syn_retries,但这种方法设备重启后又会恢复为默认值 (2)把参数添加到/etc/sysctl.conf中,然后执行sysctl -p使参数生效,永久生效
6、/etc/fstab 的作用
/etc/fstab是用来存放文件系统的静态信息的文件。
7、什么是缺页中断
缺页中断就是要访问的页不在主存,需要操作系统将其调入主存后再进行访问。在这个时候,被内存映射的文件实际上成了一个分页交换文件。
8、什么是 inode
inode 是 UNIX 操作系统中的一种数据结构,其本质是 结构体 ,它包含了与文件系统中各个文件相关的一些重要信息。 在 UNIX 中创建文件系统时,同时将会创建大量的 inode 。
9、怎么查看 inode
inode如何理解呢,就是一个文件 对应一个inode,而linux各个分区可用的inode一般是有限的,使用df -i 可以查看使用情况。 一般经常出现硬盘空间没占满,但inode占满了,这种一般是因为有大量的小文件生成,要删掉
10、rc.local 的作用
rc.local是Linux系统中的一个重要的开机启动文件,每次开机都要执行这个文件。
11、三次握手
所谓的“三次握手”:为了对每次发送的数据量进行跟踪与 协商 ,确保数据段的发送和接收同步,根据所接收到的数据量而确认数据发送、接收完毕后何时 撤消 联系,并建立虚连接。为了提供可靠的传送, TCP 在发送新的数据之前,以特定的顺序将数据包的序号,并需要这些包 传送 给目标机之后的确认消息。
12、TCP 标志位有哪些含义是什么
URG:(Urgent Pointer field significant)紧急指针。用到的时候值为1,用来处理避免TCP数据流中断。
ACK:(Acknowledgment fieldsignificant)置1时表示确认号(AcknowledgmentNumber)为合法,为0的时候表示数据段不包含确认信息,确认号被忽略。
PSH:(Push Function),PUSH标志的数据,置1时请求的数据段在接收方得到后就可直接送到应用程序,而不必等到缓冲区满时才传送。
RST:(Reset the connection)用于复位因某种原因引起出现的错误连接,也用来拒绝非法数据和请求。如果接收到RST位时候,通常发生了某些错误。
SYN:(Synchronize sequence numbers)用来建立连接,在连接请求中,SYN=1,ACK=0,连接响应时,SYN=1,ACK=1。即,SYN和ACK来区分Connection Request和Connection Accepted。
FIN:(No more data from sender)用来释放连接,表明发送方已经没有数据发送了。
滑动窗口:控制报文流量,用来告诉对方目前接收端缓冲器大小。当为0时标识缓冲器已满,需要停止发包,单位为byte。
13、RST 在什么情况下出现
RST 一般出现于异常情况,归类为 对端的端口不可用 和 socket提前关闭 。
14、什么是 MTU。
Maximum Transmission Unit,缩写MTU,中文名是:最大传输单元。在7层网络协议中,MTU是数据链路层的概念。MTU限制的是数据链路层的payload,也就是上层协议的大小,例如IP,ICMP等。
想要更多亚马逊实习、校招的机会,请点击这里