Если я делаю urlfetch.make_fetch_call
(от webapp2.RequestHandler
) с RPC, который имеет обратный вызов и не дожидается RPC, а запрос Appengine завершается, что происходит с асинхронным вызовом? Будет ли это прекращено, или Appengine позволяет это завершить?Appengine Python Async urlfetch После завершения запроса
0
A
ответ
2
Это утверждение из документации [1] намек:
«Обратный вызов не происходит в фоновом режиме, приложение должно вызвать метод (ожидание(), check_success() или get_result()), чтобы вызовите функцию обратного вызова. "
В целом, асинхронные вызовы по-прежнему являются локальными для запроса и не запускаются в отдельном процессе в среде выполнения App Engine (то есть являются «пользовательскими» потоками, а не потоками «демона», если вы хотите посмотреть в нее далее). Как только ваш запрос прекратится (либо с помощью DeadlineExceededError, либо иначе), все ожидающие асинхронные вызовы также прекратятся.
[1] https://cloud.google.com/appengine/docs/python/urlfetch/asynchronousrequests
Смежные вопросы
- 1. Appengine проблема с urlfetch (Python)
- 2. Appengine urlfetch debugging
- 3. Async urlfetch на App Engine
- 4. AppEngine UrlFetch validate_certificate = False/Нет не соблюдается
- 5. Какие ограничения urlfetch применяются к бэкэндам Python на AppEngine?
- 6. NoClassDefFoundError: com/google/appengine/api/urlfetch/ResponseTooLargeException
- 7. AppEngine urlfetch сломанный на SDK 1.9.23?
- 8. appengine, urlfetch и заголовок длины содержимого
- 9. Обработка после завершения запроса
- 10. Как отправить json, после завершения функции async
- 11. Async urlfetch Http post в App Engine using Future
- 12. Async/Await on appengine
- 13. Ошибка завершения задачи async после родительского процесса
- 14. Как добавить ListView после завершения задачи Async?
- 15. Обновление фрагмента после завершения задачи Async
- 16. Записать в файл после завершения задач async
- 17. Python GAE UrlFetch полномочия
- 18. Списки перегруппировки после завершения запроса
- 19. Ожидание завершения операции async
- 20. Дождитесь завершения задачи async
- 21. Дождитесь завершения метода Async
- 22. urlfetch перенаправлен в бесконечный цикл в python
- 23. Как использовать TLS 1.2 с appengine/urlfetch из приложения Go AppEngine
- 24. Python зависает после завершения скрипта
- 25. python thread продолжается после завершения
- 26. Как использовать пакет appengine/urlfetch с помощью goauth2?
- 27. asio - Дождитесь завершения операций async
- 28. Сигнализация завершения std :: async task
- 29. Несколько обработчиков завершения запроса async в Swift с Alamofire
- 30. GAE (Python) Urlfetch 60 Second Timeout Issue
Так это зависит от того, когда 'RequestHandler's процесс завершается? – Eliezer
Точно. Пользовательский поток не может пережить процесс, который породил его. Использование SDK модуля потоков Python можно увидеть в источнике, но оно немного волосатое - https://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/api – Adam
I «Я бы хотел, чтобы я копал это, когда у меня есть время. Я также предполагаю, что производство appengine работает по-разному. Мой главный вопрос будет заключаться в том, работает ли каждый «RequestHandler» в своем собственном процессе (надеюсь, нет). – Eliezer