private void addBlockedClient(BlockedClient<T> blockedClient, long now) {
        long blockEndTimeInMillis = blockedClient.blockEndTimeMillis();
        if (blockEndTimeInMillis < now) {
            return;
        }
        T clientId = blockedClient.id();
        blockedClientIdToBlockEndTimeMillis.put(clientId, blockEndTimeInMillis);
        blockedClientSkipList.add(blockedClient);
        notifyOnTargetBlockedListener(clientId);
    }
Used to remove the local expired blocked clients quickly, even if there are a lot of blocked
clients so that we can run eviction more frequently.

@implNote It is acceptable to store the same IP or the user ID with different block times in
          the skip list because it is how the skip list works.
turms-server-common/src/main/java/im/turms/server/common/domain/blocklist/manager/BlocklistServiceManager.java