Проблема была с правилом входящего брандмауэра I, созданным для трафика через 27017.
В моем правиле входящего трафика содержалась опечатка в номере порта, которая не позволяла любому вторичному устройству связаться с первичным.
Исходящее правило было в порядке, что выглядело так, как будто ReplicaSet работал, потому что они получали информацию от Первичного.
Это создаст проблему, если вы находитесь в этом сценарии и выключаете вторичные серверы, потому что Первичные будут знать, что те отключились, что будут отправлять ваш Первичный в вторичный режим навсегда и не смогут восстановиться, пока вы не выясните выпуск.
Так может ли кто-нибудь указать на какие-либо дополнительные ресурсы для разработки программного обеспечения на основе бухгалтерского учета или даже на хорошие реализации простой системы учета?
Проект Free Digital Money Project выглядит полезным для твои нужды. Он обеспечивает базовую структуру транзакций и баланса. Он намеренно прост и абстрактен, поэтому может предложить полезные идеи дизайна, особенно если вы хотите проверить новые идеи.
Cyclos более практичен. Он охватывает учетные записи пользователей и транзакции.
MyBanco - это еще одна банковская система с открытым исходным кодом, поддерживающая банковские счета пользователей и доступ через Интернет. Его можно использовать как с виртуальными, так и с реальными валютами.
Все они имеют открытый исходный код, поэтому вы можете напрямую ознакомиться с документацией, архитектурой и кодом.
Кроме того, если вас действительно интересуют только балансы и транзакции ,
Шаблоны Fowler не чрезмерно сложны. Они о том, что необходимо. Вы вряд ли сможете создать что-то более простое, не входя в проблему или с конечными пользователями или с бухгалтером.
поиск Google "двухфазной фиксации"
Не шаблон разработки по сути, но необходимо удостовериться, что операции как [1 112] "$amount передачи от $account1 до $account2" не делают никогда , "забирают" без соответствия "депозит"... т.е. если питание выходит, прежде чем "депозит" завершается, "забирание" откатывается (отмененное)
, способные Фиксацией Транзакции составлены из невозможных (способных откатом) подтранзакций...
Предупреждение: математика BCD была изобретена для предотвращения ошибки округления в Основе 10 математики. Вы не упоминаете международные проблемы, но Вам были бы нужны фиксированная точка или "большая точность" математика, преобразование валюты и все остальные...
Деньги на хранилище как центы (целое число) вместо долларов (плавание). Это не дизайн, но это, вероятно, более полезно.
Когда я реализую бухгалтерский учет, это типичная модель журналов, транзакций, счетов и типов счетов.
tblTransactions
- Amount
- AccountID1
- AccountID2
- Type [CR/DR]
- DateEntered
У меня также есть tblJournals
, который группирует транзакции по очевидным причинам. основание. Вы также можете добавить JournalTypes, которые содержат общее описание того, что это за журнал, чтобы вы могли обнаруживать приятные вещи (отзывы и т. Д.).
Это хорошо, потому что развороты в рамках этой модели тривиальны. Вы можете просто собрать все транзакции для своего журнала и поменять местами тип.
У tblTransactions есть триггер, и триггер обновляет «CalculatedBalance» для конкретных счетов в зависимости от типа. Затем вы также можете создать отчет за определенный период и т. Д.
Для реализации этого не требуется больших знаний бухгалтерского учета, он прост, но эффективен.
Я на самом деле автор MyBanco, если бы вы хотели бы помочь, просто брось мне электронное письмо :)