Home
dump -0f - /dev/mind
Баечки о мобильной связи (GSM, CDMA) и IT индустрии
Hardware XML Accelerator - куда катится этот мир? 
15th-Dec-2006 11:06 am
Сначала я думал, что коллеги надо мной шутят, утверждая, что XML hype дошел до того, что уже производятся сервера, занимающиеся исключительно "аппаратной" обработкой XML/XSLT.

Но нет - lo and behold - IBM WebSphere DataPower XML Accelerator XA35.

Как утверждается, решение "provides a drop-in, self-learning network device that dynamically adopts XML and XSLT, reducing the need for code changes or changes to the network, servers, or applications to help streamline application deployment. The XA35 supports XML routing, XML pipeline processing, XML compression, XML/XSL caching, as well as other intelligent processing capabilities to help manage XML traffic."

Да-да. Сначала делаем раздутый, распухший формат Для Всего На Свете, суем его куда ни попадя, а потом начинаем думать, где взять bandwidth и CPU для его обработки в приложениях, которым приходится гонять туда-сюда большие объемы данных.

Чем-то это мне напоминает ситуацию с WebServices/SOAP. Вроде и работает, и в плюсы записываем потенциальную human readability всего на свете - от спецификаций интерфейса до сообщений протокола. Плюс - у нас все plain-text и может работать поверх обычного HTTP. Правда, занимает "многа байт" и тормозит на серьезных реальных задачах.

Не беда - делаем Fast WebServices. Это те же WebServices, только со сжатием (чуть ли не при помощи gzip) того, что идет over-the-wire. Правда, не всегда работает over HTTP. Не беда - тут подпилим, там подставим, и будет счастье...

С нетерпением жду появления hardware accelerator-а для VisualBasic for Applications. Вот он появится, и это будет the next big thing. Всякие недоделки типа Java/C#/... - на помойку.

UPDATE: поясню, что меня больше всего удивляет. Больше всего меня удивляет подход к архитектуре. Зачем выносить отдельно именно этот кусок функциональности (к которому и от которого наверняка будут неслабые потоки данных)? В случае enterprise service bus - да, может быть и есть смысл. Но решение-то позиционируется гораздо шире. Если овчинка реально стоит выделки, то почему не делают отдельно стоящие network-enabled аппаратные JIT-компиляторы, например? Или отдельно стоящие network-enabled SQL processor-ы (ключевое слово тут - отдельно стоящие)?

Нет, если звезды зажигают - то это кому-то да и нужно. Правда, иногда это нужно для того, чтобы поймать волну популярности и продать дурное решение, "набитое" популярными акронимами. Мне почему-то кажется, что это как раз тот случай.

UPDATE2: надо было мне меньше читать marketing hype, и больше разглядывать картинки :) Из этой фиговины наружу лезет ни разу не XML, а wml, html, fop, ... Пойду посыплю голову пеплом. Хоть бери и пост удаляй :)
Comments 
15th-Dec-2006 09:10 am (UTC)
Раньше появится PHP accelerator ;-)
15th-Dec-2006 09:37 am (UTC)
Хотя нет. Сначала появится какой нибудь чудовищный метаязык, который одновременно будет и перлом и руби и питоном и пхп и всеми остальными скриптовыми языками. И вот уже для него сделают акселератор. ;)))
15th-Dec-2006 11:08 am (UTC)
Этот язык уже есть, называется MSIL :) В него компиляться и C#, и Delphi, и VB и т.п. и т.п. :) Вот как сделают процессор с хардварным MSIL... Даже вроде как наметки и проекты уже есть подобные.
15th-Dec-2006 09:13 am (UTC)
Есть всё же принципиальная разница между сжатием понятного и непонятного изначально. Вводим ещё одну операцию в стеке, и всех делов.

А bandwidth постоянно растёт, так что надо предполагать всегда повышение к концу разработки.
15th-Dec-2006 09:31 am (UTC)
http://en.wikipedia.org/wiki/XML_appliance

