## Problem
Currently, even if `LAMBDA_REMOTE_DOCKER=1`, we unzip the zip files in the directory they are in, which is usually /var/lib/localstack, which usually has a bind mount to the host.
On docker desktop, due to the use of grpc-FUSE (on macos), this can be very slow, about 200 times slower than on volumes / directly on the host. With experimental virtio filesystem enabled (also on macos), this can be reduced to about 30 times as slow, but still problematic.
This means a lambda may take a lot of time processing, for each additional layer some more. This especially affects nodejs lambdas with huge node_modules folders.

## Probable solution
At least if `LAMBDA_REMOTE_DOCKER=1`, we should leave the initial zip files on the bind mount (for persistence etc), but the working directories after unzipping should be located on non-bind mounts, to speed up the IO for unzipping.
headers["X-Amz-Client-Context"] = context.client_context
        if context.cognito_identity:
            headers["X-Amz-Cognito-Identity"] = context.cognito_identity
        data = run_safe(lambda: to_str(event)) or event
        data = json.dumps(json_safe(data)) if isinstance(data, dict) else str(data)
        LOG.debug(
            "Forwarding Lambda invocation to LAMBDA_FORWARD_URL: %s", config.LAMBDA_FORWARD_URL
        )
        result = safe_requests.post(url, data, headers=headers)
        if result.status_code >= 400:
            raise Exception(
                "Received error status code %s from external Lambda invocation" % result.status_code
            )
        content = run_safe(lambda: to_str(result.content)) or result.content
        LOG.debug(
            "Received result from external Lambda endpoint (status %s): %s",
            result.status_code,
            content,
        )
        result = InvocationResult(content)
        return result
    def _forward_url(self, context: InvocationContext) -> str:
        env_vars = context.lambda_function.envvars
        return env_vars.get("LOCALSTACK_LAMBDA_FORWARD_URL") or config.LAMBDA_FORWARD_URL
def handle_error(
    lambda_function: LambdaFunction, event: Dict, error: Exception, asynchronous: bool = False
):
    if asynchronous:
        lambda_error_to_dead_letter_queue(lambda_function, event, error)
class LambdaAsyncLocks: