Когда вы запускаете веб-ферму с балансировкой нагрузки, каждый из серверов имеет свой собственный кэш. Одной из возможностей может быть реализация механизма, который заставляет веб-сервер, который ответил на исходный запрос «удалить кеш», сделать такой же запрос другим серверам. Это может быть довольно сложным и трудным для управления, хотя. Каждый сервер должен был бы «знать» о других серверах в ферме, чтобы знать, с какими другими серверами связаться.
Если вы поместите что-то в файл конфигурации (или базу данных) для хранения полного списка серверов (возможно, по прямому внутреннему IP-адресу) и напишите свой код очистки кэша, чтобы автоматически обнаружить текущий сервер, тогда тот же код может быть развернут на всех серверах.
В качестве альтернативы, вы можете просто использовать метод грубой силы. Храните список внутренних IP-адресов, и когда веб-сервер обрабатывает определенный запрос, отправьте этот же запрос всем внутренним IP-адресам. Код, который обрабатывает запрос, должен знать, является ли он внутренним или внешним запросом, чтобы избежать бесконечного цикла запросов от каждого сервера. Это можно сделать с помощью пары имя / значение в строке запроса, которая будет указывать, что это внутренний запрос - что-то, что не будет включено в запрос браузера.
Это довольно теоретическая дискуссия, но звучит ли это как то, что может сработать для вас?
ПРИМЕЧАНИЕ. Предполагается, что кэширование выполняется в приложении IIS на каждом веб-сервере, а не на отдельном уровне пользовательских служб.