В 2005-ом интел купил sarvegу, которая и занимается производством таких штук. так вот теперь тут будут сидеть ребята и её хакать. XML router это называется. никто не знает, что это такое и зачем это нужно, но готовы взяться за работу.
15th-Dec-2006 12:04 pm (UTC)
Ага. А Дима тебе указывает на уже продающийся IBMовский продукт того же типа. :-)
15th-Dec-2006 09:36 am (UTC)
Я так понял, что это просто вынесенный в отдельную железку xslt processor плюс кеш ?
Дык полезная штука же. Зачем загружать универсальный CPU тупыми задачами, пусть бизнес-логику обрабатывает. Пользуется же народ платами-акселераторами для регекспов (я бы тоже пользовался, только дорогие они), платами для ускорения mod_deflate, ускорителями-концентраторами для ssl и железными криптотуннеляторами...
Правильный подход, между прочим - собирание системы из кубиков.
15th-Dec-2006 09:40 am (UTC)
+1. Праведный гнев мне совершенно непонятен.
15th-Dec-2006 09:46 am (UTC)
Старый анекдот вспомнился:

- Что тут думать, трясти надо
- За умеренную цену мы готовы вам предложить наш патентованный пальмотряс...
15th-Dec-2006 09:58 am (UTC)
платами-акселераторами для регекспов
Это который Bivio 2000 ?
15th-Dec-2006 10:08 am (UTC)
Это все уже было 30 лет назад. Только гораздо лучше. Лисп-машины называлось. А сейчас придумали колесо XML вместо s-exp и всяку каку, чтобы его обрабатывать. И пошло оно по спирали...
15th-Dec-2006 10:20 am (UTC)
Так это нифига не лисп-машина. Это сервер, который берет набор s-exp, делает lambda lifting, etha-reduction, что-то еще в этом роде, и возвращает получившиеся s-exp обратно :)
15th-Dec-2006 10:23 am (UTC)
Вся прелесть s-выражений - их хоть читать глазами можно :)
15th-Dec-2006 10:18 am (UTC)
Вернёмся к ассемблеру? Тогда и всякие компиляторы не потребуются навороченные, оптимизирующие результат. XML отличный формат своей стандартизованностью, и если он принят как стандарт обмена информацией, то это лучше, чем каша из байто-бито-мегабайтов.

По поводу VBA. А чем лучше Java (на которой я программирую уже 5 лет) VBA, если assembler всё равно быстрее? От hardware JVM Вы бы отказались?

Какие-то безосновательные, мне кажется, рассуждения. При всём увжении - из серии "Windows - написали дураки, потому что дураки".
15th-Dec-2006 10:27 am (UTC)
От hardware JVM на отдельном сервере (как вот этот акселератор) - отказался бы. Как вы себе это видите? Мы туда суем jar-ы/class-ы, а оттуда ... что?

Соединения по RMI к неускоренной JVM на general-purpose сервере, в которой крутится "все остальное"? Поток XML, который мы заливаем в XML-акселератор? А что будет с Swing-ом?

Извините, но у меня как-то аналогия не вырисовывается. (Вот, кстати, сам себя и подставил - я VBA приплел для красного словца, и совершенно зря).
15th-Dec-2006 10:28 am (UTC)
Да, а про "ассемблер все равно быстрее" - это такая urban legend, не проверяемая на современных real-life задачах, да? :)
15th-Dec-2006 10:30 am (UTC)
А зачем вообще нужен стандартный формат для абсолютно разнородных вещей? К тому же настолько нечитабельный.
15th-Dec-2006 12:36 pm (UTC)
Это все фигня. А вот когда цыска пытается упихать все это ексемельное безобразие в network path, вот тогда начинается веселье: http://cisco.com/go/aon
16th-Dec-2006 06:19 pm (UTC)
Название хорошее (AON). Читаю и не могу отделаться от мысли, что там внутри - Zilog Z80, или даже несколько :)
15th-Dec-2006 01:00 pm (UTC)
не надо пост удалять.

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

Тут ширина функциональности (или, напротив, узкоспециализированность) будет лишь предпосылкой для конкуренции отдельных компаний.
15th-Dec-2006 05:11 pm (UTC)
А между тем, было бы полезно иметь девайс, куда по одному порту льешь XML+XSLT, а по другому принимаешь результат трансформации и принимаешь быстро. Именно что hardware xslt accel. Сейчас пока делается путем установки отдельного сервера трансформаций.

16th-Dec-2006 06:15 pm (UTC)
Да уж, это вам не token ring :)

Тут все серьезно, с научным обоснованием. Формулы меня пленили. Пойду, куплю ящик.
19th-Dec-2006 10:07 pm (UTC)
90 страниц комментариев. Ужас ...