У меня есть два сервера с именами хостов comp1
и comp2
.У меня также есть плавающий псевдоним (master
), который динамически отображается на один из двух серверов.Я обслуживаю один и тот же апплет с обоих серверов.Клиенты обычно подключаются к master
, но вполне допустимо подключаться к comp1
или comp2
напрямую.
Клиенты жалуются, что им всегда приходится ждать загрузки апплета (это довольно большой).Я думал, что как только клиент загрузит необходимые файлы jar, они будут кэшированы и больше не будут загружаться.Сначала я думал, что плагин клиента настроен на отсутствие кэширования, но я думаю, что нашел причину проблемы, хотя я ее не понимаю.
- Подключите клиент к
master
(который в настоящее время указывает на comp1
) в первый раз.Надо дождаться загрузки банок.Это ожидается. - Снова подключите клиента к
master
.Мне не нужно ждать загрузки банок.Это также ожидаемое / желаемое поведение. - Подключение клиента к
comp1
.Надо дождаться загрузки банок.Я бы предпочел, чтобы это не происходило, поскольку это один и тот же сервер, но я могу понять почему, поскольку comp1
представляется клиенту совершенно другим хостом. - Подключите клиента обратно к
master
.Опять же, я должен ждать загрузки всех банок. Это не то, что я ожидал. Банки должны были быть загружены уже в шагах 1 / 2.
Используя панель управления Java, я могу видеть ресурсы, которые находятся вкэш.Мне кажется, что ресурсы основаны на URL, поэтому я не знаю, почему я получаю то, что я делаю.Кажется, будто два разных имени хоста для одного и того же сервера портят кеш клиента.
Я должен отметить, что имя хоста master
- это не просто псевдоним DNS.Это действительно другой IP-адрес, который comp1/comp2
динамически связывает / отменяет привязку во время работы приложения.
Можете ли вы объяснить, что я вижу здесь, или предложить какие-то пути для исследования?