Итак, у меня есть API, с помощью которого я делаю вызов БД, который извлекает около 500 записей (все строки и все столбцы), после чего я просматриваю каждую строку, обрабатываю данные и публикую их. У меня есть предположение, что здесь что-то не так. Мое приложение выходит из строя, а затем перезапускается. Я использую SQLAlchemy и flask-restx.
Я использовал профиль импорта Memory_profiler для метода профиля. Когда я впервые вызвал API, переменная, содержащая данные БД, имела размер 9,5 МБ, затем для следующего запроса она стала 3,5 МБ, а затем для последующего запроса. Я понятия не имею, почему размер продолжал колебаться, а также для того же API я возвращал процесс.memory_info().rss / (1024 * 1024)
Для каждого запроса RSS память продолжала расти. Как узнать, есть ли в моем коде фрагментация памяти?
Я даже попробовал gc.collect(), не помогло. Я также попробовал del mylist
Код:
@staticmethod
def run():
groups: List[MyGroups] = Group.get_all_groups()
for group in groups:
MyClass.validate_and_publish_group(group) #RabbitMQ
groups = None
del groups
Это API, который будет вызываться
@group_trigger_ns.route("/groups/trigger")
@group_trigger_ns.response(500, "something unexpected happened", model=error_model)
class GroupProcessingTrigger(Resource):
"""Contains all the routes for triggering Groups. """
@group_trigger_ns.response(
code=202, description="Triggers the processing for all groups")
@group_trigger_ns.response(code=405, description="Request must be POST for triggering")
def post(self):
try:
gc.enable()
MyClass.run()
except Exception:
LOGGER.error("[group trigger] error occurred", exc_info=True)
gc.collect()
memory_after_collection = process.memory_info().rss / (1024 * 1024)
return memory_after_collection, 202
@staticmethod
def init_routes():
LOGGER.debug("[API] Group Trigger Route registration done")
Подробнее здесь: https://stackoverflow.com/questions/793 ... gmentation
Как узнать, имеет ли мое приложение Python Flask фрагментацию памяти? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Внутренняя ошибка сервера 500 при использовании flask - flask и flask - шаблона рендеринга
Anonymous » » в форуме Python - 0 Ответы
- 69 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Внутренняя ошибка сервера 500 при использовании flask - flask и flask - шаблона рендеринга
Anonymous » » в форуме Python - 0 Ответы
- 57 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Внутренняя ошибка сервера 500 при использовании flask - flask и flask - шаблона рендеринга
Anonymous » » в форуме Python - 0 Ответы
- 71 Просмотры
-
Последнее сообщение Anonymous
-