关于后端:LINUX下多进程编程及网络编程相关知识你真的掌握了

37次阅读

共计 2019 个字符,预计需要花费 6 分钟才能阅读完成。

如果你对以下问题十分感兴趣且本人的确欠缺上面的发问,那么我感觉你能够往下看,我也感觉你必要晋升一下本人的外围常识储备。如果不是,那么本文对你没有什么价值了。就没有必要浪费时间在浏览上来了。

https://segmentfault.com/a/11…
1 什么是 ELF 文件
2 什么是过程
3 过程内存数据在哪里查看
4 程序启动时先运行哪个函数
5 程序启动时,会传递什么参数给过程
6 Linux 终端下启动过程的过程是什么
7 为什么在 Linux 终端按 ctrl+z,ctrl+\,ctrl+ c 过程就终止了?跟软中断零碎有何关系?过程如何屏蔽中断信号?
8 守护过程的实现原理是什么?什么是管制过程?【什么是管制终端】守护过程与终端有何关系?
9 孤儿过程是怎么产生的?产生之外被谁接管了?僵尸过程又是怎么产生的?要怎么解决掉?
10 会话过程与守护过程啥关系?
11 过程的内存布局是什么样的?为什么多过程后,过程间就隔离了?隔离后的后果是什么?
12 创立过程不同的编程语言实现上有什么区别?共同点又是什么?怎么晓得共同点?零碎在创立新过程时调用哪个函数了?
13 同一个过程有及多过程编程时,如果过程间通信,有什么方法?
14 UNIX SOCKET 和 SYSTEM V IPC 过程间通信都有什么特色,特地是 UNIX SOCKET 和 IPV4,IPV6 的 SOCKET 有何区别?
15 我用 go,python,java,go,nodejs 启动我撸的代码时,低层它会先运行哪个函数?为什么?这些函数又是哪里来的?我该怎么查看呢?
16 过程池又是什么货色?有啥益处?过程启动和完结时都做了什么?
17 我启动的服务占用内存特地高,那你是怎么查看以后过程在运行哪个函数?以后过程的状态是什么?以后过程在做什么?你晓得吗?怎么查看呢?在代码里打印调试吗?
18 我撸 php,python,nodejs 的,当我编写一个网络程序时,它们除了语言写法不同之外,是不是调用的零碎 API 都是一样的?
19 你真的把握了 TCP/IP 网络编程?粘包,少包啥玩意都晓得了?都晓得怎么解决了吗?。。。。。巴拉巴拉一堆。。。
20 我真的晓得当我编写网络程序时,各种语言的写法不同,外部零碎函数是雷同的吗?如果雷同的话,那些零碎函数的手册我在哪里查看呢?
21 当我的网络程序要接收数据或是发送数据时,除了外部的收发缓冲区之处,我是否要设置本人的应用层收发缓冲区呢?什么时候晓得 socket 可读可写呢?
22 当我多过程编写网络程序时,会不会产生 socket 惊群呢?怎么解决呢?为什么产生呢?
23 我对 HTTP 协定是本人实现过呢?还是 PPT 背过概念应酬一下面试呢?
24 我用第三方网络库或是框架如 netty,tornado,go,swoole,workerman,libevent… 写了聊天程序后或是惯例的 HTTP API,我真的把握了网络编程了?实现原理实践把握还是手写代码把握了?如果要降级或是减少协定性能我能搞定?
25 我对物联网开发有理解?会用 MQTT 进行传感器间通信还是本人能实现协定?
26 作为多年教训的码农还是会框架 CRUD 还是会工具应用,docker,mysql,redis,es,lvs,mycat…. 各种工具他们运行时低层数据传输前因后果我能查看了?能钻研它的实现了?他们外部是不是用了 SOCKET API 啊?既然用了我是否把握了 SOCKET API 编程了?
27 本人天天 CRUD,总得要操作数据库吧,打印 SQL 语句要动代码?要装一堆工具监督?要配置一堆日志?有什么方法?
28 如果我要设计一套通信协议,要求传输数据量少,并发性能高出 HTTP 协定你会怎么做?HTTP 协定传输数据量是不是太多了?为什么?是不是你本人亲手实现过了?、
29 网络编程波及到的阻塞,非阻塞,IO 复用,定时,信号,异步,同步,多过程,服务过程化,事件处理模式,并发模式等常识你是否把握?是实践把握还是实战了?
30 其它。。。。。。。。。。
不论你是用什么语言,你每天都要撸 API 接口或是调用 API 接口,都要把代码放在 LINUX 服务器上运行,如果你不满足于框架的 CRUD,想进一步的把握和深入本人的能力时,你应该学习一下多过程编程,网络编程,毕竟你应用的 MYSQL,REDIS,DOCKER,ES, 框架,各种我的项目利用包含各种高大上的集群,分布式,负载平衡,数据库服务等都离不开 SOCKET 编程,当你本人能本人入手把握并实现后,那么再去看他们封装的框架,库,利用你会有更深刻的意识和解决问题的能力。

毕竟你天天在念叨要集群,要分布式,要数据库主从,要集群,要负载平衡,。。。可是这些货色他们的低层仍然是依赖于网络编程,没有 SOCKET API,各种数据库,各种网络框架,各种利用都无奈实现,如果你不满足光会应用,会吹水,还能把以上常识落实到本人的手上。你才算真正的入门了编程。

在这里给须要想晋升本人的敌人留个链接给大家康康 https://edu.51cto.com/sd/75a3d

正文完
 0