Борьба с кракозябрами в запросах
Настраивая работу тэгов в pebble столкнулся с проблемой кривой кодировки для русскоязычных тегов, т.е. русскоязычные теги в Pebble у меня не работали...
408 ошибка, tomcat и Microsoft Internet Explorer 6
Небольшое расследование на тему возникновения ошибки в процессе авторизации в tomcat:
"HTTP Status 408 - The time allowed for the login process has been exceeded. If you wish to continue you must either click back twice and re-click the link you requested or close and re-open your browser"
"HTTP Status 408 - The time allowed for the login process has been exceeded. If you wish to continue you must either click back twice and re-click the link you requested or close and re-open your browser"
Ошибка в ehcache "singleton CacheManager"
Иногда наблюдаю в логах непонятную активность с повторяющимися сообщениями от hibernate о ненайденых настройках кэша. Что самое страшное эти сообщения дублируются сотнями, что говорит о ненормальности работы сервера и кэша ehcache.
Вчера в логах встретилось следующее сообщение:
[TP-Processor3] WARN net.sf.ehcache.CacheManager - Creating a new instance of CacheManager using the diskStorePath "/usr/local/tomcat/temp" which is already use
d by an existing CacheManager.
The source of the configuration was classpath.
The diskStore path for this CacheManager will be set to /usr/local/tomcat/temp/e
hcache_auto_created_1249728036213.
To avoid this warning consider using the CacheManager factory methods to create
a singleton CacheManager or specifying a separate ehcache configuration (ehcache
.xml) for each CacheManager instance.
Погуглив на эту тему, выяснил что оказывается старый метод кэширования был зависим от приложения, что и создавало тучи папок "ehcache_auto_created_" во временной папке томката. Лекарство от недуга, уже придумано в EhCache 1.2, для этого правим hibernate.cfg.xml file:
<property name="hibernate.cache.provider_class">
net.sf.ehcache.hibernate.SingletonEhCacheProvider
</property>
И получаем единый кэш на весь экземпляр Tomcat.
Поиск утечек памяти (memory leaks) в Tomcat 5
На боевом сервере неожиданно начались проблемы с памятью, дольше часа экземпляр томката не выдерживал и глухо зависал.
Пришлось разбираться комплексно со всей системой.
Пришлось разбираться комплексно со всей системой.
Развлекуха с Hibernate
На днях был озадачен в логе никому не нужным update. Hibernate почему-то обновлял запись пользователя при каждом обращении к его объекту.
Asus EEE PC 901 - лучший нетбук администратора
Нашумевший ноутбук фирмы ASUS открывший новую нишу в сегменте ноутбуков, на сегодняшний день имеет множество вариантов, серьезно отличающихся функциональностью.
В обзоре вы сможете прочитать о лучшем, на мой взгляд, продукте из этой серии, который позволяет решать "на воздухе" повседневные задачи администратора веб- и прочих серверов и кроме этого обладает идеальным соотношением цена/количество возможностей.
В обзоре вы сможете прочитать о лучшем, на мой взгляд, продукте из этой серии, который позволяет решать "на воздухе" повседневные задачи администратора веб- и прочих серверов и кроме этого обладает идеальным соотношением цена/количество возможностей.
Проблема с UDMA на ICH7 и CentOS 5
На одном из серверов столкнулся с чудной проблемой - SATA диски распознавались как IDE и отказывались работать на нормальной скорости через UDMA.
В результате непродолжительных боёв выяснилось, что просто необходимо в grub в menu.lst добавить опции: ide0=noprobe ide1=noprobe . Эти опции отключают модуль generic_ide который перехватывает перед загрузкой на себя диск и никаким другим образом их потом нормально работать не заставишь.
Кстати перед перезагрузкой желательно проверить fstab так как все диски поменяют свои буквы с /dev/hd* на /dev/sd*. В моём случае конфигурация была всего с одним жёстким диском и нигде имена устройств прописаны напрямую не были, поэтому править ничего не пришлось. Кстати диск был /dev/hdc а стал /dev/sda , это тоже стоит учесть при настройке.
Итоговое меню для загрузки:
CentOS (2.6.18-53.1.14.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-53.1.14.el5 ro root=LABEL=/ ide0=noprobe ide1=noprobe
initrd /initrd-2.6.18-53.1.14.el5.img
В результате непродолжительных боёв выяснилось, что просто необходимо в grub в menu.lst добавить опции: ide0=noprobe ide1=noprobe . Эти опции отключают модуль generic_ide который перехватывает перед загрузкой на себя диск и никаким другим образом их потом нормально работать не заставишь.
Кстати перед перезагрузкой желательно проверить fstab так как все диски поменяют свои буквы с /dev/hd* на /dev/sd*. В моём случае конфигурация была всего с одним жёстким диском и нигде имена устройств прописаны напрямую не были, поэтому править ничего не пришлось. Кстати диск был /dev/hdc а стал /dev/sda , это тоже стоит учесть при настройке.
Итоговое меню для загрузки:
CentOS (2.6.18-53.1.14.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-53.1.14.el5 ro root=LABEL=/ ide0=noprobe ide1=noprobe
initrd /initrd-2.6.18-53.1.14.el5.img
Рекурсивная конвертация файлов с помощью iconv
How to recursive convert files with iconv to UTF-8
Задался сегодня задачей конвертации проекта в UTF-8. Изрядно порывшись в интернете нашёл тучу неработающих или криво работающих вариантов. В результате был рождён следующий гениальный скрипт под названием /usr/bin/fconv
Очередной ап ТИЦ яндекса
Давно наблюдаю за ТИЦ для моего любимого сайта 127.0.0.1 сегодня он опять повысился. Смотрим картинки.
Борьба с Cpanel, Exim и localdomains
Развлечение с автоматически генерируемым файлом /etc/localdomains