Почему так происходит вместе с uwsgi?
Александр Александров, обратите внимание, что значения всего два - ровно по количеству воркеров uwsgi.
Если никто не против, расскажу небольшую историю. Когда-то, когда я писал первое приложение на Flask, я решил, что постоянно драть сервер БД ради практически неизменных данных неразумно, и кешировал их локально. Локально, Карл! В переменных. И передавал их в шаблонизатор. А потом я выложил своё творение в сеть и тоже поставил два воркера на uwsgi. И стоило мне добавить раздел меню, как я получал странную ситуацию: на части запросов сайт отображался с созданным меню, а иногда показывалась "старая" версия. Что логично, локально (на дев-сервере) всё работало замечательно.
Roman Kitaev всенепременно прав, в коде ошибка, не в nginx и не в uwsgi.
UPD: дело в том, что воркеры uwsgi запускают изолированные процессы, каждый со своим набором данных, соединением с БД/кешами прочими няшностями. Локально в таком случае ничего нельзя хранить. Если очень хочется, стоит присмотреться к асинхронным фреймворкам с единственным процессом.
По-умолчанию, ничего не кэшируется. В коде ошибка.