阿里巴巴笔试整理系列 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 ...
随机推荐
- linux下添加PATH环境变量
添加PATH环境变量,第1种方法:[root@lx_web_s1 ~]# export PATH=/usr/local/webserver/mysql/bin:$PATH 再次查看: [root@lx ...
- SSL构建单双向https认证
1. SSL基本介绍 我们常常在使用网上银行时看到的连接都是以“https”开始的,那么这个https是什么呢?这其实是表示目前连接使用了SSL进加密,能保证客户端到服务器端的通信都在被保护起来,那 ...
- SPRING IN ACTION 第4版笔记-第九章Securing web applications-003-把用户数据存在数据库
一. 1.It’s quite common for user data to be stored in a relational database, accessed via JDBC . To c ...
- 万网空间如何安装wordpress
万网空间如何安装wordpress建站教程 _ 学做网站论坛 http://www.xuewangzhan.com/wpbbs/1643.html 1.先在本地下载一个最新版本的wordpress ...
- CHtmlView类的中文介绍
http://zhidao.baidu.com/link?url=h8FaKA6FMNXzYJu_XO-_buBxuGdM0jozKUSVv6pgEPsvhTB2-xLltH-jVLDDJKMBAkn ...
- ~/.ctag的作用与配置
里边可以有基本配置和语言正则表达式解析的参数 # Basic options --recurse=yes --tag-relative=yes --exclude=.git # Regex for C ...
- C# winform DataGridView
C# DataGridView控件动态添加新行 DataGridView控件在实际应用中非常实用,特别需要表格显示数据时.可以静态绑定数据源,这样就自动为DataGridView控件添加相应的行.假如 ...
- poj3254
还是那句老话:dp关键在状态: 求有多少种排布方式,是任意两头牛不相邻(有些地方不能放): 不用心,一开始还纠结了半天 和之前USACO上某题方法是一样的,每一行放或不放只有两种情况 把它当作一个二进 ...
- c#里BindingFlags 筛选标志
下列 BindingFlags 筛选标志可用于定义包含在搜索中的成员: 为了获取返回值,必须指定 BindingFlags.Instance 或 BindingFlags.Static. 指定 Bin ...
- CF GYM 100703M It's complicate
题意:龙要做茶,需要n种原料,给出他有的原料个数,和每份茶需要的原料个数,和每种原料的价格,要求做整数份茶,把他之前有的原料用完最少要花多少钱. 解法:水题. 代码: #include<stdi ...