蚂蚁金服中间件一号机java工程师社招面经

蚂蚁金服研发面经

蚂蚁金服中间件一号机

一面:

自我介绍

1Java中的多线程了解么,线程池的增长策略和拒绝策略了解么,说一下。

2讲一下线程增加的过程和拒绝策略的执行。

3讲了一下fixthreadpool的增长策略,然后几种拒绝策略。

4高并发情况下,如何使用线程池,用哪个,问了一下线程结束要多久,是否在下一个线程结束前完成(我想的是cachethreadpool,其实思路错了)。

5表示并发量比较大,所以我说可以考虑并发量是否大于队列长度加上最大线程数量和,如果不超过的话可以是用fixthreadpool。

6并发juc了解么,有哪些线程安全的list。说了个copyonwritelist,想了半天说不出第二个了。尴尬,那就vector把,不是juc里的。

貌似并发包里确实没有其他list啊。

还问了concurrenthashmap1.8的改动。

7HTTP协议了解么,和tcp有什么区别。

8http1.0和2.0的区别。

答了TCP连接复用,加入ssl,以及压缩请求头。

其中哪个更新比较有意义,为什么。我说的是压缩请求头,这样可以优化HTTP服务的性能。

9Java的网络编程,比如NIO和Socket了解么。

说下BIO和NIO的区别把。

我说了BIO的阻塞用法,以及NIO的IO多路复用用法,说了selector,seletedkey,channel等类的使用流程,以及单线程处理连接,多线程处理IO请求的好处。

10说一下NIO的类库或框架

讲了netty,写过服务端和客户端的demo,没有在生产中实践。

1 channelhandler负责请求就绪时的io响应。

#蚂蚁集团##社招##面经##Java工程师#
全部评论
Collections.synchronizedList
3 回复
分享
发布于 2021-03-14 05:46
blockarraylist 和 blocklinkedlist算么
1 回复
分享
发布于 2021-03-13 23:59
博乐游戏
校招火热招聘中
官网直投
问题4 应该是想问在IO密集或者cpu密集下设置参数吧。IO密集,核心线程数高2N cpu密集是使用N+1
点赞 回复
分享
发布于 2021-03-17 22:34

相关推荐

头像
不愿透露姓名的神秘牛友
03-13 10:56
点赞 评论 收藏
转发
5 28 评论
分享
牛客网
牛客企业服务