У меня есть Java-код, инициирующий PubsubSubscriber с поставщиком-исполнителем. Это работает как 16 часов на холостом ходу. Однако около 1 дня на холостом ходу перестали получать сообщения из подписки. Если я перезапущу программу, она вернется к работе снова. Я прочитал из документации https://googleapis.dev/java/google-cloud-clients/latest/index.html?com/google/cloud/pubsub/v1/package-summary.html, что для того, чтобы подписчик работал вечно, нужен поставщик исполнителя. Я инициировал с одним
ExecutorProvider executorProvider = FixedExecutorProvider.create(myScheduledExecutorService); this.subscriber = Subscriber .newBuilder(subscriptionName, this) .setExecutorProvider(executorProvider) .setCredentialsProvider(myCredentialsProvider) .build();
Приведенный выше executorProvider создается с помощью
Нужно ли что-то еще настроить, чтобы подписчик продолжал получать сообщения?
Где он работает? У меня были проблемы с моим Java-ботом, использующим облако Google, быстрое исправление - использование экрана.
apt-get install screen screen
, чтобы возобновить использование вашего бота:
screen -r
, возможно, вам подойдет.