Skip to content
This repository has been archived by the owner on Oct 30, 2020. It is now read-only.

Long-running browser instead of starting per job #8

Open
bergie opened this issue Mar 6, 2016 · 2 comments
Open

Long-running browser instead of starting per job #8

bergie opened this issue Mar 6, 2016 · 2 comments
Milestone

Comments

@bergie
Copy link
Member

bergie commented Mar 6, 2016

Currently we start up PhantomJS for each job, which likely takes a non-trivial amount of time.
Related TODO, add instrumentation to figure out how long exactly this takes.

Possibly best done by using WebDriver protocol. This will also future-proof us a bit, as it eases changing to a different browser (like Chromium, Firefox etc).
However, there are cases where we likely will need to kill the process, like when job hangs forever (longer than deadline).

Need to ensure that this does not interfere with concurrency #4. Might be best to try to keep N (where N = concurrency) webbrowser running. Would then have to hold incoming jobs until for the next available browser is available for new work. Quite tricky compared to current situation...

@jonnor jonnor modified the milestone: 2.x Mar 8, 2016
@jonnor
Copy link
Member

jonnor commented Mar 8, 2016

For security reasons, each job will need their own JavaScript context. And we need to be able to communicate in a token to that particular job context without other jobs being able to intercept it (see #9).

@jonnor
Copy link
Member

jonnor commented Aug 21, 2016

It actually looks like startup is on the order of 100 ms on a small laptop with SSD. So I'm leaning towards making this a wont-fix

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants