@Override
    public <T> void register(Class<T> remoteInterface, T object) {
        register(remoteInterface, object, 1);
    }
@Test
    public void testInvocationWithServiceName() {
        RedissonClient server = createInstance();
        RedissonClient client = createInstance();

        server.getRemoteService("MyServiceNamespace").register(RemoteInterface.class, new RemoteImpl());

        RemoteInterface serviceRemoteInterface = client.getRemoteService("MyServiceNamespace").get(RemoteInterface.class);
        RemoteInterface otherServiceRemoteInterface = client.getRemoteService("MyOtherServiceNamespace").get(RemoteInterface.class);
        RemoteInterface defaultServiceRemoteInterface = client.getRemoteService().get(RemoteInterface.class);

        assertThat(serviceRemoteInterface.resultMethod(21L)).isEqualTo(42L);

        // Invoking a service in an unregistered custom services namespace should throw
        Assertions.assertThrows(RemoteServiceAckTimeoutException.class, () -> {
            otherServiceRemoteInterface.resultMethod(21L);
        });

        // Invoking a service in the unregistered default services namespace should throw
        Assertions.assertThrows(RemoteServiceAckTimeoutException.class, () -> {
            defaultServiceRemoteInterface.resultMethod(21L);
        });

        client.shutdown();
        server.shutdown();
    }