URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 133356
[ Назад ]

Исходное сообщение
"Первый выпуск фреймворка для создания сетевых сервисов Pingora"

Отправлено opennews , 08-Апр-24 20:46 
Компания Cloudflare опубликовала первый выпуск фреймворка Pingora, предназначенного для разработки  защищённых высокопроизводительных сетевых сервисов на языке Rust. Построенный при помощи Pingoraа прокси около года используется в сети доставки контента Cloudflare вместо nginx и обрабатывает более 40 млн запросов в секунду. Код написан на языке Rust и опубликован под лицензией Apache 2.0...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=60953


Содержание

Сообщения в этом обсуждении
"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 20:46 
Почему не го?

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 20:48 
gc? нафик...
Спасибо, что не ждава или пухтон.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 20:52 
Памяти го все таки поболя жрет, особенно если попадаешь на плохой для ГЦ паттерн использование памяти. Но как язык в сто раз проще и приятней, да и комьюнити не клуб ненависти

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 20:55 
есть какие-нибудь вменяемые статьи\сравнения? не просто уровень первого результата google rust vs go

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 20:58 
Есть только опыт c++ VS go. На мой взгляд можно аппроксимировать и rust VS go.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 21:00 
если в теории - часто и много выделять память в го больно. ГЦ не успевает очищать память, т.к. освобожденное нельзя переиспользовать сразу. В плюсах подобное приводит в дефрагментации, но оно лечится кастомными аллокаторами, меморипулами и т.д.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 21:37 
В плюсах нет гц, ты о чем? Память там удаляется тогда, когда ты сказал ее удалить

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 21:50 
я про частые и множественные выделения памяти в го и плюсах. ессно в плюсах штатного гц нет (хотя можно сделать :) )

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 23:47 
В С++ нет встроенного GC но никто не запрещает подключить свой если нужно, к примеру SGCL.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Анониссимус , 10-Апр-24 05:21 
Он действительно прост, но никак не приятен. Я чуть не обблевался, когда пытался на нём что-то писать. Раст в этом смысле гораздо, гораздо лучше. Хотя и намного сложнее, да.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Карлос Сношайтилис , 08-Апр-24 21:19 
Поэтому что го непредсказуем из-за гц

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Минона , 08-Апр-24 22:34 
Почему не эрланг?

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аннон , 08-Апр-24 23:33 
Эрланг медленный. Больше серверов - больше расходов. Для CloudFlare разница значительная

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Минона , 09-Апр-24 07:19 
> Эрланг медленный. Больше серверов - больше расходов. Для CloudFlare разница значительная

Для перекладывания байтиков норм.


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено пох. , 08-Апр-24 23:36 
> Почему не эрланг?

неэффективный функциональный недоязык, кому он нужен-то!

Наше будущее - за OCaml! (как только оба разбирающихся в нем специалиста вернутся из творческого отпуска для успокоения нервов, куда отправились после неудачной попытки исправить две строчки в sks keyserver)



"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 00:08 
>Наше будущее - за OCaml!

Держи краба, пох. Если ты, конечно, не прикалываешься. Я тоже стал склоняться к такой мысли. Вот его и надо было Мурзилле использовать для Servo.


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Ф1 , 09-Апр-24 08:08 
>Держи краба

Угу окамлисты так и не дождались многопоточки и породили краба.


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 12:12 
В Сишку тоже многопоточку не завезли. Однако, это не мешает писать на C многопоточные программы. Если что, многопоточность в libpthread.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Ф1 , 09-Апр-24 13:06 
> В Сишку тоже многопоточку не завезли.

