Основанное на времени 32-разрядное переполнение в Java? Или SLES11?

Используйте DKIM. как запись SPF, но это показывает открытый ключ. Ваш сервер подписывает электронные письма от Вашего домен с закрытым ключом

identificator._domainkey.mydomain.com. IN txt "/*spf*/" +" v=DKIM1; k=rsa; p=MIG......endofkey" //BIND9

и в наборе ACL для проверки подписи DKIM для всей входящей корреспонденции, которая утверждает, что была от Вашего доменом

Dkim был разработан для борьбы с проблемой (рыбалка :))

4
задан 28 June 2012 в 00:50
2 ответа

Недавно я тоже столкнулся с этой проблемой, и она, похоже, связана с изменением, сделанным в 32-битной JVM Oracle между Java 6 и 7. В Linux работает 32-битная Виртуальная машина Java 7 со strace показывает следующий системный вызов, когда ServerSocket.accept () вызывается без установки SO_TIMEOUT:

32369 poll([{fd=5, events=POLLIN|POLLERR}], 1, 4294967295 <unfinished ...>

Вызов poll () передает значение тайм-аута 2 ^ 32 миллисекунды (4294967295), а не ожидаемое отрицательное значение. значение, которое указывает на бесконечный тайм-аут. Это в конечном итоге приводит к тому, что ServerSocket.accept () генерирует исключение SocketTimeoutException, которое заставляет код начальной загрузки Tomcat выполнять завершение работы сервера. Эта конкретная часть Tomcat никогда не ожидает, что ServerSocket.accept вызовет SocketTimeoutException.

Эту проблему легче воспроизвести, если вызовом poll () можно управлять так, чтобы вы не нужно ждать 2 ^ 32 миллисекунды. В Linux это можно сделать, переопределив системный вызов poll. Один из способов сделать это включает использование директивы LD_PRELOAD для загрузки замененной версии опроса. Пример кода, демонстрирующий эту идею, можно найти по адресу https://github.com/vi/timeskew . К сожалению, он не отменяет опрос, но может быть легко расширен для этого.

4
ответ дан 3 December 2019 в 03:00

У меня возникла та же проблема при использовании Tomcat 7.0.35 с Java 1.7.0_10 (32-разрядная версия) на 64-разрядном Debian Linux.

В моем случае было решено обновление и использование 64-разрядного JDK эта проблема

3
ответ дан 3 December 2019 в 03:00

Теги

Похожие вопросы