Anonymous
а джунам не тяжело читать err != nil в каждой строке ?
Антон
V
обычно через строчку же, что вы все врете?
Andrey
через две, там ещё }
Alexander
Alexander
но как правило чем выше уровень разраба, тем более простой и понятный код он старается писать. особенно если сам его поддерживать собирается.
Great
я думал мы про маня-мирок, где кто-то кому-то что-то должен :D
Nick
Господа, есть какой-то список must-know вопросов на гошного мидла?
V
меня про технологии-фреймворки спрашивали и общие вопросы по бек-разработке, независимые от языка
Антон
Great
Anonymous
Anonymous
Коллеги, кто-нить NATS юзал?...
Алексей
Добрый день, Что этот код делает?
Daniel
никто с картинки код читать не будет
Daniel
давайте ссылку на плейграунд
Denis
я прочитал. этот код страдает какой-то херней.
Алексей
+
Tigran
Так ли важно, что этот код делает, по сравнению с вечным вопросом, зачем он это делает.
Tigran
Если в деталях объяснять, что он делает, долго будет
Алексей
Алексей Прокопчук:
Добрый день ,мне просто надо создать две гоурутины и передать обеим сразу значение map через sync.mutex
Je
через sync.mutex это мощно) у нас обычно через каналы передают
Илья
без ГМО и асбеста)
Pawel
Anonymous
Но тщетно ((
Yuriy
Yuriy
на 30% без zipa
Yuriy
с зипом 20
🏁Александр
а можно мне код на плей который на скрине выше?
🏁Александр
мне просто свербит угадал ли я вывод или нет :)
🏁Александр
по прикидка подождет секунду, напишет "a work two goroutines" и после разлока мьютекса два раза принтом пустой мап распечатает
🏁Александр
потом сдохнет (истек таймер в майн процессе)
🏁Александр
да я прав - https://play.golang.org/p/PsXRLN8KmVA :)
Pawel
Yuriy
ну да, большие пакеты больше 1 кб могут биться на несколько
становится больше пинг
и еще много нюансов
Yuriy
конечно чем меньше пакет тем лучше
Yuriy
иначе я не заморачивался с дельта компрессией
это та тема от которогой игровой опыт зависит
Daniel
Yuriy
However, an intermediate network along this connection supports only 1-KB packets. Every 3-KB packet sent by the client to the server will be fragmented by the intermediate network into three 1-KB packets and the server node will have to put the pieces back together before delivering the data to the application. Because this is an expensive process that can impact throughput and network performance, IP fragmentation should be avoided whenever possible.
Aleksandr
кто что юзал для лемматизации в го?
Aleksandr
русский язык
Pawel
или там каждый раз всё пересробирается при любом запросе на сервер?
Yuriy
ты про протобаф сейчас?
Yuriy
да я скинул с сайта айбиэм про устройство тисипи протокола
мы тут не при чем
Yuriy
большие пакеты будут разбиваться на мелкие
второй пакет теряется
теперь мы ждем его заново
Yuriy
так пинг превращается из 40 мс в 120
Yuriy
что значит при пинге? пинг постоянный, во всех играх есть тик сервера, допустим 30-120 раз в секунду, по этим тикам он что-то считает и отправляет на клиент
в моем случае у меня полупошаговая, я не на каждый тик отправляю на клиент сообщение. только если есть что отправлять
Pawel
спасибо за пояснения, я думал речь о том, что сам гошный пакет флэтбуффа толще и это типа на что-то влияет. когнитивный диссонанс начался
Yuriy
флэт буфер очень хорошо будет жить там где очень часто нужно отправлять очень мало информации, один string, несколько интов
Anonymous
клёвый ник
Anonymous
Где репорт на него можно кинуть?
Nazar
вроде как сразу банить можно за рекламу лол
Aleksey
Чудо пришло в группу к нам!
Pawel
Daniel
чем вам msgpack не msgpack?
Yuriy
Yuriy
и не делать мэппинг
Daniel
и что намеряли? какая получилась экономия?
Anonymous
товарищи подскажите. Правильно ли на go делать веб-сервер скажем под 100к запросов в секунду? Если да, то какие будут советы? Наверное, не просто http.ListenAndServe или как?
Yuriy
и что намеряли? какая получилась экономия?
у msgpacka немного больше размер сообщения процентов на 10
но сериализует быстрее
мне schemaless совсем не нравится подход
когда я меняю протокол передачи я хочу чтобы клиент и сервер одновременно показали мне где у меня ошибки
Aleksey
Ещё одна распределённая DB теперь над MySQL http://radondb.io/
Pawel
и что намеряли? какая получилась экономия?
у меня значительная была экономия на десериализации при переходе от protobuff к flat buffers - от 2.5 с на пакет до 2 c (пачка - несколько мегабайт). В браузере, куда пачка приходит - оно ещё больше
Pawel
нагрузка на проц тоже заметно меньше стала
Daniel
про браузер нам не интересно на самом деле.
Pawel
мне ещё как интересно, на мне фронт висит
Daniel
браузеров много, и их совокупная мощь куда как больше любого кластера
Radaram
При работе с каналами получил такую ошибку:
fatal error: all goroutines are asleep - deadlock!
всего две горутины которые обмениваются между собой сообщениями
как можно избежать такую ошибку?
Yuriy