年份: 2021
在日常的Python开发中,针对一些有性能要求的逻辑,我们可能会采用C/C++来实现,然后在python脚本层进行调用。而对于C/C++编译出来动态链接库,我们要如何进行调试呢?
面对一个卡住的进程我们要怎么定位是哪里卡住了,当服务异常退出了我们要怎么从coredump分析原因,没有IDE我又要如何来做断点调试?对于服务器开发而言,诸多摸不着头脑的问题都可以通过gdb这把利器来解决。
当我们采用容器化来部署项目时,对于大部分的程序(除开脚本语言)我们一般需要将源码编译成二进制的可执行文件,再将可执行文件打包成docker镜像。如果在一个Docker镜像中完成整个流程,那构建出来的镜像文件必然很大(包含了编译环境);如果把编译过程和最终的可执行文件拆分为两个镜像,又会增加维护成本。那么有什么方法来解决这个问题呢?
Docker 通过读取我们编写的 Dockerfile 来自动构建一个镜像,镜像的每一层对应着 Dockerfile 的指令,我们应该遵循一些规则和最佳实践来保证构建出更加高效的镜像。
每一个程序猿对于自己的家庭网络肯定都不会满足于能上网就可以这个基本要求,路由器性能如何、是否能跑满带宽、Wifi信号是否足够稳定、客厅房间是否都能接入、网络中的设备如何规划网段……许多有趣的问题都值得我们去探索。