想去阿里的程序员欲研究nginx源码,网友给列出提纲,诚意满满!
作为程序员除了做好工作之外,还有一件事情是非常忽视不得的,那就是业余时间的充电,工作只能是求生存,但是如果要想求发展,还要不断的精进自己的技术技能,只有这样才能有更好的发展空间,我们就拿下面这名程序员的例子作为案例。
图片来之互联网
这名程序员近期有个理想,他是在一个小公司,他想进入像百度,腾讯,阿里这样的大公司,但是也没有一个比较像样的优势在,在面试的时候也没有什么谈资,于是他准备先研究一下nginx源码,但是他也不知道这样做有没有用,就想来问问网友们有没有更好的办法,接下来我们就一起看看网友们都是怎么看待,以及有什么更好的建议!
网友一:给你列个提纲master:配置解析、worker管理、控制信号、特殊option比如reuseport等,worker:请求解析、11个阶段、upstream、子请求、事件handler如何转换、httpv2
作者点评:厉害了我的哥,诚意满满,给赞一个!
网友二:nginx是开源项目里面写的比较好的,不过是c代码,自学还是非常有价值的,以后能到什么深度,还是得看项目,一般人就是用用而已
作者点评:对,一般都是停留在使用的层面,不过从底层研究一下,知道底层原理更有助于熟练的使用!
网友三:提升大一点就是互联网通用技术多了解一下,面试的时候会有不少谈资
作者点评:广度和深度需要把握好!
图片来之互联网
网友四:给你两个建议。把ide换成visual studio,其次别研究Nginx了,不如好好看看httpd
作者点评:这个建议有点武断哦!
蚂蚁金服员工:nginx里面可是有四重指针的,毛子写得代码就是牛逼
作者点评:nginx是俄罗斯人发明的,这里说的毛子是说老俄么?四重指针就是牛逼,严重同意!
网友五:四重指针,是配置的分级管理,conf,core conf、http conf等,http main、server、loc conf,最后module conf,把这个函数ngx_http_cycle_get_module_main_conf看懂就差不多了
作者点评:这名网友针对上面的四重指针又进一步做了补充,可以参考!
网友六:nginx是开源项目里面写的比较好的,不过是c代码,自学还是非常有价值的,以后能到什么深度,还是得看项目,一般人就是用用而已
作者点评:不能同意的再多!
网友七:楼主加个好友,带队一起看呀。
作者点评:好主意,可以组队学习,形成学习圈子,一起交流分享!
网友八:看源码能快速解bug,再深入一点学点设计模式
作者点评:是的,了解了底层,自然对其中原理比较熟悉,设计模式也是程序员需要掌握的一个必备知识!
网友九:你们都好牛逼,我看不懂C语言
作者点评:那就需要学习了,作为程序员,学点C还是有用的,不论你是php程序员还是java程序员,如果想在深度上有所突破就需要了解一下C,比如php的C扩展是用c,java的虚拟机也用到C,多了解一下C还是很有用的!
图片来之互联网
针对这名网友学习nginx源码一事我是支持的,毕竟多了一门技术技能没有什么坏处不是么?另外在研究源代码之前先了解一下nginx的背景,然后再制定一个学习的计划和大纲,按计划进行会更科学一点,另外我需要提醒这名网友的一点是,这个学习完了不见得就一定能去BAT这样的大公司了哦,因为面试官考察的可不一定是这个哦,只能在面试过程中提一下自己曾经研究过nginx源码,作为一个谈资罢了,这一点还是要做好心理准备的,最后也祝这名网友能够如愿以偿!
大家好,我是“上世是朵花”。如果你有什么好的看法或者观点可以在评论区展现你的才华,互动交流,如果想进一步了解我,那就关注我吧!