ранее мое веб-приложение ASP.NET подключается к базе данных напрямую с помощью ADO.NET. Теперь я хочу изменить его на 3 уровня: уровень ASP.NET, уровень среднего веб-сервиса и уровень внутренней базы данных. Я думаю, что есть преимущество в том, что я могу абстрагировать источник данных на переднем уровне ASP.NET, слабо связать и снизить потенциальные риски безопасности, чтобы внешнее открытое веб-приложение ASP.Net могло иметь прямой доступ к базе данных и т. Д.
По сравнению с двухуровневой архитектурой с трехслойной архитектурой я столкнулся с двумя основными проблемами.
Дополнительный средний уровень веб-сервисов потребует больше трафика, например ASP.NET не взаимодействует с базой данных напрямую, но разговаривает с веб-службой, и веб-служба обращается к базе данных, что потребует больше трафика. Будет ли это узким местом? Какие-либо общие советы по решению этой проблемы, если это узкое место?
Поскольку ASP.NET не может подключиться к базе данных, но может подключиться к веб-службе, он не может легко получить объект DataSet / DataTable. Становится трудно представить данные табличной формы элементам управления с привязкой к данным. Есть ли идеи упростить кодирование уровня представления в ASP.NET?
С уважением,
Джордж