今天收到阿里巴巴一个电话面试
2017-05-19 22:01
357 查看
1如何区分同一session不同会话用户
答JsessionId
2redis有哪些常用数据类型
答:string,list,set,sorted set,map
3redis客户端get请求流程
客户端执行一个命令的流程如下:
通过Socket发送请求协议
Server通过读事件接受请求,且存入查询缓存
从命令表找到相应的命令实现
执行命令,且把执行结果存入到响应缓存中
客户端写事件就绪的时候把相应缓存中的数据传回客户端
提问时特别提到了多个redis服务器客户端是怎么选择其中服务器的
4synchronize是可重入锁么
答:是
5有哪些不可重入锁
答:这个问题我也想不出来哪些锁是不可重入的,我只是回答java锁是cas实现的,里面有逻辑代码可以实现可重入和不可重入
网上搜了一下,也没发现哪些锁是不可重入的
6你的项目中为什么要用groovy
答:我们用了grails框架,grails和ruby on rails一样是预定优于配置的,提高开发效率,groovy语言是动态的jvm语言,语法简洁,开发效率高
7groovy两个工程Bean怎么引用
答:这个不知道,用groovy的时间不长
8你项目中为什么不用分布式事务
答:没有用
9一个高并发的数据库插入保持正确一致性需要注意什么
答:首先看数据源是单数据源还是多数据源,如果是单数据源就用一般事务,如果是多数据源就用分布式事务,如果多数据源是异构的分布式事务更复杂;
其次高并发系统瞬时来的数据量可能和数据库处理能力不匹配,要考虑使用缓存,缓解数据处理压力
10请介绍你做过的一个项目
我介绍了做过的一个拉取淘宝订单数据,分表存储,的会员服务组件,两个月会员数据5000万,订单数据1亿
10a:有什么技术难点
答:订单数据有可能一天都拉不完,采用多线程的方式拉的,用到了并发技术;数据是采用卖家昵称分表存储的,数据拉取有可能失败要考虑一定的容错,采用记录
任务的方式,失败的任务重新执行,每个表都存储一部分卖家数据,采用了一些参数保证数据均匀分布
10b:我有一个卖家要找到所对应的表是怎么找的
答:有一张原数据表,表中记录了卖家和他所对应的会员表和订单表的表名,及会员表中的记录数和订单表中的记录数,根据卖家昵称查询对应的表名
10c:原数据表是否存在单点问题
答:是的,架构初期没有考虑单点的问题
10d:数据拉取有没有采用集群
答:没有采用集群,架构初期比较简单
10e:如果采用集群需要考虑哪些问题
答:首先要考虑任务分割的问题,订单数据是有时间戳的,根据时间戳分割任务,分割任务的机子必须是统一全局的
10f:主键是怎么生成的
答:主键是淘宝那边的主键,不需要我们生成
10g:如果要你自己生成,你会怎么生成
答:UUID,统一的主键生成服务,每张表的主键加上表名前缀
10h:这个服务是怎么对外服务的
答:采用dubbo
10i:你对dubbo有多了解
答:dubbo是分布式服务系统,支持集群,负载均衡,灵活配置合管理
10j:dubbo服务发现是怎么发现的
答:http,redis,zoonkeeper
11你能介绍一下其他项目么
介绍了一个地图优化项目,问了具体的优化细节
12你有什么问题么
答:问了为什么打电话给我,是哪个部门的
13请举例哪些地方用到了责任链模式
答:Filter,Interceptor
14redis怎么解析字节数组
答:这个题我答不上来
总共面试花了40分钟,可能会有现场面试哦
答JsessionId
2redis有哪些常用数据类型
答:string,list,set,sorted set,map
3redis客户端get请求流程
客户端执行一个命令的流程如下:
通过Socket发送请求协议
Server通过读事件接受请求,且存入查询缓存
从命令表找到相应的命令实现
执行命令,且把执行结果存入到响应缓存中
客户端写事件就绪的时候把相应缓存中的数据传回客户端
提问时特别提到了多个redis服务器客户端是怎么选择其中服务器的
4synchronize是可重入锁么
答:是
5有哪些不可重入锁
答:这个问题我也想不出来哪些锁是不可重入的,我只是回答java锁是cas实现的,里面有逻辑代码可以实现可重入和不可重入
网上搜了一下,也没发现哪些锁是不可重入的
6你的项目中为什么要用groovy
答:我们用了grails框架,grails和ruby on rails一样是预定优于配置的,提高开发效率,groovy语言是动态的jvm语言,语法简洁,开发效率高
7groovy两个工程Bean怎么引用
答:这个不知道,用groovy的时间不长
8你项目中为什么不用分布式事务
答:没有用
9一个高并发的数据库插入保持正确一致性需要注意什么
答:首先看数据源是单数据源还是多数据源,如果是单数据源就用一般事务,如果是多数据源就用分布式事务,如果多数据源是异构的分布式事务更复杂;
其次高并发系统瞬时来的数据量可能和数据库处理能力不匹配,要考虑使用缓存,缓解数据处理压力
10请介绍你做过的一个项目
我介绍了做过的一个拉取淘宝订单数据,分表存储,的会员服务组件,两个月会员数据5000万,订单数据1亿
10a:有什么技术难点
答:订单数据有可能一天都拉不完,采用多线程的方式拉的,用到了并发技术;数据是采用卖家昵称分表存储的,数据拉取有可能失败要考虑一定的容错,采用记录
任务的方式,失败的任务重新执行,每个表都存储一部分卖家数据,采用了一些参数保证数据均匀分布
10b:我有一个卖家要找到所对应的表是怎么找的
答:有一张原数据表,表中记录了卖家和他所对应的会员表和订单表的表名,及会员表中的记录数和订单表中的记录数,根据卖家昵称查询对应的表名
10c:原数据表是否存在单点问题
答:是的,架构初期没有考虑单点的问题
10d:数据拉取有没有采用集群
答:没有采用集群,架构初期比较简单
10e:如果采用集群需要考虑哪些问题
答:首先要考虑任务分割的问题,订单数据是有时间戳的,根据时间戳分割任务,分割任务的机子必须是统一全局的
10f:主键是怎么生成的
答:主键是淘宝那边的主键,不需要我们生成
10g:如果要你自己生成,你会怎么生成
答:UUID,统一的主键生成服务,每张表的主键加上表名前缀
10h:这个服务是怎么对外服务的
答:采用dubbo
10i:你对dubbo有多了解
答:dubbo是分布式服务系统,支持集群,负载均衡,灵活配置合管理
10j:dubbo服务发现是怎么发现的
答:http,redis,zoonkeeper
11你能介绍一下其他项目么
介绍了一个地图优化项目,问了具体的优化细节
12你有什么问题么
答:问了为什么打电话给我,是哪个部门的
13请举例哪些地方用到了责任链模式
答:Filter,Interceptor
14redis怎么解析字节数组
答:这个题我答不上来
总共面试花了40分钟,可能会有现场面试哦
相关文章推荐
- 今天收到一份英文邀约电话面试的邮件,不知道怎么回复合适
- 20180112 今天收到了蚂蚁金服的电话面试 ,去阿里的路还有多远
- 今天收到IBM CRL(中国研究中心)的电话面试。
- 今天收到一个面试
- 2012.8.28 阿里巴巴电话面试
- 今天收到一个计算公式
- 今天电话面试的一题,关于数据库查询优化的
- 一次阿里巴巴的电话面试
- 今天有一个工程师电话咨询
- 阿里巴巴电话面试
- 今天阿里云的电话面试
- 一个简单的今天面试的sql题,做个记录
- 【2013创新工场电话面试】判断一个数组是否为二叉排序树的后序遍历结果
- 今天去面试碰到到一个问题
- 阿里巴巴实习生电话面试
- 当你输入一个网址的时候,实际会发生什么?(赛门铁克电话面试我,曾经问过这个问题,最后一问,我只能说不知道)
- 今天收到点歌电话
- 今天接到一个0755的电话,一开始稀里糊涂的,没想到……
- 一个收到MS offer的写的面试经历
- 今天收到2老友电话