@beduin01

Как правильно спроектировать микросервис?

Как спроектировать код. Есть (пишется) микросервис. Который принимает JSON и пишет его в БД.
Есть несколько вопросов.

1. connection где лучше объявлять\открывать в bin\main.dart?

PostgreSQLConnection connection; // делаем доступным глобально, но потом import main везде придется делать
void main() async { 

}


Если не так, то куда лучше положить?
2. Сервис должен обрабатывать и вставлять в БД прилетающий JSON. Как этот момент лучше спроектировать?

app.post('/api', (req, res) async {
    Database db = Database();
    await db.doSomeInsert(req);
  });


Стоит ли создавать экземпляр работающий с БД таким образом?
Если у меня несколько эндпоинтов в API то нужно ли для каждого создавать изоляты?

Главный вопрос -- будет ли в Dart разница между:
app.post('/api', (req, res) async {
    Database db = Database();
    await db.doSomeInsert(req);
  });

и
Database db = Database();
  app.post('/api', (req, res) async {
    await db.doSomeInsert(req);
  });


Если у меня несколько десятков запросов прилетает одновременно, а внутри класса db хранятся промежуточные поля которые для каждого JSON уникальны, то получается, что они будут перезаписываться и это приведет к ошибке?
  • Вопрос задан
  • 26 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы