Highest possible performance. For example you might do something like this in a serverless function. The handler function above calculates the th number in the Fibonacci sequence. After the calculation is complete your function will continue processing the request and eventually return a response. Moving it outside of the handler allows the calculation to be done when the environment has more resources available and makes it only run once instead of on every call. The updated code looks like below. Another thing to keep in mind is the support for top level await which allows you to run async code outside of handlers. We've found that running a function explicitly outside of a handler can have a positive impact on the function's performance. Keep your functions as simple as possible. Serverless functions are very small, isolated pieces of code. If your function and dependency tree are large and complex or spread across many files you may find that the runtime takes longer to read and.
Interpret it. Here are some thi photo editing servies ngs you can do to improve startup performance: Include only the code your function actually needs to do its job Don't use libraries and frameworks that load a lot of stuff you don't need The processing speed is faster. Don't do more work than needed. Any value calculations or expensive operations that may be reused each time the function is called should be cached as variables outside the handler scope. Doing this avoids performing these expensive operations every time the function is called. Consider a situation where the values stored in the database do not change frequently such as configurable redirects. Although this code works but the query to find the redirects is run every time the function is called. the database to find the value you already found during the last call.
A better way to write it is to first check the cached value outside the handler. if If not found, run the query and store the results for next time. Now the query will only run the first time the function is called. Any subsequent calls will use the cached value. One final thing to consider is using provisioned concurrency to keep things warm if you use them. According to the documentation note that provisioning concurrency initializes the requested number of execution environments so that they are ready to respond immediately to function calls. Please note that configuring provisioned concurrency will incur charges to your account. This allows you to maintain a specified number of available execution environments that can respond to requests without cold-starting. While .