为了增加Ubuntu Linux机器上所有进程的FD限制,我们进行了以下更改 /etc/security/limits.conf
soft nofile 10000
hard nofile 10000
Run Code Online (Sandbox Code Playgroud)
我们还增加了所需的会话pam_limits.so在/etc/pam.d/login.所有已注销并再次登录的用户都会反映这些更改.无论在这些用户下开始的新流程是什么,都会获得新的FD限制.
但对于在无头用户下运行的进程,这些变化并未得到反映.在无头用户下运行的进程可以反映哪些变化的方式是什么?
假设有两个客户端正在访问相同的redis list datastructure.一个是做LPOP而另一个是在同一个列表上做RPUSH.如果它们并行运行,这两个客户端之间是否存在任何争用?当一个客户端访问它时,Redis会锁定mylist(下面),即使并行运行的客户端正在访问mylist的不同端点吗?
Client 1
RPUSH mylist a
RPUSH mylist b
Client 2
LPOP mylist
LPOP mylist
Run Code Online (Sandbox Code Playgroud)
客户端1和客户端2并行运行.如果在这种情况下会有争用,请告诉我.