Архивы по Категориям: ПО - Page 2

Чудны дела

Удивительно, но совсем рядом с теми людьми, кто проводит конференции разработчиков высоконагруженных систем находятся довольно забавные люди. Кто-то сравнивает непонятно что, непонятно с чем, а кто-то, видимо, начитавшись подобного пишет платёжные системы на ASP.NET, сталкивается с проблемами нагрузки и, вместо того чтобы заниматься оптимизацией БД, репликацией, установкой load balancer’а, делает такой финт: ставит несколько серверов, обслуживающих веб-запросы, которые за собой лезут к единой базе. Клиентам предлагает самостоятельно искать, какой-же из серверов сейчас доступен. Но даже, если ты счастливо находишь этот доступный сервер, это не значит, что ты совершишь свою операцию: база то одна на всех, и задержка ответов у неё дикая, и, например, список доступных провайдеров выдать быстро уже не может. Ну хорошо, отвечают они, вот вы действительно не можете получить этот список, так попробуйте увеличить время ожидания ответа. Но, максимальный таймаут прописан уже на их стороне, в обслуживающем веб-сервере и увеличить его никак! Задаюсь теперь вопросом: сколько же должно быть записей, чтобы для их получения и форматирования в SOAP-ответ требовалось более 3 минут? Вопрос почему же нельзя сделать простейший master (read/write) — slave (read) и брать статусы, списки и т.п. со второго сервера, а так-же почему бы не сделать простейший скрипт распределения нагрузки самим уже отпал :)

Дополнение: В процессе работы выяснился момент, что у ребят в WSDL были указаны неверные адреса сервиса, из-за этого и происходили проблемы с получением списка. Но перебор серверов всё-равно требуется.

Ассиметричный ответ

Компания «Доктор Веб» сделала генератор ключей к вирусу Trojan.Winlock.19 :)

Совместимость на уровне Microsoft

Имеем: Vista x64 и Outlook 2007. Оба наших друга имеют честные лицензионные ключи из MSDN. Последний причём нужен для единственной цели — синхронизации с КПК (поэтому ставиться отдельно от Офиса). Но, сделав нормальную установку без всяких подвохов получаем сообщение «Microsoft Outlook не был установлен для текущего пользователя». Явно дело нечисто. Начинаю поднимать форумы — в русскоязычной части никакого определённого решения нет (да и не поднимали особо вопрос, хотя видно, что у него уже давняя история). Ставим все обновления к Outlook на всякий случай. Переставляю, меняю права на файлах — одна ерунда. Решение находится странице на второй странице забугорного форума. Нужно скачать программу SetACL — Windows permission management, и с её помощью сбросить права администратора у компонент командой, выполненной от администратора:


setacl -ot reg -on "HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components" -actn setprot -op "dacl:np;sacl:nc" -rec yes

Итог: несовместимость между широко распространёнными продуктами Microsoft побеждается с помощью open source утилиты.

Болезнь велосипеда в криптосредствах

Насколько мне известно, у нас в стране официально признан только криптопровайдер КриптоПро, и это всерьёз касается серьёзных банков и т.п. организаций. Недостаток его в том, что он сделан в виде COM-объекта, но решение как к нему подключиться, если потребуется, можно найти. А для всех остальных случаев, есть надёжный и удобный GPG/PGP с интерфейсами под кучи языков программирования, отлаженными библиотеками, и поддержкой всех платформ. Но вот как понять очередных «гениев», создающих свои библиотеки шифрования с какими-то бредовыми наворотами? Уже в третий раз за короткий срок сталкиваюсь с необходимостью прикрутить поделку неизвестных творцов и на этот раз это вообще шедевр — используются RSA ключи и нормальная PGP подпись, только в начало добавлены хэши и идентификатор ключа, да чуть изменены строковые разделители. Почему нельзя было обойтись обычной armor-записью и вытаскивать данные прямо из подписи? И ведь не поленились, написали версии под разные платформы и к тому же под C, C++, Delphi и Java.

Болезнь придумывания своего, походу, поражает только российские умы. Работали с британскими аутсорсерами одних наших партнеров — сразу предложили GPG. А наши всё пытаются или какую-то .NET DLL пропихнуть, или ещё какое-нибудь чудо, которому из настроек можно только адрес сервера дать и гадай какие у неё таймауты на соединение и логика запроса. А могли бы упростить работу по поддержке и себе. Но, пока им удобнее сотворить некое Windows DLL, а вы там уж сами разбирайтесь.

Бесплатная виртуализация

Сегодня ещё один бесплатный (с недавних пор) продукт заслужил свое место на моем рабочем столе. Новая версия Sun VirtualBox наконец оказалась той самой системой виртуализации, которая мне действительно по душе. Шустрая, умеет прокидывать USB устройства (из-за чего были отвергнуты многие альтернативы, так как виртуальная среда мне нужна ещё и для нормальной работы с моим сканером, но это другая история), и компактная — всего 27Мб инсталлятор и 59Мб в установленном виде. Сравните с объемом VMWare — 485Мб. Но самое вкусное — интеграция дисплеев, когда все окна виртуальной машины висят на одном рабочем столе с базовой! А для аскетов доступна и версия под GPL! В-общем можно считать, что этот пост — реклама :)

Введение в z3c (англ.)

Совершенно случайно нашел симпатичный и полезный учебник по основам z3c, внятно разъясняющий идею этой коллекции пакетов, и как легко и быстро приступить к их использованию.

Обновление dbmail

После выхода PostgreSQL 8.3 с отключенным type casting целых чисел в строки, с ним возникли проблемы у целой кучи софта, что даже удивительно. Вроде бы серьезные люди, пишут серьезные системы, а делают такие детские допущения. Но, не ошибается тот, кто не работает, а вот вовремя исправить ошибку — это хорошее дело. Поэтому можно порадоваться dbmail 2.2.10rc2, в котором поправлены SQL запросы и теперь он снова полностью функционален в связке с новым PostgreSQL. Кстати, хороший почтовый сервер, рекомендую.

rrdtool и временные зоны

Пришлось мне по работе столкнуться с такой интересной программой как rrdtool, весьма симпатичным средством для мониторинга. Задача стояла такая, чтобы… ну скажем она была аналогична тому, чтобы с помощью паяльника приготовить яичницу. Ничего невыполнимого, но выбор инструмента жестко задан сверху, и сменить его даже на утюг невозможно. Зато появился опыт возни с такой системой. Причём под Windows. И в процессе набивания шишек удалось узнать одну вещь — чтобы это чудо правильно понимало в какой вы временной зоне, достаточно завернуть его вызов внутрь батника или любого другого скрипта, в котором предварительно будет задана переменная окружения:


SET TZ=UTC

Где вместо UTC может быть выбранная вами зона, записанная в виде aaannbbb, где aaa — название вашей зоны (MSK, -03 и т.п.), nn — временное смещение вашей зоны от Гринвича (в случае Москвы это будет «-3»), а bbb вы можете опустить, а можете добавить — там должно быть название вашей временной зоны в случае летнего времени. Для Москвы строка должна выглядеть так:


SET TZ=MSK-3MSD

Trac 0.11b2

Наконец вышел Trac 0.11b2, который работает с PostgreSQL 8.3 не страдая из-за проблем с более строгой типизацией. Ну и всяких приятных рюшечек тоже хватает. Рекомендую обновиться.