咨询锁 使用分布式。 一些用例: 您有一个并且要绝对确保在任何给定时间都不会有多个进程处于活动状态。 如果由于意外事件或在部署过程中按比例扩大了时钟进程,这种情况会使旧版本保持运行,直到新版本响应运行状况检查,则可能会出现这种情况。 在服务器启动时运行数据库迁移。 如果您的应用程序得到扩展,则多个进程将同时尝试运行数据库迁移,这可能会导致问题。 领导人选举。 假设您有一个Web应用程序,并且想每30分钟向Slack发布一条包含一些统计信息的消息(例如,最近30分钟内的新注册)。 您可能正在运行10个进程,但不想在Slack中获得10条相同的消息。 您可以使用该库来选择一个“主”进程