阿里巴巴笔试整理系列 Session2 高级篇
一面:
1. 入场就是红黑树,B数
2. apache和nginx源码看过多少,平时看过什么技术论坛,还有没有看过更多的开源代码
3. pthread 到自旋锁
4. hadoop源码看过没
5. 为什么选择TCP而不是直接用服务器
6. 你们的大数据怎么处理的,还怎么优化,说了个公司业务决定分布式是不可能了,最好hash分表
7. 还有一个僵尸进程
二面:
对面好像在吃饭,没理我,我自己从头讲到尾
介绍项目:开始说我们这个网站,后来我想换个项目就开始说c++爬虫项目
围绕这个问的问题:
1. 爬回来的网页是怎么存储的
2. 异步io,能不能分配很多socket,系统影响建立socket数目的因素
3. 问了线程并发同步的问题,结合我说的项目过程问怎么改进
4. 如果不是小项目,是大量的网页需要拉下来,怎么改进成分布式的
5. 问了简历提到的trie树结构用法,怎么改进
6. c++ 模板和多态的关系
一个数组A:里面的元素是一个范围,指定开始、结束数值,比如{[1, 5), [5, 10),[10, 16), .... [1000, 1002]}
一个范围B:[100, 110]
写一个算法找到上面数组中跟B相交的所有A中的元素的列表;
比如
A = {[1 10), [10, 20), [20, 30), [30, 50)}
B = [15, 31)
那么返回
{1, 2, 3} 因为跟1、2、3三个范围都有交集
2、问项目,讲了netty,然后问了异步IO,nio,oio,channel,buffer(这个时候不小心提了tcp滑动窗口对比),selector。balabala.....(跪了,怎么能挖那么深呢...)
3、然后就开始TCP了。滑动窗口干嘛的,然后慢启动,然后路由啥的。balabala。。然后开始四次挥手,以及状态机变化,为什么time_wait要有两个超时间隔。
4、然后开始项目了,双重锁和synchronized区别,然后SIP是干嘛的,跑去问了一会http消息格式。问SIP怎么处理的。
5、有啥问题。
阿里巴巴笔试整理系列 Session2 高级篇的更多相关文章
- 阿里巴巴笔试整理系列 Session2 中级篇
1知识点储备-----2笔试题总结-----3面试经验总结 知识点储备 2014年8月29日在线笔试题:20单选(40分钟内完成)+附加题(2道编程+1道问答) 1. 通过算法生成的随机数是“伪随机” ...
- Kotlin——从无到有系列之高级篇(一):Lambda表达式
如果您对Kotlin很有兴趣,或者很想学好这门语言,可以关注我的掘金,或者进入我的QQ群大家一起学习.进步. 欢迎各位大佬进群共同研究.探索 QQ群号:497071402 进入正题 经过前面一系列对K ...
- 【原创 深度学习与TensorFlow 动手实践系列 - 4】第四课:卷积神经网络 - 高级篇
[原创 深度学习与TensorFlow 动手实践系列 - 4]第四课:卷积神经网络 - 高级篇 提纲: 1. AlexNet:现代神经网络起源 2. VGG:AlexNet增强版 3. GoogleN ...
- 大数据系列博客之 --- 深入简出 Shell 脚本语言(高级篇)
首先声明,此系列shell系列博客分为四篇发布,分别是: 基础篇:https://www.cnblogs.com/lsy131479/p/9914747.html 提升篇:https://www.cn ...
- 3 - 基于ELK的ElasticSearch 7.8.x技术整理 - 高级篇( 偏理论 )
4.ES高级篇 4.1.集群部署 集群的意思:就是将多个节点归为一体罢了( 这个整体就有一个指定的名字了 ) 4.1.1.window中部署集群 - 了解即可 把下载好的window版的ES中的dat ...
- 微信接口开发之高级篇系列【微信JS-SDK】
PHP微信公众平台开发高级篇—微信JS-SDK 第一步.绑定域名: 第二步.引入JS文件: 第三部.通过Config接口注入权限验证配置 第四部.通过Read接口处理成功验证 第五部.通过Error接 ...
- Spark学习体系整理(基础篇、中级篇、高级篇所涉及内容)
新手刚开始学习比较迷茫,参考下面,然后找相关资料学习 1 Spark基础篇 1.1 Spark生态和安装部署 在安装过程中,理解其基本操作步骤. 安装部署 ...
- 4 - 基于ELK的ElasticSearch 7.8.x技术整理 - 高级篇( 续 ) - 更新完毕
0.前言 这里面一些理论和前面的知识点挂钩的,所以:建议看一下另外3篇知识内容 基础篇:https://www.cnblogs.com/xiegongzi/p/15684307.html java操作 ...
- Vue2和Vue3技术整理3 - 高级篇
3.高级篇 前言 基础篇链接:https://www.cnblogs.com/xiegongzi/p/15782921.html 组件化开发篇链接:https://www.cnblogs.com/xi ...
随机推荐
- 完全掌握Android Data Binding
转载:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0603/2992.html 来源 https://github.com/L ...
- ConfigurationManager配置操作
/// <summary> /// 配置信息维护 /// </summary> public class AppConfig { public static Configura ...
- vmware-tools安装指南
为什么要安装VMware Tools? 因为它可以改善Virtual Machine 的运行性能,可以让鼠标能在本地主机和虚拟机中随意出入,而且Host OS 和Guest OS可以 互通有无,实现文 ...
- 【HDOJ】4373 Mysterious For
1. 题目描述有两种不同类型的循环,并给出一个由1.2组成的序列,表示嵌套的循环类型.问这样组着的循环一共需要多少次循环?并将结果模364875103. 2.基本思路显然,每当遇到一个类型1的序列,即 ...
- Android开发之全局获取Context的技巧
转自<第一行代码-Android>进阶篇 这本书对于入门来说确实很棒,很简单明了的介绍了Android开发中涉及到的方方面面,对我的帮助很大,同时记录一些该书中一些对我以后开发有用的东西, ...
- 触摸屏网站开发系列(一)-ios web App应用程序(ios meta)
触摸屏网站的开发其实现在来讲比前几年移动端网站开发好多了,触摸屏设备IOS.Android.BBOS6等系统自带浏览器均为WEBKIT核心,这就说明PC上面尚未立行的HTML5 CSS3能够运用在这里 ...
- SQL LEFT JOIN 关键字
SQL LEFT JOIN 关键字 LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行. LEFT JOIN 关键 ...
- 用slf4j+logback实现多功能日志解决方案 --- 转
大家都知道,slf4j是原来log4j的作者写的一个新的日志组件,意思是简单日志门面接口,可以跟其他日志组件配合使用,常用的配合是slf4j+logback,无论从功能上还是从性能上都较之log4j有 ...
- WebDriver打开浏览器-java
环境:配置jdk.使用Eclipse(个人爱好),导入selenium-java-2.42.2.jar.selenium-java-2.42.2-srcs.jar.selenium-server-st ...
- RequestHander类介绍
RequestHander是一个抽象类,是一个线程.它封装了一个Socket.代码不难: package org.simpleHTTPServer; import java.io.IOExceptio ...