В OCaml в отличии от си есть gc что тянуло за собой рантайм, плюс нетривиальная модель памяти https://v2.ocaml.org/manual/memorymodel.html , и так просто библиотекой вопрос не решался, и там был свой аналог GIL как в питоне, то есть потоки есть, но рантайм не давал исполнять одновременно больше одного потока.
В OCaml 5.0 настоящую многопоточность наконец добавили (http://ocamlverse.net/content/parallelism.html), но замороченость там повыше чем в posix threads или std::thread.


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Ф1 , 09-Апр-24 08:07 
>Наше будущее - за OCaml!

Сделали бы многопоточность не два года назад, а лет 10 - 15 назад, да мог бы занять гораздо более широкую нишу.


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Минона , 09-Апр-24 08:09 
>> Почему не эрланг?
> неэффективный функциональный недоязык, кому он нужен-то!

Расскажи это Максу Лапшину.

> Наше будущее - за OCaml!

Будущее за Racket 😎

> (как только оба разбирающихся в нем специалиста
> вернутся из творческого отпуска для успокоения нервов, куда отправились после неудачной
> попытки исправить две строчки в sks keyserver)

Что за драма?


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено пох. , 12-Апр-24 20:29 
> Что за драма?

https://www.opennet.me/opennews/art.shtml?num=51006
И ты ни за что не догадаешься КАК они исправили этот баг!

P.S. очень интересно... гугль с нескольких попыток не смог ничего на эту тему найти. Говорите, нет там цензуры?


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Я , 09-Апр-24 06:51 
так получилось. но вообще как я понял го не очень подходил для решения ботлнека с которым они столкнулись при использовании нгинкса. по хорошему они бы писали это на си, но сейчас если у тебя есть что-то что хорошо пишется на си это надо писать на расте.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено пох. , 08-Апр-24 20:57 
А где ж обещаный сервер на базе этого чудо-фреймворка?
Товарищ уходил думать концпетьюальный дизигн - так и не вернулся?


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Карлос Сношайтилис , 08-Апр-24 21:18 
Это фреймворк из которого сервер и делается. Соединяешь трейтики-кирпичики – получаешь нужный сервис.
Смекаешь?

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено нах. , 08-Апр-24 22:22 
> Это фреймворк из которого сервер и делается.

и как, много ты серверов из него уже понаделал?

Пока что это бесполезный фреймворк, на котором вообще никакого сервера не существует. (сказания что внутри мордокниги вот этот самый код собран вместе с волшебным сервером, который вот только...нельзя никому показать - можешь свернуть трубочкой и засунуть себе в то место которым думаешь)

Зато есть восторженные отзывы о невидимых узбеках. Ну ок...


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Минона , 08-Апр-24 22:34 
Не мордокниги а Cloudflare.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 22:44 
Так это ж Нах))
Ему что мордокнига, что клаудфаря.
Сейчас еще немного набухается и будет про рабов и кнутователей рассказывать.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено пох. , 08-Апр-24 22:44 
> Не мордокниги а Cloudflare.

один хрен. Обе уже славны выкладыванием того что не собирается, не работает, и нахрен никому в таком виде не нужно.

"Но зато в сто раз луччше nginx!"


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Я , 09-Апр-24 06:53 
лучше не лучше, но один конкретный ботлнек для одной конкретной ситуации закрывает. а нужно это кому-то ещё или нет смотрите сами бесплатно и код открыт под удобной лицензией.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено нах. , 09-Апр-24 14:02 
> лучше не лучше, но один конкретный ботлнек для одной конкретной ситуации закрывает

вполне возможно, что да (а вполне возможно что были и попроще способы - просто клаудшмаре нужен хайп). Вот _это_ проверить - не получится.

> а нужно это кому-то ещё или нет смотрите сами бесплатно и код открыт под удобной лицензией.

так нет же кота.

https://github.com/memorysafety/river

На CoC и readme.md далеко не уедешь.


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Карлос Сношайтилис , 08-Апр-24 22:43 
Правильно! Кто такие Cloudflare, чтобы им верить?

То ли дело эксперт нах. с опеннета, что видит всех насквозь! Не скрыть от него правду, не обмануть сладкими речами!


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено пох. , 08-Апр-24 22:46 
> Правильно! Кто такие Cloudflare, чтобы им верить?

распространители скама, fud, а в прошлом просто крышеватели ддосеров. А может и не только в прошлом.

Действительно, чего это им не верить! Не по делам же их судить (когда пообещали что выделили целого чувака показать всем как нада писать сервер, но... он почему-то где-то прое...лся)

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


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Карлос Сношайтилис , 08-Апр-24 23:09 
> распространители скама, fud, а в прошлом просто крышеватели ддосеров.

Ты оцениваешь технические компетенции по шкале морально-этических принципов? А ты хорош!

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

"Фантазер, ты меня называла.
Фантазер, только этого мало!"


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено пох. , 08-Апр-24 23:27 
Я оцениваю скам, fud - по шкале скама и fud'а

А работающий сервер - оценю, когда и если он будет. Но уже с поправкой на предшествовавшие ему scam/fud.

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


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 00:28 
> Я оцениваю скам, fud - по шкале скама и fud'а

А как ты оцениваешь качества своего паспорта?
Не могут же хорошие люди быть с плохим паспортом?

> А работающий сервер - оценю, когда и если он будет. Но уже с поправкой на предшествовавшие ему scam/fud.

Ну, у них он работает "прокси около года используется в сети доставки контента Cloudflare вместо nginx".
Тебе правда его не дадут, а вдруг сломаешь!



"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Карлос Сношайтилис , 09-Апр-24 00:39 
пох., дружище, ну что же ты так...

