Реализация буферной структуры в Python
-
03-07-2019 - |
Вопрос
Я пытаюсь написать небольшое приложение wsgi, которое будет помещать некоторые объекты во внешнюю очередь после каждого запроса.Я хочу сделать это в пакетном режиме, т.е.заставить веб-сервер поместить объект в буфероподобную структуру в памяти, а другой поток и/или процесс для отправки этих объектов в очередь в пакетном режиме, когда буфер достаточно велик или после определенного времени ожидания, и очистить буфер.Я не хочу находиться в синдроме NIH и не хочу возиться с потоками, однако мне не удалось найти подходящий код для этой работы.Какие-либо предложения?
Решение
Исследовать https://docs.python.org/library/queue.html чтобы увидеть, соответствует ли он вашим потребностям.
Другие советы
Поскольку вы пишете «нить и/или процесс", смотрите также multiprocessing.Queue и multiprocessing.JoinableQueue с 2.6.Это межпроцессные варианты Queue.
Использовать буферизованный поток если вы используете Python 3.0.