Исходя из описания, ваша архитектура выглядит как Веб-страницы -> Услуги -> База данных . Страницы генерируются динамически на основе данных в базе данных.
Например, при поиске занятых сведений службы обращаются к базе данных, получают сведения о сотруднике и отображаются в пользовательском интерфейсе.
Теперь, если вы создадите контент и сохраните его как веб-страницу для каждого сотрудника, это решение не будет масштабироваться. Кроме того, если информация о сотруднике будет изменена в базе данных, у вас будут устаревшие данные, если вы не воссоздаете страницу.
Моя рекомендация заключается в том, что архитектура должна иметь сервер кэширования, а новая архитектура должна выглядеть следующим образом: Веб-страницы -> Службы -> Сервер кэширования> База данных. Службы должны запрашивать базу данных, создавать страницу и хранить в кеше. Ключом кеша должен быть URL страницы, а значением должен быть контент страницы. Теперь, когда URL попадает в сервисы, сервисы получают страницу из кэша, а не попадают в базу данных. Если ключ недоступен в кеше, службы будут запрашивать базу данных и заполнять кеш ключом и значением.
" Ключ - это URL страницы. Значение - это содержимое страницы, на которой скрыта дата обновления. "
У вас может быть внутреннее задание или отдельная служба для обновления кэша при обновлении данных в базе данных. Задание может сравнивать обновленную дату в базе данных с датой в значении кеша и очищать кеш, если дата не совпадает. Задание, выполняемое в фоновом режиме для обновления кэша, будет выполняться за сценой и не повлияет на производительность пользователя или пользовательского интерфейса.