Я новичок в разработке REST и создаю простой API отдыха, чтобы запрашивать значения базы данных у клиентов.Я использовал ассистент проекта «Приложение веб-сервера Delphi» (тот, который использует TIdHTTPWebBrokerBridge и WebModule, где вы создаете различные «Действия»).Он работает нормально, и я могу делать запросы от клиентов.
Серверный WebModule содержит FDConnection и некоторые компоненты FDQuery для выполнения запросов к базе данных (MySQL), и каждое действие выполняет определенный запрос с конкретными полученными параметрамичерез параметры запроса.
Клиентское приложение использует компоненты TRESTResponse, TRESTRequest, TRESRResponse для отправки / получения данных.
Например:
- запрос клиента на сервер некоторыезначения для конкретного пользователя, отправив "user = user1" и "passwd = ***" в качестве параметров запроса.
- сервер выполняет запрос "select * from xxx, где user = user1 и passwd = ...…... "и отправляет ответ клиенту.
Каждый запрос" специфичен для пользователя ".
Хорошо, он работает, но теперь у меня есть некоторые опасения из-за моегоrest / webbroker, работающее невежествоМожет ли сервер ответить неверными данными, потому что курсор FDQuery находится в другой записи?Или веб-брокер создает запрос для каждого запроса без проблем?
Лучше ли создавать FDQuery во время выполнения для каждого запроса и уничтожать его после завершения запроса?
Я сделал простой тествчера запускал три экземпляра клиентского приложения и одновременно отправлял 300 запросов на сервер (по 100 от каждого клиента), и он работал, получая правильные данные, но я не знаю, является ли это достаточной гарантией.
Естьэто (Delphi Web Server Application) правильный способ создания сервера?Чем отличается DataSnap?
Любой совет?