Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
linyacool authored Oct 24, 2018
1 parent 9357b3e commit af91aeb
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions 面试问题.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# 面试被问过的问题

* 介绍一下这个项目(几乎是必问的)
* 定时器是怎么实现的?还有什么实现方式?
* 实现一个无锁队列(用原子操作)
* eventfd是什么?有什么好处?
* 双缓冲区异步日志是什么?为什么要这样做?对这个日志系统有没有进行压力测试?
* 什么是优雅关闭连接?(就是read()到0,要透明的传递这个行为而不是直接暴力close())
* epoll的边沿触发和水平触发有什么区别?(epoll的源码并不长,从源码的角度回答比较好)
* epoll为什么高效,相比select和poll
* HTTP报文都有哪些字段?
* 假如服务器要升级,又不想让用户感觉到服务器升级了,该怎么做?(其实就是不间断的提供服务,参考nginx的平滑升级)
* 有没有实现内存池?
* 一个请求到来具体的处理过程是怎样的?
* 线程的唤醒还有哪些方式?
* 怎么检查内存泄漏的?
* 用到了哪些智能指针和RAII机制,几种锁的区别是什么
* 任务队列是怎么实现的,除了加锁还有什么方式?
* 如何解决死锁?
* 怎么进行压测的?
* 为什么要用非阻塞io?
* 为什么要做这个项目?
* Reactor模式是什么?

0 comments on commit af91aeb

Please sign in to comment.