Pull to refresh

Comments 8

Я ожидал увидеть бенчмарки с wrk или типа того, если честно. А то написать-то высокоуровневую имплементацию вопрос-ответ — задача не особо сложная, сложно добиться производительности. Вот пример на эликсире, для сравнения.

Я не особо погружён в Go. Можете подсказать, зачем тут нужна ссылка?

server := &http.Server

Я не понял зачем автор использовал тут указатель, это и правда похоже на сгенеренный нейронкой пост.
Но на практике (по крайней мере в моей компании) обычно структура http сервера встраивается в другую структуру. И там используется указатель, чтобы при вероятном копировании конечной структуры не происходило копирование http сервера.

Из-за того что у сервера есть методы с pointer-receiver (например, ListenAndServe, Shutdown).

Так же делается указатель чтоб не делать копии множества полей которые содержит структура.

Еще возможны смены значений публичных полей, например Handler. Без указателя могут попасть копии, которые не изменятся, что чревато багами.

Сам против указателей и радею в команде за то чтоб использовали только там где они действительно нужны.

По-моему, конкретно в этом примере можно было обойтись.

У вас в статьях всегда используются списки. Вы выдачу нейросети как-то подправляете, или постите прямо то, что она выдаёт? Не проще ли постить просто промпт, по которому можно получить ответ, чем занимать место на серверах?

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

Почитай про изменения пакета net/http в Go 1.22.
Теперь можно задавать отдельные обработчики для каждого метода вот таким образом mux.HandleFunc("POST /form", postFormHandler).
На самом деле там ещё много интересных нововведений, которые позволяют полностью отказаться от сторонних роутеров на подобии chi.

Sign up to leave a comment.

Articles