摘要: 今日头条主端后端研发实习生岗: (面试已经结束快半年了,凭借记忆来写一下) 一面: 一面总结:这次面试比较简单,据说面试官是本校毕业的bcz学长,感谢学长高抬贵手不杀之恩,主要问的都是些基础知识,算法题比较经典,但是对于没学过ACM的人来说已经很难了,总体来说对于自己的表现比较满意,没有太大的纰漏, 阅读全文
posted @ 2018-03-17 21:45 Torrance_ZHANG 阅读(9986) 评论(4) 推荐(0) 编辑
摘要: 在多进程编程中,我们用fork系统调用创建子进程,值得注意的是,fork函数复制当前进程并在内核进程表中创建一个新的表项,其堆、栈指针,标志寄存器的值都和父进程相同,但是其ppid被设置成父进程pid,信号位图被清除。而子进程代码和父进程完全相同,其数据也会复制自父进程,但是其复制过程是写时复制,即 阅读全文
posted @ 2018-02-27 20:00 Torrance_ZHANG 阅读(971) 评论(0) 推荐(0) 编辑
摘要: 书上内容不多,已下载Libevent源码,待学习。 阅读全文
posted @ 2018-02-27 19:57 Torrance_ZHANG 阅读(584) 评论(0) 推荐(0) 编辑
摘要: 第十一章 定时器 这里的定时器主要指的是定时器容器,TCP连接中有保活定时器,为了定期查看TCP连接是否断开,可以用socket选项实现,但是较为麻烦,所以一般都由应用层负责保活,这是定时器的一个运用场景,或者在应用层需要执行一些定时操作,这样就需要一个高效的定时器容器,主要是时间轮和时间堆,当然定 阅读全文
posted @ 2018-02-13 14:31 Torrance_ZHANG 阅读(1060) 评论(0) 推荐(0) 编辑
摘要: 第十章 信号 Linux中信号是由用户、系统或进程发送给目标进程的信息,用来通知进程某个状态的改变或系统异常,其产生条件如下:1)对于前台进程,用户可以通过输入特殊的终端字符来发送信号,比如Ctrl+C发送中断信号;2)系统异常;3)系统状态变化,如SIGALRM信号;4)运行kill命令或使用ki 阅读全文
posted @ 2018-02-10 20:51 Torrance_ZHANG 阅读(753) 评论(0) 推荐(0) 编辑
摘要: 第九章 I/O复用 I/O复用技术是重要的提高服务器工作效率和性能的手段,Linux下实现I/O复用的系统调用主要有select、poll和epoll。 首先我们来看一下select的函数原型和常用的宏: 首先来看select函数原型,nfds指定了被监听的文件描述符的总数,其值通常被设定为所有文件 阅读全文
posted @ 2018-02-06 23:04 Torrance_ZHANG 阅读(1495) 评论(0) 推荐(1) 编辑
摘要: 第八章 高性能服务器程序框架 我们将服务器一般分为三个主要模块,I/O处理单元、逻辑单元及存储单元。常用的服务器模型有C/S模型和P2P模型,比较简单。我们来看一下网络编程中的I/O模型。首先我们要了解阻塞模型和非阻塞模型的区别,socket在创建时默认是阻塞的,可以在socket系统调用的第二个参 阅读全文
posted @ 2018-02-03 20:05 Torrance_ZHANG 阅读(5741) 评论(0) 推荐(0) 编辑
摘要: 第七章 Linux服务器程序规范 服务器程序除了需要网络通信外,还应该考虑很多其他的细节,而这些细节很多很杂,但又基本是模板式的。1)服务器程序基本都是以后台形式运行的,没有控制终端,不能接受用户输入,其父进程通常是init。2)服务器程序有一套日志系统。3)服务器程序以某个专门的非root身份运行 阅读全文
posted @ 2018-02-03 12:22 Torrance_ZHANG 阅读(1030) 评论(0) 推荐(1) 编辑
摘要: 第六章 高级I/O函数 网络I/O一直是Linux网络编程中极其重要的一部分,除了前面讲到的send、recv等,socket编程接口还给出了很多高级了I/O函数,这些函数大致分为三类:用于创建文件描述符的函数、用于读写控制的函数和用于控制I/O行为和属性的函数。 pipe函数是用来创建一个管道,管 阅读全文
posted @ 2018-02-02 22:07 Torrance_ZHANG 阅读(1507) 评论(0) 推荐(1) 编辑
摘要: 第五章 Linux网络编程基础API 对于网络编程,首先要了解的就是字节序的问题,字节序分为主机字节序和网络字节序,主机字节序又称小端字节序,是低字节存放在地地址,而网络字节序又称大端字节序,是低字节放在高地址。当数据在不同的机器上传播时,就需要统一字节顺序以保证不出现错误。在发送数据前,先将需要转 阅读全文
posted @ 2018-02-01 22:50 Torrance_ZHANG 阅读(1642) 评论(0) 推荐(1) 编辑