Японский программист Kazuho Oku, в своё время создавший Palmscape, первый web-браузер для платформы PalmPilot, а также язык программирования JSX (http://jsx.github.io/) и движок хранения для MySQL Q4M (http://q4m.github.io/), анонсировал (http://blog.kazuhooku.com/2014/12/ann-initial-release-of-h2o... первый выпуск нового высокопроизводительного HTTP-сервера H2O (https://github.com/h2o/h2o/), в некоторых тестах до двух раз обгоняющего Nginx по скорости отдачи контента. H2O поддерживает протоколы HTTP/1.x и HTTP/2, и может использоваться как обособленный сервер, так и в форме библиотеки для встраивания функциональности HTTP-сервера в другие продукты. Код проекта написан на языке Си и поставляется (https://github.com/h2o/h2o/) под свободной лицензией MIT.
В качестве причины создания нового HTTP-сервера называется желание обеспечить максимальную производительность в условиях меняющихся при переходе от HTTP/1 к HTTP/2 реалий, в частности, значительного увеличения числа обрабатываемых файлов. Развиваемые для HTTP/1 методы оптимизации не всегда применимы к протоколу HTTP/2, для которого решены проблемы с утилизацией имеющейся пропускной способности в условиях передачи большого числа файлов. Если для HTTP/1 с целью снижения накладных расходов разработчики старались минимизировать число передаваемых файлов и по возможности комбинировать их в более крупные порции данных, например, применяя слияние CSS-файлов, то для HTTP/2 более оптимальной является раздельная поставка ресурсов в отдельных файлах, так как их доставка может быть эффективно распараллелена в рамках одного канала связи.
При тестировании в условиях обработки большого числа мелких запросов H20 заметно обогнал nginx по скорости отдачи как статических файлов так и при использовании в роли reverse-proxy. При этом в тестах фигурируют только мелкие запросы размером от нескольких байт до 10Кб, для более крупных запросов сравнение не проводилось, но судя по динамике изменения результатов имеющихся тестов, чем больше размер данных, тем меньше отличия в производительности. Например, при отдаче 6 байт разница в показателях теста "wrk -c 500 -d 30 -t 1" для h2o и nginx составляет 75483 и 37289, а для 4Кб - 59673 и 43988;<center><a href="https://camo.githubusercontent.com/f44a50c4ef62dad173b3c2db2... src="http://www.opennet.me/opennews/pics_base/0_1419574756.png" style="border-style: solid; border-color: #606060; border-width: 1px;max-width:100%;" title="" border=0></a></center>
Основные возможности:- Поддержка протоколов HTTP/1.0 и HTTP/1.1, в том числе с возможностью использования keep-alive для повторного использования уже установленного соединения и chunked-кодирования (https://ru.wikipedia.org/wiki/Chunked_transfer_encoding). Поддержка HTTP реализована с использованием высокопроизводительного парсера PicoHTTPParser (https://github.com/h2o/picohttpparser), развиваемого автором H2O и уже давно используемого в Perl-модуле HTTP::Parser::XS;
- Поддержка 14 чернового варианта спецификации HTTP/2 (http://www.opennet.me/opennews/art.shtml?num=37387) (draft-14 (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14)), в том числе с возможностью определения приоритетов на основании заданных весов и поддержкой методов согласования соединения NPN, ALPN, Upgrade и direct;
- Поддержка технологии WebSocket (http://www.ietf.org/rfc/rfc6455.txt), реализованной с привлечением библиотеки wslay (https://github.com/tatsuhiro-t/wslay/);
- Поддержка шифрования канала связи (TLS) с использованием OpenSSL. Доступны шифры AEAD, защиты сессионных ключей при помощи forward secrecy (https://ru.wikipedia.org/wiki/Perfect_forward_secrecy) и возможности возобновления сеансов (Session Resumption);
- Простой и понятный формат файла конфигурации (https://github.com/h2o/h2o/blob/master/examples/h2o/h2o.conf). Возможность управления работой сервера через специальный API или через YAML;
- Оптимизации для статической отдачи контента. Возможность условной обработки GET-запросов на основании содержимого заголовков last-modified / etag. Поддержка генерации списка, отражающего содержимое директории. Возможность настройки mime-типов;
- Режим http-акселератора (reverse-proxy) доступен только для HTTP/1 (без HTTPS) и может работать с установкой постоянного соединения с первичным (upstream) сервером;
- Средства ведения логов, совместимых по формату с логами apache httpd;
- Поддержка горячего перезапуска и обновления серверного процесса без остановки обработки имеющихся соединений (graceful restart и self-upgrade);- Для цикла обработки соединений может применяться как собственная реализация event loop, так и библиотека libuv (https://github.com/libuv/libuv);- Модульный дизайн: разделены и могут подменяться компоненты для управления памятью, работы со строками, разбора протоколов, обработки соединений, фильтрации вывода, ведения логов и т.п.<center><iframe src="//www.slideshare.net/slideshow/embed_code/41036412" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;" allowfullscreen> </iframe></center>
URL: https://plus.google.com/+KazuhoOku/posts/eKgYwTKDheB
Новость: http://www.opennet.me/opennews/art.shtml?num=41345
утопит всех конкурентов
if (name != NULL) {
size_t i, j, name_len = strlen(name);
for (i = 0; i != listener->ssl.size; ++i) {
struct listener_ssl_config_t *ssl_config = listener->ssl.entries + i;
for (j = 0; j != ssl_config->hostnames.size; ++j) {
if (h2o_lcstris(name, name_len, ssl_config->hostnames.entries[j].base, ssl_config->hostnames.entries[j].len)) {
ctx_index = i;
goto Found;
}
}
}Ба!!! Да тут еще с OpenMP пройтись можно, likeliy/unlikely натыкать,...
в общем рай для оптимизаторов.Ипонец всех наибато. alloca наше всё!!!
struct listener_ctx_t *listeners = alloca(sizeof(*listeners) * conf->num_listeners);
...
h2o_socket_read_start(listeners[i].sock, on_accept);Так конечно делать нехорошо, но в рамках одно треда сойдёт... =)
А если libdispatch или libclc прицепить?)
> А если libdispatch или libclc прицепить?)вебсервак, это служба запрос-ответ, OpenCL там нафиг не нужен,
может где-то там ниже... бэкэнды, поиск, сортировка.
ну а диспач, это точно API менять придётся.
> вебсервак, это служба запрос-ответНу это ты просто не видел новомодные вебапликухи с вебсокетами и все такое :)
> А если libdispatch или libclc прицепить?)И что они считать будут?
Ждем комментариев от Игоря Сысоева.
На опеннете, прямо в этой ветке. :-)
Ну х.з. я уж точно тестировать не побегу, но я бы не назвал формат конфига "простым и понятным".
>"alternate.127.0.0.1.xip.io:8081":Хотя может это просто имя и порт...
Это название :-)
А что вы хотели, японец писал. Вспомните конфиг sendmail...
А давно это Эрик Олман стал японцем?
Может быть все геи такой код пишут немного своеобразный.
http://xip.io
Как же я тебя ждал!
Джва года?
Там, кароче, набигают запросики и их можно эсэсэлить. Ещё в лесу есть враги - надо уметь защищать сервис от злого (имя я не придумал). Можно грабить куки.
А SSL?
А читать?
>Поддержка шифрования канала связи (TLS) с использованием OpenSSL.
> А читать?
>>Поддержка шифрования канала связи (TLS) с использованием OpenSSL.Хм. И правда, написано. Надо же...
Бедный Сысоев... Только всё налаживаться стало и тут вот такое
Пускай. Конкуренция не повредит и позволит развиваться.
заставит развиваться
> Бедный Сысоев... Только всё налаживаться стало и тут вот такоеКакое? Прибавится японец на борту, продолжат вместе :) (а если и нет -- так на то и щука, чтоб карась не дремал, как уже отметили)
Сысоев никогда не скрывал, что энжинкс ориентирован на нужды cdn-щиков и продается, в основном, им. Этот же веб-сервер не претендует на данную нишу.
> Этот же веб-сервер не претендует на данную нишу.Где это написано? :)
> Бедный Сысоев... Только всё налаживаться стало и тут вот такоеКазалось бы, причем тут Сысоев...
Вроде с одной стороны хочется, чтобы nginx был успешным проектом (ибо отечественный), но с другой стороны этот H2O выглядит очень вкусно и хочется чтобы он тоже развился… Обязательно опробую в 2015-ом.
Без SSL не юзабелен, вот вам и конкуренция значит обим продуктам на пользу.Желаю nginx и H2O" удачного развития недостающего функционала/ производительности/безопасности-стабильности :)
NGINX уже не отечественный. Прос$#ли полимеры.
http://trademarks.justia.com/owners/nginx-software-inc-2255340/
панимашь в чём хня... у нас слово Nginx Software Inc. по определению нельзя зарегать!
Нджинкс Софтваре Инк - можно
Да и офис головной что-то в штатах слегонца. Видимо не хотят чтобы получилось как с втентаклем.
> Да и офис головной что-то в штатах слегонца. Видимо не хотят чтобы
> получилось как с втентаклем.Если вы пропустили предыдущие 10 серий, то нжикс уже продан амерекосам,
Получила грантов на 40 лямов, вместе с новым ген. директором.
Сысоев там для баласта нужен, чтоб клиентов не распугать.
Думаю у него 5 летний контракт, посему в 16 году ждем твиты и новости, о том что он:
1. Устал и хочет заняться семьёй. ©
2. Потерял интерес, открывает новый стартап ©
3. Oracle поглощает Nginx.
....
99. Постригся в монахи и переехал в Тибет.
Кому конкретно продан?Не понял что случилось с контактом.
> Не понял что случилось с контактом.Всего ничего - пинками прогнали основателя. Отжав у него ресурс административно-акционерными мерами.
Да подумаешь трагедЪ. У нас в той самой америге то же самое кажный день, только с юристами вместо братков. Если ты лох - тебя тут даже быстрее сожрут, тут даже компании есть которые только этим и занимаются. Был свидетелем как сЪилы одну гордую канадскую фирму ... красиво, без маски шоу и даже наоборот - это были люди в дорогоих костюмах и ролесах, очень вежливые :) Но бизнес - отжали :)
> Да подумаешь трагедЪ. У нас в той самой америге то же самое
> кажный день, только с юристами вместо братков.Есть только одна загвоздка: юристы играют по правилам и они известны. А отжимание по понятиям происходит по желанию левой пятки. Что как-то сильно меньше вдохновляет стартапы по моим наблюдениям. И пока это будет вот так - вы и дальше будете щелкать клювами на то как "отечественные" компании переносят головные офисы в юрисдикции где такое не практикуется.
> - отжали :)
Не вижу что-то чтобы Цукерберга или там Брина ушли. А вот Дyров прямым текстом заявил что вести тут бизнес связанный с интернетом - невозможно.
> Есть только одна загвоздка: юристы играют по правилам и они известны.Самсунгу расскажите.
> Самсунгу расскажите.А что самсунг? Они за себя вполне в состоянии постоять и на юридическом поприще и на технологическом и в итоге с голоду явно не пухнут. Да и пикироваться по юридической линии научились на совесть. Мол запретили продажи пары моделей? А у нас тут еще семь штук похожих, с другим буквенным индексом. А пока там юристы раскачаются и на них - они еще новых моделей понаделают. Так вот и получается что юристы как бы пикируются, а продажи как бы идут и в целом самсунг очень неплохо себя на рынке ощущает. Попутно отливая эпплу половину чипов, ненавязчиво демонстрируя им кто тут в технологиях спец, а кто лишь горстка дизайнеров с большим ЧСВ и капитализацией вида "очередной пузырь".
А еще я могу рассказать что Цукерберг с его мордокнигой попал в топ самых жирных котов планеты. Ну ок, успешный стартапер - "американская мечта" в эталоннейшем виде.
А теперь покажите мне местных стартаперов которые бы чего-то добились и чтоб у них бизнес при этом не отжали, чтобы их социальный статус при сравнимых условиях был бы сравнимым. Нет, вы знаете, та горстка "эффективных манагеров" гонящих сырые ресурсы за кордон - таковыми не являются вообще совсем ни разу. Наличие ресурсов в недрах - это вообще не их заслуга, для начала. Туда же идут и стайки подхалимов с заслугами "хорошо прислуживал - допустили к кормушке". Я подобных считал и буду считать всего лишь кучкой нерукопожатных сущностей, в отличие от успешных стартаперов.
>> Самсунгу расскажите.
> А что самсунг? Они за себя вполне в состоянии постоять и на юридическом поприщеВот и расскажите про "самый честный суд в мире".
> А еще я могу рассказать что Цукерберг с его мордокнигой попал в
> топ самых жирных котов планеты. Ну ок, успешный стартапер -
> "американская мечта" в эталоннейшем виде.С эталоннейшей фамилией, ага.
> Я подобных считал и буду считать всего лишь кучкой нерукопожатных сущностей,
> в отличие от успешных стартаперов.Ну а я бы цукербергу руку не подал. Не за орг/тех, а за предательство пользователей, которые таким вот "успешным" доверились.
> Вот и расскажите про "самый честный суд в мире".Я больше говорил про предсказуемость, для бизнеса это важнее высоких идеалов. К тому же с неудобным решением можно попикироваться силами юристов. А пока они пикируются в судах - выпустить пять новых моделей, на которые запретов на продажу нет. А пока эппл раскачается подать в суд, пока что-то отспорит, пока запреты... эти модели уже как раз наступит пора снимать с производства. Так что в целом у самса ломовые продажи и несправедливость несправедливостью, а деньги они по всем фронтам гребут лопатой и эппла конкуренцией один фиг замяли.
Как таковая исполнительная система имеет смысл для защиты слабых от сильных. А два мастодонта которые там пинаются - в общем то занимаются фигней и зря транжирят системные ресурсы с результатом который для обоих близок к нулю. На самом деле это некий баг системы, что ее в таком бестолковом режиме вообще можно использовать. Но мастодонтам проще нанять стайку юристов, система вроде справляется. Ну вот как-то так и осталось. Хотя практический смысл всего этого близок к нулю и создает анекдоты про страну юристов.
> С эталоннейшей фамилией, ага.
А что - фамилия? И на что она влияет.
> Ну а я бы цукербергу руку не подал. Не за орг/тех,
> а за предательство пользователей, которые таким вот "успешным" доверились.Он вроде предельно честно высказался про то за кого он считает пользователей, у которых хватает ума "доверять" социальным сетям. Просто в лоб заявив про dumb fucks (привет, пользователи социалочек!). При том это разошлсь по СМИ и прочее, так что сказать что он подленько молчал в тряпочку - как бы не совсем честно, чтоли. Ну а если клиент хочет прострелить свои пятки - ну чтож, желание клиента - закон для бизнеса. Значит надо притащить пистолет и патроны, честно предупредив что результат может и не понравиться.
> Самсунгу расскажите.Михаил, самсы - тема вообще отдельная, они снова для айфонов процы делают. Так что там суды - это скорее попытка продавить юрбаталиями выгодные решения.
> Так что там суды - это скорее попытка продавить юрбаталиями выгодные решения.Так и "война -- продолжение политики иными средствами".
Вообще-то я просто офигел от умственной гибкости User294 (если это был именно он), который не так давно разливался насчёт скруглённых уголков, а сейчас поёт тем же судам той же страны оду, будучи ткнутым носом в то, что это всего лишь ещё один механизм рэкета.
Братцы, ну можно быть наивным, можно тормозить, можно вообще не знать -- но так стыковать то, о чём худо-бедно знаешь, эт как? (...или всё же в почерках путаюсь?..)
> поёт тем же судам той же страны оду, будучи ткнутым носом
> в то, что это всего лишь ещё один механизм рэкета.А я нигде и не оспаривал вроде, что суды используются корпорациями для попыток сведения счетов, смахивающих на рэкет. И как-то не считаю что это правильно или рационально. Но в целом эта система работает достаточно предсказуемо для бизнеса, достаточно для того чтобы бизнес не заваливался. А на неудобное решение как видим можно найти кучу воркэраундов. Для чего все крупные конторы и содержат штат юристов. Рэкет рэкетом, но юристы и суды работают по вполне соблюдаемым регламентам и открыто нарушать регламенты никто не будет.
> но так стыковать то, о чём худо-бедно знаешь, эт как? (...или
> всё же в почерках путаюсь?..)Это вот так: мои личные симпатии/антипатии к использованным методикам - это одно. А прикидка получившихся фактических параметров системы и возможность при таких условиях вести бизнес - другое. А зачем пытаться выдать желаемое за действительное? Если попробовать посмотреть на ситуацию нейтрально, это как-то так: да, есть много неидеальностей, справедливость торжествует не всегда, все дела. Но в целом климат для ведения бизнеса и взлета стартапов у них получился относительно нормальный. Судя по появлению успешных стартапов, собственно.
С чего вы взяли что использование судов для пикировки между корпорациями мне сильно нравится - я не понял. Я нахожу это глупым расходом ресурсов с сомнительными целями, при результате который в случае эппл vs самсунг можно округлять до ноля (в плане последствий для участников процесса).
p.s. и если уж сравнивать, для американцев как-то не характерно бухать на уровне государства кипу деньжищ в поддержку автоВАЗов или там пропихивать на государственном уровне массой ГЛОНАСС. Вообще, по-моему очень логично дать банкроту обанкротиться, после чего будет как минимум смена руководства, которому поделом, раз облажалось. А то и закрытие компании (а зачем тратить бюджет на бездарей и неумех?).
> Кому конкретно продан?гугля в помощь, влом мне разжёвывать
> Если вы пропустили предыдущие 10 серий, то нжикс уже продан амерекосам,Ну а лох Дуров выгодно продаться не успел - его ушли из его же конторы всякие там Алишеровы, которых видимо попросили.
> Сысоев там для баласта нужен, чтоб клиентов не распугать.
И чтоб код писать?!
> 3. Oracle поглощает Nginx.
Фантастика на другом этаже.
> 99. Постригся в монахи и переехал в Тибет.
Да теперь так любой лох может - там железная дорога. Пошел да приехал, не надо по горам на 5000 метров самому лезть.
сделай ставку, когда Сысоев вернется на постоянную работу в Россию. В 2020? в 2035? еще при Путине?
> сделай ставку, когда Сысоев вернется на постоянную работу в Россию. В 2020?
> в 2035? еще при Путине?Сходил я на http://sysoev.ru/ и почитал -- шой-то мне кажется, шо вышеотписавшийся поц нагло вбрасывает.
PS: подумав получше, прошу прощения за необоснованный наезд.
http://nginx.com/blog/whats-difference-nginx-foss-nginx-plus/Both products are built by our core engineering team in Moscow
Никто и не спорит о том, где и когда они построены. Я про сейчас.Будет, круто, если он останется с нами до самого финиша. Смутило, что все вакансии (http://nginx.com/company/jobs/), хотя там всего одна от разработки, "Technical Product Manager", в Солнечном Магадане - California, San Francisco.
Да и слово Москва упоминается один раз, на указанной вами странице :(
> Будет, круто, если он останется с нами до самого финиша.Прошу прощения за наезд.
Это не совсем так. Если речь идет о товарных знаках, то проблем нет.
А вот с наименованием организаций, как вы уже писали...PS:
http://www1.fips.ru/fips_servl/fips_servlet?DB=RUTM&DocNumbe...
> Вроде с одной стороны хочется, чтобы nginx был успешным проектом (ибо отечественный),
> но с другой стороны этот H2O выглядит очень вкусно и хочется
> чтобы он тоже развился… Обязательно опробую в 2015-ом.Да вроде не совсем правда. Это, знаете, как уважаемый всеми JetBrains. Вроде как отечественный, ан чешский :) Все очень тонко и расплывчато порою :)
> как отечественный, ан чешский :)Ну так они тоже наверное не хотят чтобы у них бизнес отжали "по понятиям", по медвежьи.
> Ну так они тоже наверное не хотят чтобы у них бизнес отжали
> "по понятиям", по медвежьи.Как-как, по-кипрски?
> Как-как, по-кипрски?Кипр по моим наблюдениям использовался не столько как база для технологических компаний, сколько как площадка для всяких финансовых операций на грани фола.
И че? Или типа не правоверных - можно?
> И че? Или типа не правоверных - можно?Типа, если уклонисты от налогов и махинаторы с серыми схемами исчерпают терпение регуляторов и нарвутся, намозолив глаза - это называется "ну что, ж...а, довертелась?".
А если имеют технологическую компанию которая делала что-то полезное - совсем иной вопрос. И что-то технологических компаний в кипре не то чтобы много, в отличие от всяких сомнительных махинаторов. Ну а репутацию среди бизнеса кипр думается что так что сяк подмочил, потому что подобные фокусы ни одну юрисдикцию не украшают с точки зрения желающих вложить финансы или вести бизнес. Последнее что они хотят - чтобы их нагрели.
> чтобы nginx был успешным проектом (ибо отечественный)Он уже давно "коммерческий" и потому со всех сторон трындит: а вот купи слона! А вот это и это - только со слоном в комплекте. А фигу вам а не исходники - наш слон проприетарный.
Как по мне - им бы совсем не помешало немного конкуренции.
Прям чистая слеза ребё^W пидо^W халявшика! Во!
Можно подумать это первый сервер который в каких то условиях nginx-а обогнал... Таких есть и не один ... и чо?! :)
Чисто гипотетические синтетические тесты доказывают иногда полную ересь. : )
Если бы он умел столько же, сколько умеет nginx и при этом реально был бы быстрее - то да, это было бы круто. А пока что рано говорить о преимуществах.
> Если бы он умел столько же, сколько умеет nginxА если б нжинкс умел столько сколько умеет апач... :)
> Если бы он умел столько же, сколько умеет nginx и при этомНижнкс изначально был баяном и, понимая жадность и хотение бабла, он закономерно вырос в комбайн-клон апача.
> Нижнкс изначально был баяном и,О-ее! Ыгсперды сразу капу нажали :)
>понимая жадность и хотение бабла, он закономерноЭто хрень движет мир. Прими или сделай вдоль :-\
> вырос в комбайн-клон апача.Простой вопрос - ты апач то видел? :)
все еще сливает по скорости Cowboay и подобным в разы, но уже быстрее и уже хотя-бы ngnix уделывает, что хорошо.
также здорово что в релизе - полявилась и http-поддержка. все будет на чем писать пользователям просьбы обновить браузер на совместимый с вебсокетами ;)
> все еще сливает по скорости Cowboay и подобным в разыА можно Вашу ссылку? А то гугл выдаёт бенчмарки, результаты которых не столь однозначны.
>Режим http-акселератора (reverse-proxy) доступен только для HTTP/1 (без HTTPS) и >может работать с установкой постоянного соединения с первичным (upstream) >сервером;это просто осиновый колл для "нжикса" :-)
> это просто осиновый колл для "нжикса" :-)Да брось ты. Никто и не заметит. Лет через 5 приходи :)
хоть один из комментаторов посмотрел код этого сервера и целевую нишу, прежде чем писать про конкурента nginx.
> хоть один из комментаторов посмотрел код этого сервера и целевую нишу, прежде
> чем писать про конкурента nginx.Простой и понятный код. Что еще нужно?
> Простой и понятный код. Что еще нужно?Отдай им не 6 байт как у аффтара в бенчмарке (очень жизненный case ага :) ), а хотябы 1М. Уссышься фапая на цыферки :)
> а хотябы 1М.И много у вас сайтов постоянно отгружает юзерям по мегабайту? Такие конечно бывают, но зачастую отдается именно куча мелочи.
> хоть один из комментаторов посмотрел код этого сервераА что, у них страшнее чем в нжинксе? :)
У H2O ниша встраиваемого веб-сервера. Про какую конкуренцию талдычат аналитики не пойму.
> У H2O ниша встраиваемого веб-сервера. Про какую конкуренцию талдычат аналитики не пойму.Нормальный такой ответ на вопрос про страшноту кода :).
> высокопроизводительного парсера PicoHTTPParser (https://github.com/h2o/picohttpparser), развиваемого автором H2O и уже давно используемого в Perl-модулене совсем уловил - в этой воде подсыпана перловка, или этот перловый модуль написан на сях, а перлового в нём только обёртка вокруг сишного кода?
>> высокопроизводительного парсера PicoHTTPParser (https://github.com/h2o/picohttpparser), развиваемого автором H2O и уже давно используемого в Perl-модуле
> не совсем уловил - в этой воде подсыпана перловка, или этот перловый
> модуль написан на сях, а перлового в нём только обёртка вокруг
> сишного кода?Это вообще сишный код. А Perl-модуль просто его использует, как, собственно, и H2O тоже использует.
Ну так посмотри в свою же ссылку и увидишь.
Интересно, хоть один, из написавших комментарий, ознакомился с самим парсером, вокруг которого этот H2O и построен?https://github.com/h2o/picohttpparser/
Даже в код смотреть не нужно, а уже в описании сказано, что он примитивен, не хранит состояний (т.е. если заголовок не поместился в буфер - fail) и небезопасен. Собственно от того и обгоняет nginx.
>Интересно, хоть один, из написавших комментарий, ознакомился с самим парсером, вокруг которого этот H2O и построен?
>https://github.com/h2o/picohttpparser/
>Даже в код смотреть не нужно, а уже в описании сказано, что он примитивен, не хранит состояний (т.е. если заголовок не поместился в буфер - fail) и небезопасен. Собственно от того и обгоняет nginx.а нужно хранить состояния чтобы отдать статику?
А теперь прочтите еще раз то, что там сказано. А именно - что буфера и выделение памяти - забота клиента. Соответственно, фейл или нет - зависит только от того, корректно ли клиент с буфером работает. И где нашли о небезопасности?
> в форме библиотеки для встраивания ... написан на языке Си ... под свободной лицензией MIT.О-о-очень интересно.
>а также язык программирования JSXэто JSX из фейсбучного React.js, или что-то другое?
Пилил, пилил чел свой nginx больше десятка лет, теперь все разом на свалку выкинут.
Так и должно быть.
Апачу тоже много кто пилил, но ведь не слили же? Нгынкс - проверенный в боях продукт, его нескоро заменят ДАЖЕ ЕСЛИ этот ашдвао превосходит его на порядок - тут и лень, и инертность, и классическое "а зачем?", и функциональность - никто не побежит заменять шило на мыло, это должен быть целый штопор!
Нгинкс многие ставили из-за скорости и полной бесплатности и открытости, никаких дурацких лицензий с ограничением количества серверов итд
H2O, надо думать, писали ориентуруясь на нгинкс, он должен был быть быстрее и функциональнее. И он стал таким.
Следующий будет ещё быстрее воды и функциональнее, но переход уже не станет столь глобальным.
Хоть какая-то конкуренция теперь, уже хорошо.
Если автору нгинкса удалось продать свой проект, это ещё не значит, что это удастся осталным, я имею ввиду за хорошую сумму.
Пусть теперь пишут сервер приложений C2H5OH.
+1 :)
> Пусть теперь пишут сервер приложений C2H5OH.Вообще-то, тех, кто разбавляет C2H5OH порцией H2O, бьют по морде.
>> Пусть теперь пишут сервер приложений C2H5OH.
> Вообще-то, тех, кто разбавляет C2H5OH порцией H2O, бьют по морде.Так он же не предлагал их смешивать :]
PS: если по физике -- так ожог обеспечивает неразбавленный спирт, в т.ч. и тот, который при разведении пошёл шариками благодаря поверхностному натяжению, но не образовал истинный раствор. Впрочем, если по химии -- зачем переводить два хороших растворителя?
PPS: первая запятая излишня.
> PPS: первая запятая излишня.Да. Не нахожу объяснения тому, как она там оказалась:)
> PS: если по физике -- так ожог обеспечивает неразбавленный спирт,Я и не намекал на питьевой вариант. Хотя... можно пить и без ожогов (если без фанатизма):)
> PS: если по физикеВообще-то это по биохимии скорее :P.
>> PS: если по физике
> Вообще-то это по биохимии скорее :P.Поверхностное натяжение -- это физика. Да и смешивание/растворение без превращения веществ вообще-то тоже.
> Поверхностное натяжение -- это физика. Да и смешивание/растворение без превращения
> веществ вообще-то тоже.Ожоги - чистейшая биохимия. Да и смешивание и растворение ближе к химикам. Углубленное изучение растворов, насколько я помню, "физическая химия" называется. То что они местами пересекаются - это ок: науки не должны в сферическом вакууме висеть.
> Ожоги - чистейшая биохимия.Отнюдь, там существенная часть проблемы -- от обезвоживания (как и при фосфорных ожогах без горения).
> Да и смешивание и растворение ближе к химикам.
Написал же сразу -- "без превращения".
> Углубленное изучение растворов, насколько я помню, "физическая химия" называется.
Упомянутое растворение -- это не физхимия и не химическая физика, а просто физика. Физхимия занимается энергетическими аспектами химических процессов, например. Как магистр органической химии говорю. :)
PS: берегите здоровье в эти дни, коллеги! Всяко ещё пригодится.
>Пусть теперь пишут сервер приложений C2H5OH.И интеграцию с POHMELFS обязательно!
>>Пусть теперь пишут сервер приложений C2H5OH.
> И интеграцию с POHMELFS обязательно!Похмелфс (кау posix слой над эллиптиксом), считай, сдох.
>Похмелфс (кау posix слой над эллиптиксом), считай, сдох.Как ФС назовёте...
Блеск, однако... Глянул внутрь - по сравнению с nginx внутри код очень простой и читаемый.
PPA для Ubuntu есть?
G-wan смотрит на H2O, как на воду.
http://gwan.com/benchmark
Вот кто в сферических тестах мастер 80 левела.
А ради 20% ускорения никто не будет переводить все с nginx на что-то ещё.
И потом, часто в сети летают ответы в 6 байт?