Python Brasil [10]

Talk "Building solid web services with Loads and Vaurien"

by Tarek Ziadé .


Trilha: English
Nível da audiência: Iniciante
Idioma: Inglês
Estado: Aceita


Tarek Ziadé

Engineer Manager at Mozilla. Retired Python Packaging Contributor.
Twitter: @tarek_ziade


We're building a lot of web services at Mozilla: Firefox Sync, Find My Device, Firefox Account, The Location Service etc. They are "simple" services because they are usually a thin layer of code in front of various database systems or 3rd party services - Our app are querying data and serving JSON for the clients most of their time. The real challenge is to make sure they scale for millions of users and that they are robust when something goes wrong in the backend. In the past 2 years, we've developed two specific tools to improve our web services: Vaurien and Loads. Loads is a distributed load testing tool that let us hammer our web services to make sure they can cope with the load by performing HTTP and Websockets requests. It's used to stress our apps before each production push. Vaurien is a TCP proxy that let us simulate problems between our front application and all our backends - and find weaknesses in our codebase before they are pushed in production - This talk will explain how these tools work and how you can use them in your own web projects to make them faster & more robust.