Производительность web-подсистемы Mono
Бродя по ссылкам в сети, наткнулся на замечательный урок по созданию плагинов под nginx. И сразу задумался, потому как сейчас между делом занимаюсь возрождением, а, точнее, обвешиванием функционалом старого проекта Actions DS – web-конструктора для разработки приложений, свободного от наследия ASP.NET и основнанного на XML/XSL. Вполне очевидно, что выставлять ни xsp2, ни Apache + mod_mono желания особого нету – первый не является специализированным вэб-сервером, второй – достаточно тяжел. Поэтому решение на основе nginx + xsp2 интуитивно кажется не самым плохим результатом, причем, как оказывается, написание отдельного модуля вовсе и не потребуется (т.н.м. урок стоит посмотреть, он интересный). Смутило только одно – чуть ранее рецепта скрещивания мне попался результат тестирования годичной давности, где xsp2 в чистом виде умывал лицо nginx + xsp2, а над всеми ними главенствовала связка nginx + mod_wsgi.
Подробнее »»
Голосовой маршрутизатор D-Link DVX-7090
На работе руки дошли до ожидающей своей участи железки DVX-7090, предназначенной для маршрутизации VoIP. Честно говоря, сам предмет я знаю весьма поверхностно (а про телефонию, можно сказать, совсем ничего не знаю), но поковыряться внутри стоечной железки шанса не упущу.
Пространства имен в XML c привлечением .NET
Маленький рецепт на заметку: если вы желаете использовать некий XML-документ в Mono/.NET, убедитесь, что он не содержит определений дополнительных пространств имен (namespaces). Потому как попытка адресоваться по XPath-выражению в стиле //seprfeed/myns:title будет заранее обречена на неудачу.
Причина сего в том, что XML-парсеру неизвестно о пространствах имен, а, следовательно, ему надо информацию сообщить. Делается это весьма просто – создается объект класса XmlNamespaceManager, которому и указываются заветные namespaces. А затем при поиске этот объект идет параметром к вызову методов XPathNavigator.
Рецепт благополучно был найден в блоге Wayne Allen .



