Добрый день. Хочу совета по проектированию и ведению учета финансов и склада в интернет-магазине.
Поискал информацию на просторах интернета. Нашел статью неплохую статью
на Хабре .
Собственно как я и планировал сделать также
Но я для интереса решил усложнить реализацию на случай большого количества операций — баланс по счету на начало каждого месяца хранится в экземплярах Balance, при записи каждой операции балансы на начало следующего месяца (и позже, если есть) пересчитываются. Зато для расчета баланса на текущую дату нужно только взять баланс на начало месяца и посчитать оборот по операциям текущего месяца. Такой подход не вызовет проблем с производительностью со временем.
Нагрузка - 1000 заказов в неделю, около 5000 операций в неделю .
Для такой нагрузки хватит ли хранить итоговую сумму/склад ежемесячно, может лучше каждую неделю?
Как быть если я нашел ошибку в финансах и сделал редактирование записи месячной давности?
Аналогия будет и со складом товара?
По финансам была еще мысль хранить архив на дату операции.
Плюсы:
- не надо ничего пересчитывать.
- всего 1-2 итерации
Недостатки:
- при исправлении операции из архива ( 7,14, 30 и более дней спустя) жесткий перерасчет?
У кого какой есть опыт построения таких системы и другие алгоритмы подсчета финансов и актуального стока?
P.S. Интересно было бы посмотреть организацию такого сервиса как zenmoney.