У нас есть два приложения AppEngine (Java). Один из них использует URLFetch для другого, чтобы создать встречу. В приемнике мы добавили функцию, в которой мы используем API канала, чтобы узнать, есть ли какие-либо открытые каналы и сообщить им о новых данных.SocketTimeoutException с использованием URLFetch для службы, отправляющей сообщения канала
Ошибка URLFetch при ошибке SocketTimeoutException. Весь код в приемнике выполняется (включая все открытые каналы, которые будут уведомлены), но вызывающее приложение по-прежнему получает исключение SocketTimeoutException. Когда я прокомментирую строку уведомления канала, нет ошибки.
Это происходит только в развернутом приложении, а не в режиме dev. Кроме того, вызов не приближается к достижению 60-секундного (или даже старого 10-секундного) тайм-аута, разрешенного URLFetch.
Мы не можем помочь, не видя код и стек. –
Я собрал образец, но мы работали вокруг него. Вместо того, чтобы напрямую уведомлять каналы, мы отправляем запрос в очередь задач. Эта очередь делает то же самое, но не возвращает исключение SocketTimeoutException. В любом случае оригинал был просто стандартным сервлетом с вызовом ChannelServiceFactory.getChannelService() .sendMessage в конце. –
Это должно быть что-то конкретное для вашего приложения - это определенно не тот случай, когда невозможно сделать urlfetch из одного приложения в другое! –