2 Jun 2021
Have you ever tried to troubleshoot a database performance issue in an application that was built using an ORM? ORMs can simplify development of applications that communicate with databases, but since the ORMs are generating the SQL statements, it can be difficult to determine which application code is resulting in slow queries. sqlcommenter is an open source library that enables ORMs to augment SQL statements with comments about the about the code that caused its execution, making it easier to correlate your application code with the SQL statements that were generated by the ORM. In this session, Jan and Bala will demonstrate how to set up and use sqlcommenter with an application that uses Sequelize.js to diagnose query performance. They'll also touch on the other frameworks and ORMs that sqlcommenter supports as well as how you can view this data in db logs and observability tools.
- 2 participants
- 26 minutes
2 Jun 2021
For over 20 years, JavaScript was the only scripting language you could use reliably in a browser. That all changed a few years ago, when WebAssembly became supported by all major browsers. This talk is a 29,032-foot overview of WebAssembly, why it's awesome, and how to get started using it. As concrete use cases, Robert will mention two open source tools he contributed to where WebAssembly improved performance, and enabled reusing C/C++ code on the web. The talk will also cover upcoming WebAssembly features such as threads and SIMD, and will end with a discussion of use cases where WebAssembly shines (...and when the added complexity might not be worth it!)
- 1 participant
- 21 minutes
2 Jun 2021
The fire and forget communication approach for complex micro service architecture. Event based communication solves a lot of asynchronous issues that the architecture has and it makes application very loosely coupled. Often ignored because of the high complexity of implementation.
- 2 participants
- 11 minutes
2 Jun 2021
We all want to build apps that scale well, and at the same time, we need to keep the costs down. When you are scaling apps to hundreds of containers, you want to make sure you are making the best use of each instance and continually improving your app performance. Every second and in every request, your Node.js service can give you essential information on how well it performs, and you can use that data to build better applications. In this talk, you will learn which metrics you should have in place and how to use them to improve your code, creating a feedback loop that will help you continuously get the best of your Node.js application.
- 1 participant
- 26 minutes
2 Jun 2021
TypeScript makes JavaScript safer by adding static type definitions. Static definitions are wonderful; they prevent developers from making trivial mistakes by ensuring every assignment and invocation is done correctly. A variable typed as a string cannot be assigned a number, and a function expecting three arguments cannot be called with only two. These definitions only exist at build time though; the code that is eventually executed is just JavaScript. But what about the response from an API request? In this talk by Ethan Arrowood, Software Engineer 2 @ Microsoft, he will cover various solutions for safely typing dynamic data in TypeScript applications. This talk features popular technologies such as Fastify, JSON Schema, Node.js, and more!
- 1 participant
- 17 minutes
26 May 2021
The Node.js HTTP client is a fundamental part of any application, yet many think it cannot be improved. I took this as a challenge and I’m now ready to present a new HTTP client for Node.js, undici, that doubles the throughput of your application The story behind this improvement begins with the birth of TCP/IP and it is rooted in one of the fundamental limitations of networking: head-of-line blocking (HOL blocking). HOL blocking is one of those topics that developers blissfully ignore and yet it deeply impacts the runtime experience of the distributed applications that they build every day. Undici is a HTTP/1.1 client that avoids HOL blocking by using keep-alive and pipelining, resulting in a doubling of your application throughput.
- 1 participant
- 26 minutes