Чудны дела

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

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

Совместимость на уровне 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 утилиты.