[ipxe-devel] iPXE Prebuilt binary web interface

Robin Smidsrød robin at smidsrod.no
Fri Jan 4 12:43:57 UTC 2013

On 03.01.2013 16:44, Michael Brown wrote:
> On Saturday 22 Dec 2012 09:20:46 Robin Smidsrød wrote:
>> I'd like to elaborate on Michael's idea that you should be able to link
>> to a special build using just a simple GET url, but I feel that maybe we
>> should try to think a bit more in depth about the architecture of how to
>> run a "web compile platform".
>> I've been looking into queuing systems lately (ZeroMQ to be specific),
>> and I was thinking that we could have a worker that is able to build a
>> specific version with specific set of parameters, and that output should
>> be cachable, so you don't need to redo it again if someone asks for the
>> same thing again.
>> <snip>
> The build.fcgi script running on build.ipxe.org will cache the result of "make 
> blib" (which includes all non-debug objects) for the most-recently-requested N 
> git revisions.  This gives a response time of around 3s for any build target 
> corresponding to a cached git revision.
> Uncached git revisions are handled by checking out the nearest cached 
> revision, then updating the git tree to the requested revision.  This allows 
> for an incremental build, which in many cases will also take only a few 
> seconds.
> Given that the response times involved, I'm unclear on what would be gained by 
> using ZeroMQ or equivalent.

What do you do when multiple web users want different revisions at the
same time? You obviously need to either do concurrent compiles in
separate work dirs, or put the jobs in a queue and wait for the first to
finish before starting the next.

-- Robin

More information about the ipxe-devel mailing list