def kill_service(self, service): """Restart the service. Note that after calling successfully this method, get_resource could still report the service running untile we call _store_resources again. service (string): format: name,shard. """ logger.info("Killing %s as asked." % service) try: idx = service.rindex(",") except ValueError: logger.error("Unable to decode service string.") name = service[:idx] try: shard = int(service[idx + 1:]) except ValueError: logger.error("Unable to decode service shard.") remote_service = RemoteServiceClient(ServiceCoord(name, shard)) remote_service.quit(reason="Asked by ResourceService")