使用Packer构建镜像

thbcm阅读(367)

Packer 的工作原理是通过定义一个配置文件,该文件描述了要构建的镜像的特征和要求。然后 Packer 使用这个配置文件来执行一系列的步骤,例如安装必要的软件、配置系统设置、复制文件等,最终生成一个可用的镜像。

Python被远程主机强制关闭后怎么自动重新运行进程

thbcm阅读(283)

以下是一个Python脚本的示例,该脚本将监控另一个Python程序(例如
main_program.py)的运行状态,并在它退出时重新启动它。这个监控脚本使用了Python的
subprocess模块来启动和监控主程序,以及
time.sleep来周期性检查主程序是否还在运行。

Dapr v1.14 版本已发布

thbcm阅读(324)

2024年8月14日正式发布了1.14版本,Dapr v1.14的发布标志着分布式应用程序运行时的重要更新。这个版本引入了许多新特性和改进,旨在帮助开发者构建更安全、可靠的微服务。以下是Dapr v1.14的一些主要亮点:

聊聊 PHP 多进程模式下的孤儿进程和僵尸进程

thbcm阅读(344)

在 PHP 的编程实践中多进程通常都是在 cli 脚本的模式下使用,我依稀还记得在多年以前为了实现从数据库导出千万级别的数据,第一次在 PHP 脚本中采用了多进程编程。在此之前我从未接触过多进程,只知道 PHP-FPM 进程管理器是多进程模型,但从未在编程中进行实践。多进程虽然能带来效率上的提升,但依然会带来不少的问题,如果初学者使用多进程,那注定会遇到各种奇奇怪怪的 Bug 比如并发操作数据库引起死锁、共用内存变量资源造成串数据、忘记回收进程资源导致产生孤儿进程、僵尸进程等。反正如果我们长期都是 PHP-FPM 模式下编程的话,在使用多进程编程时需要慎之又慎,避免出现意想不到的问题。不过这次我想分享的内容是多进程模式下的孤儿进程和僵尸进程,通过示例代码来看看这两者进程是如何产生的,又应该如何解决,内容不难但是在实际的编程中是可能比较容易忽视的点。

联系我们