【发布时间】:2014-02-16 23:48:22
【问题描述】:
我有一个使用 Selenium 网络驱动程序的应用程序。
我想让它成为一个网络应用程序,并考虑以下云计算服务:
- 谷歌应用引擎 (GAE)
- 谷歌计算引擎 (GCE)
- 亚马逊弹性计算 (EC2)
选项 1:
GAE 是我的首选,因为它是免费的。
但是,我不太确定是否可以在其上运行 Selenium web-driver(即打开远程浏览器)。
根据https://stackoverflow.com/a/19940165/1382251我不能,因为它不支持创建线程,也不支持原生代码(浏览器需要两者)。
这个答案没有任何赞成票,所以我想断言:
- 关于线程问题 - 是否不能像在本地运行时那样打开一个进程 (Firefox) 并从另一个进程(我的应用程序)访问它?
- 关于本机代码问题 - 如果我使用 Selenium web-driver 源代码而不是 JAR 文件,是否不能解决此问题?
选项 2 和 3:
- 目前,我不需要任何额外的计算能力或内存空间。我的应用程序也不需要在磁盘上存储任何东西。那么就仅优化每小时价格而言,哪个更好 - GCE 还是 EC2?
- 在 GAE 中,我知道我的服务器实例仅在收到 HTTP 请求时才“活动”,并且仅在之后的有限时间内处于“活动状态”。所以我猜GAE用某种通用服务来包装它,该服务在将请求传递给应用程序本身之前监听请求。 GCE 和 EC2 上的每小时价格是指我的服务器的“实时时间”,还是从我上传的那一刻起每小时固定?
【问题讨论】:
标签: java google-app-engine amazon-ec2 selenium-webdriver google-compute-engine