Concurrency and sandboxes models applied to lua http servers
Noemi de la rocque rodriguez (Contributor), Renato fontoura de gusmao cerqueira (Contributor), Roberto ierusalimschy (Contributor), Silvana rossetto (Contributor), Leonardo godinho da cunha (Creator)
Client-server developers constantly have to deal with questions concerningperformance and scalability, since the number of simultaneous clients cangrow significantly. Moreover, if these systems can execute third-party code, there is also the concern of secure execution of these pieces of code. Thiswork goal is to benchmark several combinations of concurrency and sandboxesmodels. As an example of a system exposed to several concurrentrequests that must be able to execute third-party code, we have the webservers. Xavante is a web server developed in the Lua programming languagethat originally uses an concurrency programming model based oncoroutines. This server oers the flexibility to map request types to dierenthandlers. Some of these request handlers dynamically allow the use ofthird-party code, therefore they make use of sandboxes in order to offer aprotected running environment. In this work we test the use of Xavantesnative sandboxes and other types of sandboxes. We also improve the extensibilityof the server, using a dierent architecture in order to allow differentconcurrency strategies. Using the new architecture we tested the performanceof several combinations of sandboxes and concurrency programmingmodels, allowing the model comparison not only in a qualitative point ofview but also measuring the related performance impacts
Thesis, Dissertation, Portuguese, 2006-09-13
MAXWELL, 2006-09-13