Мои контакты для любых вопросов:
Load testing in Lazada
* How we came to this and why we need it;
* What we use ready-made and what we had to
* How we analyze test results and what
* Why we trust the results of testing;
* How we shoot on production and do not
* What resources are needed to build a load
* What we want to do in the future.
Linux core software interface is, perhaps, one of the software interfaces that are most frequently used by API-developers of server software. So, it may seem to an outside observer that such an important interface must follow the most stringent standards, meet interests of programmers and be elaborated down to the last detail.
However, this is far from it, as my personal experience shows. In my report, I will tell you in detail about what defects I used to face, and what capabilities Linux API is strongly lacking, to make nginx our other developments even better and faster. I will draw parallels between how those issues are being resolved in other unix-like operating systems.
I do hope that my report will be useful not only for those who deal with Linux core directly, but also for a wider audience, as vivid negative example of how software interfaces still should not be designed.
The Go language has already gained considerable popularity and is increasingly used to write network services or console utilities. From version to version, the compiler and the performance of the standard library are improved. However, sometimes there is a task to find and speed up the bottleneck, find a lock or explain the delays of the garbage collector. This is what my report is about. We will learn how to write the right benchmarks, use the pprof and execution tracer, look at the runtime debug information, and touch on the advanced debugging features on Linux. I will also talk about some of the existing optimizations of the Go compiler and how not to accidentally turn them off.