当前位置: 首页 > 面试题库 >

Selenium Server被SIGTERM杀死后未绑定到套接字

卫高明
2023-03-14
问题内容

在被杀死一次之后,Selenium服务器就挂在所有其他启动上,甚至没有尝试获取服务器端口。

重新启动可解决此问题。以不同的用户身份运行也会使selenium再次启动,但是在 进程终止后 它将不再起作用。

这是在VirtualBox VM中的Linux
2.6.32-5-amd64(debian压缩)上。查看系统调用的日志,无论何时工作,什么时候不工作,某些组件似乎在套接字绑定之前就已锁定。该selenium日志是有很大帮助没有。

输出也不给出任何指示:

$ java -jar selenium-server-standalone-2.28.0.jar
Dec 27, 2012 5:41:35 PM org.openqa.grid.selenium.GridLauncher main
INFO: Launching a standalone server
17:41:35.703 INFO - Java: Sun Microsystems Inc. 14.0-b16
17:41:35.704 INFO - OS: Linux 2.6.32-5-amd64 amd64
17:41:35.737 INFO - v2.28.0, with Core v2.28.0. Built from revision 18309
17:41:35.867 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
17:41:35.868 INFO - Version Jetty/5.1.x
17:41:35.868 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
17:41:35.869 INFO - Started HttpContext[/selenium-server,/selenium-server]
17:41:35.869 INFO - Started HttpContext[/,/]

问题答案:

这是一个Java问题。它的RNG不需要读/dev/random。在VM上,随机池受到限制,并且通常在运行一到两次后就会耗尽。由于某种原因,硒/码头初创公司的一部分要求提供有问题的RNG。为了解决这个问题,建议Java来使用/dev/urandom,而不是:

java -Djava.security.egd=file:/dev/./urandom \
     -jar selenium-server-standalone-2.28.0.jar

工作良好。



 类似资料:
  • 问题内容: 我有一个Python应用程序,该应用程序打开一个简单的TCP套接字以与单独主机上的另一个Python应用程序进行通信。有时程序会出错,或者我将直接杀死它,并且无论哪种情况,套接字都可能在未知的时间内保持打开状态。 下次我运行程序时,出现此错误: 现在,程序始终尝试使用相同的端口,因此看起来好像它仍处于打开状态。我检查了一下,很确定程序没有在后台运行,但是我的地址仍在使用中。 因此,如何

  • 根据pcntl_wait的PHP文档, wait函数暂停当前进程的执行,直到一个子进程退出,或者直到一个信号被发送,该信号的动作是终止当前进程或者调用一个信号处理函数。 但是,当我运行以下代码并使用发送到父进程时,信号处理程序仅在子进程退出后调用(即我必须等待Hibernate完成。不应该被SIGTERM打断吗? 叉子_测试. php: 输出(SIGTERM 仅在等待 30 秒后出现): PHP版

  • 问题内容: 当我在代码中指定要连接的IP时,我有一个小型的单边消息发送器,但是,我无法让套接字接受来自任何IP的连接。这是问题所在。 该是本地主机,如果我手动输入IP,例如,它的工作原理,但是,我怎么能离开它向所有人开放?还是我为此使用了错误的连接类型? 问题答案: 如果要绑定到所有可用的IPv4地址,请指定为IP地址。如果您在路由器后面,并且希望您的套接字可以通过Internet访问,而不是仅在

  • 问题内容: 我从python脚本生成了5个不同的进程,如下所示: 我的问题是,当父进程(主脚本)以某种方式被杀死时,子进程继续运行。 当父进程被杀死时,有没有办法杀死这样生成的子进程? 编辑:我正在尝试: 但这似乎不起作用 问题答案: 我自己也遇到了同样的问题,我有以下解决方案: 打电话之前,您可以设置。然后如此处所述python.org multiprocessing 进程退出时,它将尝试终止其

  • 问题内容: 我正在使用child_process.spawn()从在Ubuntu上运行的Node.JS应用程序启动脚本。据我所知,标准的分叉或生成的* nix进程通常不会在父进程死后死亡,但是当从Node.JS生成进程时,它们似乎在我的应用程序崩溃或被ctrl-c等终止时被杀死。 。 为什么会这样,并且有解决办法?我似乎在child_process API中找不到任何明显的选项。 我的应用程序启动