如何在/tmp中为弹性Beanstalk上的每个进程创建目录?

2024-04-25 17:21:57 发布

您现在位置:Python中文网/ 问答频道 /正文

因此,我们在Elastic Beanstalk上有一个实例(64位Amazon Linux 2016.09 v2.3.3运行Python 3.4),它运行3个并发进程。我有一个缓存数据的库,但是我在三个进程试图访问相同的缓存数据时遇到了错误。在

我想出的解决方案是在缓存路径中使用进程ID(PID),因此没有两个进程共享一个缓存(例如:/tmp/.prose/3443,其中3443是PID)。在

我尝试使用容器命令,但似乎这些命令并不是针对每个单独的进程运行的,而是在部署时运行的。在

我也尝试过os.mkdiros.makedirsos.system('sudo mkdir ...')的各种方法,如果没有sudo,总是会出现一个权限拒绝错误。所有这些mkdir调用后面都是等价的os.system("chmod 777 -R {1}".format(cache_dirname)),或{}。我试着用sudo调用它,但无法输入密码。我已经考虑过编辑sudoers文件,但是编辑必须以编程方式进行,以便在重新部署新实例时显示出来,因此这看起来相当困难。在

有人知道我应该怎么做才能在弹性豆茎上动态创建这些目录吗?在


Tags: 实例命令编辑amazon进程oslinux错误

热门问题