### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

It seems like whenever I open a connection to `localhost:4566` (4566 being exposed from the localstack container), for the next ~1 second any HTTP calls will have delayed responses. If I open 10 connections, the delay will be 10 seconds.

### Expected Behavior

Multiple connections can be opened and don't impact other requests until a certain connection limit.

### How are you starting LocalStack?

With a `docker run` command

### Steps To Reproduce

1. run localstack: `docker run --rm -it -p 4566:4566 --name ls localstack/localstack:0.14.0` - I managed to reproduce it with versions as old as 0.12.0
2. run something like this to see how long curls take inside the container: 

```bash
docker exec -it ls /bin/bash

# inside the container:
while true; do time curl localhost:4566; sleep 0.1; done
```

3. open connections with telnet:

```
telnet localhost 4566
```

4. observe extended response times in the curl loop. For me it's ~1s extra per open connection (I'm simulating opening more connections with a JVM application opening sockets as I request).

### Environment

```markdown
- OS: macOS / ubuntu, tried both x86 and arm64 macs, and an arm64 linux
- LocalStack: 0.12.0, 0.13.1, 0.14.0
```


### Anything else?

This surfaces itself as extremely slow responses whenever you have e.g. a JVM application that keeps a cached connection pool. Even 10 connections in a pool are enough to cause consistent delays every couple seconds (which I think is after the connections are closed due to the defaults on my client), under no additional traffic targeting localstack.
adjusted = self._adjust_partition(decoded, static_partition)
                return to_bytes(adjusted)
            except UnicodeDecodeError:
                
                return source
        elif not isinstance(source, str):
            
            return source
        return self.arn_regex.sub(lambda m: self._adjust_match(m, static_partition), source)
    def _adjust_match(self, match: Match, static_partition: str = None):
        region = match.group("Region")
        partition = self._partition_lookup(region) if static_partition is None else static_partition
        service = match.group("Service")
        account_id = match.group("AccountID")
        resource_path = match.group("ResourcePath")
        return f"arn:{partition}:{service}:{region}:{account_id}:{resource_path}"
    def _partition_lookup(self, region: str):
        try:
            partition = self._get_partition_for_region(region)
        except ArnPartitionRewriteListener.InvalidRegionException:
            try:
                
                
                partition = self._get_partition_for_region(config.DEFAULT_REGION)
            except self.InvalidRegionException:
                
                partition = self._get_partition_for_region(AWS_REGION_US_EAST_1)
        return partition
    @staticmethod
    def _get_partition_for_region(region: Optional[str]) -> str: