История изменений
Исправление fMad, (текущая версия) :
похоже что пока лучший вариант сделать так:
[client]>…->[mirror-nginx]->[wsgi]->[django]->[middlware]->[(post/put)+header]->[slave-celery]->[requests]->[master-nginx]->[wsgi]->[django]->[proxy-api]->[replay (post/put)+header]-[requests]->[master-api]->[postgresql]->[PUBLICATION]->[n-slave]
то-есть, мидлварь перехватывает POST/PUT запросы, отдаёт celery, а та гарантрованно пересылает в очередь мастера, где он перезапускает запросы вместе с хидерами на мастере
либо перехватывать api к слейвам на уровне nginx и оттуда класть в slave-celery, тогда можно будет не переделывать авторизацию для клиентов
то-есть, необходимо добавить 1 мидлварь или перестроить nginx, добавить 1 таск, добавить 1 api на мастере
вроде проще чем заменить кучу primary key на uuid
Исправление fMad, :
похоже что пока лучший вариант сделать так:
[client]>…->[mirror-nginx]->[wsgi]->[django]->[middlware]->[(post/put)+header]->[slave-celery]->[requests]->[master-nginx]->[wsgi]->[django]->[proxy-api]->[replay (post/put)+header]-[requests]->[master-api]->[postgresql]->[PUBLICATION]->[n-slave]
то-есть, мидлварь перехватывает POST/PUT запросы, отдаёт celery, а та гарантрованно пересылает в очередь мастера, где он перезапускает запросы вместе с хидерами на мастере
либо перехватывать api к слейвам на уровне nginx и оттуда класть в slave-celery, тогда можно будет не переделывать авторизацию для клиентов
Исходная версия fMad, :
похоже что пока лучший вариант сделать так:
[client]>…->[mirror-nginx]->[wsgi]->[django]->[middlware]->[(post/put)+header]->[mirror-celery]->[requests]->[master-nginx]->[wsgi]->[django]->[proxy-api]->[replay (post/put)+header]-[requests]->[master-api]->[postgresql]->[PUBLICATION]->[n-slave]
то-есть, мидлварь перехватывает POST/PUT запросы, отдаёт celery, а та гарантрованно пересылает в очередь мастера, где он перезапускает запросы вместе с хидерами на мастере
либо перехватывать api к слейвам на уровне nginx и оттуда класть в mirror-celery, тогда можно будет не переделывать авторизацию для клиентов