Kirill
всем спасибо, посмотрю
Kirill
Anonymous
vscode не ide
Михаил
ребят, тут в чате видел писал кто-то map[string]string мол плохо, почему?
Null
Big Int в Go: работа с большими числами https://dev-gang.ru/article/big-int-v-go-rabotat-s-bolshimi-czislami-k89m7w9ptw/ @Golang_google
Vladimir
Ребят, всем привет! Налеюсь хорошо прохрдят выходные. Подскажите, пожалуйста. Вебом не занимался никогда, тут хочу для своего петпроекта сервер сделать простенький. И вот хочется, чтобы по условному http://name.com выдавалась страничка, аля визитка, а по http://api.name.com/endpoint было апи. Так вот когда доки читаю, то везде расписано как в роутере уже эти /endpoint'ы прописывать. А как настраивается чтобы вот это "api." впереди шло - не пойму. Это надо прописывать, я так понимаю, в другом месте уже. За точные настройки не спрашиваю, можете хотябы просто сказать как это называется? Ато я не знаю даже что гуглить
Alexander
я так понимаю, что в сыром net/http тебе надо реализовывать прослойку, которая будет проверять хост, а потом уже вызывать хэндлеры в зависимости от хоста и пути. в разных роутерах или фреймворках такая функциональность есть из коробки
Alexander
просто не очень типично. зачем создавать поддомен, когда можно просто http://name.com/api/...
Alexander
разделять на поддомены тут удобно когда у тебя разные сервера как минимум. но даже если в будущем так окажется, ничего не мешает поставить nginx, который будет отдавать статику и проксировать апи запросы
Vladimir
То есть это поддомен?
Alexander
что поддомен?
bob
Поддомен
Vladimir
Спасибо, теперь все легко гуглится!
Ilya
То есть это поддомен?
Давай проще. 123.zone - это одно приложение 321.123.zone - Это другое приложение. Да, технически это поддомены и работать они могут вместе. Даже объединить ты их можешь, но как выше подсказали их нужно разделять уже хостом, а роутинг он нужен для адреса в пределах одного хоста, т.е. после /
bob
Спасибо, теперь все легко гуглится!
Для сайта-визитки и апи петпроекта проще ендпоинты, как советуют выше
Vladimir
Раз уж я присоединился к вашей очаровательной тусовке: а из тех кто здесь непосредственно по работе пишет на Го - используете ли какие то фреймворки? Какие?
Anonymous
gin для роутов
Anonymous
но это не твой случай
Anonymous
То есть это поддомен?
домен третьего уровня
Anonymous
а name.com домен второго уровня, это разные сайты, обычно api после name.com/api делают
Vladimir
фреймворки не используем
Нет никакой необходимости или не удовлетворяют потребностям?
Che
Ребят, всем привет! Налеюсь хорошо прохрдят выходные. Подскажите, пожалуйста. Вебом не занимался никогда, тут хочу для своего петпроекта сервер сделать простенький. И вот хочется, чтобы по условному http://name.com выдавалась страничка, аля визитка, а по http://api.name.com/endpoint было апи. Так вот когда доки читаю, то везде расписано как в роутере уже эти /endpoint'ы прописывать. А как настраивается чтобы вот это "api." впереди шло - не пойму. Это надо прописывать, я так понимаю, в другом месте уже. За точные настройки не спрашиваю, можете хотябы просто сказать как это называется? Ато я не знаю даже что гуглить
Для разруливания запросов между субдоменами нужен не веб-сервер, а ответственный за зону dns, его можно реализовать по разному но наверно проще nginx, ну или самому парсить значения переменной host request и соответственно роутить запрос к нужному роутеру.
Vladimir
У меня основная проблема была, что не ясно было в какую сторону копать) сейчас, когда я понял я уже разберусь
Che
Gorilla/mux, amqp, uber/h3-geo, pgx, gordor. Подход такой если это драйвер или очень специфическая функциональность, которая стандартной библиотекой очень сложно реализуется то можно использовать, при условии что внешняя зависимость нормально развивается и имеет достаточное количество контрибьютеров
Vladimir
У меня все плохо в плане администрирования и веба. Ну может не прям плохо, но опыта адекватного нет, я андроидщик, я кнопочки крашу😅
Che
Тут тоже все не админы) но теоретическая база нужна, если хочется не только кнопочки раскрашивать:)
Vladimir
Знать бы где ее взять в более менее структурированном и актуальном виде
Vladimir
Честно говоря, хочется устроиться стажером на полставки куда нибудь, чтобы на Го писать и видеть всю кухню изнутри
Che
И слово фреймворк это очень плохо в го, это не js)
Vladimir
Таненбаума читай)))
Буду благодарен за конкретику, вроде названия книг)
Anonymous
пора в закреп книги вставлять
Bagasl
Буду благодарен за конкретику, вроде названия книг)
Про сети, ос, архитектуру компьютера книги. Но сразу скажу - монструозные книжки, не очень легкие в понимании
Bagasl
Ну и я не в садик хожу😅
Начнешь читать - поймёшь)) Я тоже так думал
Vladimir
Моей первой книгой по программированию был Страуструп. Я помню, что такое боль.
Vladimir
А у кого нибудь есть здесь свободное время объяснить мне в чем отличие http2 от http и почему многие так ненавидят fasthttp?
Anonymous
ну, если про хттп2 и хттп
Anonymous
то хттп2 юзает нули и единицы => догрузка быстрее
Anonymous
да ты даже можешь загуглить хттп2 vs хттп там будет показано, как на слабом устройстве хттп2 в разы быстрее грузит картинку
Bagasl
да ты даже можешь загуглить хттп2 vs хттп там будет показано, как на слабом устройстве хттп2 в разы быстрее грузит картинку
Там не из-за бинарного формата скорость так увеличивается, а из-за мультиплексирования + переиспользования открытых соединений
Bagasl
мб ещё какие то моменты были, особо не помню
Anonymous
ну ладно
Anonymous
в хттп 1.1 уже появились методы
Anonymous
про него скорее всего
Vladimir
Просто в андроиде нет вариантов чем пользоваться. Ну да, сейчас есть котлин, но это все равно далеко от веба, где десятки языков, под каждым из которых десятки фреймворков разных... и я пытаюсь понять что использовать. Я до этого уже начинал писать, используя Gin. Потом времени не стало и забросил, а теперь снова берусь. И вот меня привлекли разные статейки про Fiber.
Anonymous
ну...
Anonymous
grpc)))
Anonymous
там как раз хттп2 юзается
Vladimir
Вот там говорят, мол он на fasthttp построен, и от этого много проблем. Плюс fasthttp вроде как не поддерживает http2
Vladimir
Ну как проблем... проблема если нужно использовать стандартный контекст вроде
Alexander
ну фастхттп действительно фаст и молодец. а хттп2 нужен не всему
Alexander
хттп2 нужен когда ты открываешь страницу сайта и начинает 100500 ресурсов скачиваться
Anonymous
а если рест с хттп2 юзать
Anonymous
что быстрее будет
Anonymous
грпс или рест
Alexander
хттп2 не дает преимуществ в таких случаях
Anonymous
можно еще рест с protobuf вместо жсон)
Anonymous
и еще хттп3
Михаил
для m["foo"] = "bar"
Sergey
для m["foo"] = "bar"
Именно для этого - лучше не придумаешь)
Alexander
а для чего еще-то можно?
Михаил
Именно для этого - лучше не придумаешь)
а, т.е. для миллионов ключей - умрет?
Alexander
бенчить, бенчить и еще раз бенчить
Михаил
просто несколько дней назад тут чел ругался на перловика за такой мап, интересно
Sergey
а, т.е. для миллионов ключей - умрет?
Нет, мы рассматривали конкретный кейс. Для миллиона - тоже подойдёт, если ресурсы позволяют.
Михаил
А какую альтернативу он предложил?
да просто упомянул, что руки оторвать, без контекста, а я испугался спросить, новичок
Sergey
Ну всегда можно найти за и против, мапа по памяти иногда не очень, но по скорости лучше других альтернатив. Вопрос, что важнее и какие альтернативы?
Alexander
а еще мапы разные бывают, одна под один сценарий подходит, другая под другой, третья под третий