У Орлеана нет мнения о том, как хранить ваши данные: делайте то, что подходит для вашего приложения. В ответ на ваш вопрос, вот некоторые преимущества и недостатки использования ручного маршрута и непосредственного взаимодействия с базой данных вместо использования стандартной модели персистентности.
Преимущества:
- Точный контроль над тем, когда и как осуществляется доступ к данным, включая способ их сериализации
- Возможность выполнять запросы к вашим данным
Недостатки:
- Менее автоматизировано - вы отвечаете за то, чтобы ваше зерно считывало нужные данные (постоянство зерна выполняет чтение во время активации)
- Вы отвечаете за управление пулами соединений, вызовами хранилища и т. Д. c
- Нет автоматизации c управление параллелизмом - разработчик должен предотвратить одновременный доступ, приводящий к неправильной перезаписи данных. Поставщики устойчивости зерна обычно используют проверки ETag для обеспечения согласованности, поэтому вы можете реализовать аналогичную схему, когда делаете это вручную.
Эти преимущества могут быть убедительными, в зависимости от ваших потребностей.
Вы также можете использовать гибридный подход и написать собственного провайдера хранения, который дает вам некоторый контроль над тем, как хранятся ваши данные, и, поскольку вы контролируете это, вы можете также обращаться к базе данных напрямую для выполнения запросов.