Всю веру в адекватных троллей рушишь. После такого и жизнь не мила (

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

Или, после просмотра кода на раст, у тебя отнимаются ноги и ты не рискуешь подобное практиковать?


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 00:10 
Заявлять

> Пока что это бесполезный фреймворк

после строки:

> Построенный при помощи Pingora прокси около года используется в сети доставки контента Cloudflare вместо nginx и обрабатывает более 40 млн запросов в секунду

Да ты просто гений логики!

> распространители скама, fud, а в прошлом просто крышеватели ддосеров. А может и не только в прошлом.

Значит отменные сетевые специалисты. Значит хороший фреймворк. "Надо брать" (ц)

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


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Анонин , 08-Апр-24 21:03 
Крутой проект.

Во-первых, проверенный в проде и именно на нормальных нагрузках, а не на подкроватном серваке каким-то васяном.
Во-вторых, правильная лицензия. Правда тут с nginx паритет.
В-третих, тут соседи посчитали, что на 30k всего 61 unsafe, из которых минимум 22 - FFI с сишными либами, вроде OpenSSL, а остальные лень смотреть.

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


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 21:17 
>> язык, который помогает программистам писать с меньшим количеством ошибок.

больше думать эти "погромисты" не пробовали?


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Анонин , 08-Апр-24 21:50 
Думанье, как и внимание, ресурс лимитированный.
Его нужно тратить с максимальной пользой.
И просчитывание владения в уме для тысяч переменных - явно не входит в эту категорию.

Вот сишники 30+ лет пытаются думать, но что-то не выходит каменный цветок.
То use-after-free (https://www.opennet.me/opennews/art.shtml?num=60891), то за пределы буфера (https://www.opennet.me/opennews/art.shtml?num=60927).
И живут же по десятку лет!


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено 12yoexpert , 09-Апр-24 10:58 
> Думанье, как и внимание, ресурс лимитированный

проблемы гуманитариев - проблемы гуманитариев, зачем проблемы умственно отсталых на техническом ресурсе? идите в репу раста


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Я , 09-Апр-24 06:56 
щас бы тратить самое ценное что есть у разработчика тоесть время на бесполезные понты..

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Ф1 , 09-Апр-24 08:15 
>больше думать эти "погромисты" не пробовали?

Ну самые коварные сишные ошибки же не исчезнут от прокачки навыка "думать", тут надо прокачивать навык "внимательность", но практика показала что таких сверлюдей просто не существует.


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 21:34 
> вместо nginx и обрабатывает более 40 млн запросов в секунду. Код написан на языке Rust

Это, кстати, все благодаря линуксу и его сетевой подсистеме, написанной на C


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 22:06 
>> вместо nginx и обрабатывает более 40 млн запросов в секунду. Код написан на языке Rust
> Это, кстати, все благодаря линуксу и его сетевой подсистеме, написанной на C

На том самом которому можно сказать спасибо за такие отвратительные уязвимости

"Удалённо эксплуатируемая уязвимость в драйвере NVMe-oF/TCP из состава ядра Linux"
https://www.opennet.me/opennews/art.shtml?num=59940
приводит к обращению к уже освобождённой области памяти (use-after-free) и двойному освобождению памяти (double-free)

"Уязвимость в драйвере NTFS-3G, потенциально позволяющая выполнить код с правами root"
https://www.opennet.me/opennews/art.shtml?num=58016
переполнению буфера ... при монтировании пользователем образа или накопителя, подготовленного атакующим, или при подключении к компьютеру USB Flash

"Уязвимость в Linux-драйвере exFAT, позволяющая поднять привилегии в системе"
https://www.opennet.me/opennews/art.shtml?num=59664
.... и тд

Дырявые адепты СИшки даже строку сплитнуть без уязвимости не могут
https://opennet.ru/opennews/art.shtml?num=60490


"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 08-Апр-24 22:33 
Use *BSD

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Минона , 08-Апр-24 22:41 
Так они тоже написаны на си.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 08:30 
можно подумать в ядре на расте меньше проблем будет, порог входа то ниже

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Минона , 08-Апр-24 22:40 
Скорее вопреки.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Карлос Сношайтилис , 08-Апр-24 22:49 
Благодаря С приходится использовать unsafe, ибо ядро со своей сишкой нифига не гарантирует

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Юрий , 09-Апр-24 10:10 
Толсто накинул. Утритесь ребята! В GNU/Linux все так быстро благодаря электричеству, а не Си-шке.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 11:47 
Там скорость сильно зависит от того, в каких чипах это электричество бегает.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 00:01 
При всей её безопасТности, у Pingora хоть лицензия получше, чем у Nginx.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено Аноним , 09-Апр-24 04:25 
Было бы клёво собрать на нём Kubernetes Ingress. Ощущение, что может быть прям очень клёвым решением.

"Первый выпуск фреймворка для создания сетевых сервисов Pingo..."
Отправлено 12yoexpert , 09-Апр-24 10:55 
чем бы дитя ни тешилось, лишь бы своими кривыми руками в нормальные проекты не лезло