VS Code 允许在远程机器上使用源代码和源代码执行的本地开发体验:https : //code.visualstudio.com/docs/remote/remote-overview
是否有与 IntelliJ 一起使用的类似工具?VSCode 扩展包不需要在本地挂载来自远程源的文件。它实际上在远程机器上的幕后运行一个服务器,并一次处理一个文件,因为您需要将它们访问到运行在本地计算机上的 IDE。
我正在 AWS ECS 集群中运行 Python Celery(分布式任务队列库)工作人员(每个 EC2 实例运行 1 个 Celery 工作人员),但任务需要长时间运行并且不是幂等的。这意味着,当发生自动扩展缩减事件时,即 ECS 由于任务负载过低而终止运行工作线程的容器之一时,该工作线程上当前正在进行的长时间运行的任务将永远丢失。
有人对如何配置 ECS 自动缩放有任何建议,以便在完成之前不会终止任何任务吗?理想情况下,ECS 缩减事件将对要终止的 EC2 实例中的 Celery Worker 启动热关闭,但只有在 Celery Worker 完成热关闭(在其所有任务完成之后才会实际终止 EC2 实例)。完全的。
我还了解有一种称为实例保护的东西,它可以通过编程方式进行设置,并防止实例在缩减自动缩放事件中被终止:https ://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance -termination.html#instance-protection-instance
但是,我不知道在所有任务在热关闭中完成后会触发任何 Celery 信号,因此我不确定如何以编程方式知道何时禁用保护。即使我找到了一种在适当的时候禁用保护的方法,谁来管理首先向哪个工作人员发送关闭信号?EC2 是否可以配置为在缩减事件中对实例执行自定义操作(例如执行热 celery 关闭),而不是仅仅终止 EC2 实例?