Size: a a a

2020 February 22

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
лишние это > 0?
верно
источник

AR

Aleksandr Razumov in Go-go!
у нас язык с GC, аллокации это нормально
источник

AR

Aleksandr Razumov in Go-go!
если хочется постоянно писать zero allocation, можно другой язык попробовать
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
у нас язык с GC, аллокации это нормально
я так не считаю 🙂
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
если хочется постоянно писать zero allocation, можно другой язык попробовать
неоправдано дорого
источник

AR

Aleksandr Razumov in Go-go!
Roman Sharkov
неоправдано дорого
оправдано, потому что иначе происходит постоянная борьба с языком и теряется часть его плюсов
источник

AR

Aleksandr Razumov in Go-go!
переключение между юзерспейсом и ядром не очень будет все равно
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
оправдано, потому что иначе происходит постоянная борьба с языком и теряется часть его плюсов
с чего ты взял борьбу? у нас есть всё что надо, benchmem, pprof, sync.Pool, escape analysis, etc. просто нужно знать как 🙂

у меня лично нет проблем писать allocation free code, просто HTTP я сам имплементировать разумеется не буду если за меня это уже сделали мейнтейнеры fasthttp

да и в том-же C++ аллокации будут не дешёвые, и там рано или поздно прибежишь к кастомному pool аллокатору
источник

AR

Aleksandr Razumov in Go-go!
неоправданно дорого выбирать проект с одним активным мейнтейнером вместо стандартной библиотеки, используемой множеством корпораций в максимально критичных вещах
источник

AR

Aleksandr Razumov in Go-go!
> с чего ты взял борьбу? у нас есть всё что надо, benchmem, pprof, sync.Pool, escape analysis

да я сам писал zero-allocation UDP сервер и это всё знаю
источник

AR

Aleksandr Razumov in Go-go!
просто я хз, ради чего, если net/http достаточно быстрый
источник

AR

Aleksandr Razumov in Go-go!
вот у меня буквально во втором окне открыты результаты бенчей, на которых действительно сильной разницы между net/http и fasthttp даже по 99p нет
источник

AR

Aleksandr Razumov in Go-go!
если не нагружать сервер до 99% CPU usage, то оно так и будет
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
неоправданно дорого выбирать проект с одним активным мейнтейнером вместо стандартной библиотеки, используемой множеством корпораций в максимально критичных вещах
ну, раз ты так считаешь.. 🙂

я беру net/http только тогда, когда знаю что fasthttp не вариант (например нужен HTTP/2 или со-контробуторы хотят именно net/http и вступать в спор экономически нецелесообразно)

проблема реально возникла только с in-memory транспортом сейчас с fasthttp, без понятия пока к сожалению в чём проблема
источник

AR

Aleksandr Razumov in Go-go!
Roman Sharkov
ну, раз ты так считаешь.. 🙂

я беру net/http только тогда, когда знаю что fasthttp не вариант (например нужен HTTP/2 или со-контробуторы хотят именно net/http и вступать в спор экономически нецелесообразно)

проблема реально возникла только с in-memory транспортом сейчас с fasthttp, без понятия пока к сожалению в чём проблема
> я беру net/http только тогда, когда знаю что fasthttp не вариант
это должно быть очень обосновано
источник

AR

Aleksandr Razumov in Go-go!
т.е. у тебя реально есть бенчмарки, в которых fasthttp сильно быстрее net/http без пайплайнинга?
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
т.е. у тебя реально есть бенчмарки, в которых fasthttp сильно быстрее net/http без пайплайнинга?
я смотрю на ситуацию немного иначе: зачем мне брать более медленный net/http если его фичи мне не нужны и я имею свободу выбора?
источник

AR

Aleksandr Razumov in Go-go!
Roman Sharkov
я смотрю на ситуацию немного иначе: зачем мне брать более медленный net/http если его фичи мне не нужны и я имею свободу выбора?
затем, что он лучше поддерживается и лучше оттестирован
источник

RS

Roman Sharkov in Go-go!
Aleksandr Razumov
затем, что он лучше поддерживается и лучше оттестирован
а были какие-то серьёзные кейсы fasthttp о которых я не знаю?
источник

AR

Aleksandr Razumov in Go-go!
Roman Sharkov
а были какие-то серьёзные кейсы fasthttp о которых я не знаю?
серьезные баги в fashttp?
источник