Size: a a a

Scalability Camp — чат про распределенные системы (и про HPC)

2020 November 17

S

Slach in Scalability Camp — чат про распределенные системы (и про HPC)
Aleksandr Borgardt
про все остальное незнаю  но для некотрых задачь возму
понимаешь, оно должно быть минимум хотя бы процентов на 25 лучше "в среднем", чтобы иметь шансы применимости
иначе по сравнению с обычным rocksdb поддержка просто на нет всю эффективность сведет
источник

S

Slach in Scalability Camp — чат про распределенные системы (и про HPC)
никто ж это все обновлять в случае чего не будет
перевести данные в обычный rocksdb тоже будет проблема
потому что надо будет делать "перезаливку"
источник

AB

Aleksandr Borgardt in Scalability Camp — чат про распределенные системы (и про HPC)
там все не одназначно но драйвер не хорошо влияет на качество для средних случаех
источник

AB

Aleksandr Borgardt in Scalability Camp — чат про распределенные системы (и про HPC)
+ есть проблемы сподрежкой новых ядер
источник

S

Slach in Scalability Camp — чат про распределенные системы (и про HPC)
Aleksandr Borgardt
+ есть проблемы сподрежкой новых ядер
тогда ф топпку тем более
это получается просто PoC от одного из вендоров железа
там таких проектов масса просто
источник
2020 November 20

RC

Ruslan Chekalov in Scalability Camp — чат про распределенные системы (и про HPC)
источник
2020 November 21

AB

Aleksandr Borgardt in Scalability Camp — чат про распределенные системы (и про HPC)
Спасибо
источник
2020 November 22

k

kAldown in Scalability Camp — чат про распределенные системы (и про HPC)
Всем приветы.

У меня вопрос, закидайте тухлыми помидорами если вообще не туда ушел. Но с утра обеспокоен.

Годится ли protobuf как протокол для описания например игр?

Поясню, по хорошему игры должны быть поверх UDP (предположим как дано), а значит нет гарантии получения последовательности пакетов, и сообщение обратно может не собраться из бинарного вида protobuf'a
Эта мысль имеет право на жизнь или полная чушь?
источник

AB

Aleksandr Borgardt in Scalability Camp — чат про распределенные системы (и про HPC)
тут все не так очевидно
источник
2020 November 23

S

Slach in Scalability Camp — чат про распределенные системы (и про HPC)
- UDP "для игр" смотря для каких игр, у вас 3Д шутер в котором логика дублируется с клиентом? да, UDP быстрее доставляется, чаще теряется и поэтому все выдумывают всякие приколы для контроля доставки которые есть в TCP
- как формат сообщений \ сериализации данных можно использовать protobuf, точно также как любой формат сериализации а-ля msgpack или avro или capnproto
- про gRPC можно забыть (нужен ли он в играх, это большой вопрос), но можно попробовать сделать gRCP over HTTP/3 (который QUIC и поверх UDP)
как то так если кратко
источник

JS

Jerzy Syrowiecki in Scalability Camp — чат про распределенные системы (и про HPC)
kAldown
Всем приветы.

У меня вопрос, закидайте тухлыми помидорами если вообще не туда ушел. Но с утра обеспокоен.

Годится ли protobuf как протокол для описания например игр?

Поясню, по хорошему игры должны быть поверх UDP (предположим как дано), а значит нет гарантии получения последовательности пакетов, и сообщение обратно может не собраться из бинарного вида protobuf'a
Эта мысль имеет право на жизнь или полная чушь?
UDP будет целиком доставлен или не доставлен. (существует дробление на уровне IP, но будем считать частично доставленный пакет IP недоставленным полностью UDP)

то есть доставка UDP на десериализацию отдельного пакета не влияет.

а если вы хотите большое сообщение дробить на "поток UDP", то между словами "поток" и "UDP" у вас должно что-то зачесаться
источник

k

kAldown in Scalability Camp — чат про распределенные системы (и про HPC)
Я даже подумал в целом, если и теряется, то частота посыла нивелирует потери.

Скажем каждую секунду отправлять позицию юнита.
5% потерь не сильно повлияют.

Поэтому вопрос изначально был поставлен неправильно походу
источник

k

kAldown in Scalability Camp — чат про распределенные системы (и про HPC)
Спасибо за информацию
источник

k

kAldown in Scalability Camp — чат про распределенные системы (и про HPC)
А разве какойнибудь wow или dota, могут использовать подобные протоколы сериализации?
источник

k

kAldown in Scalability Camp — чат про распределенные системы (и про HPC)
Не сильно ли это долго. Прочитал про flatbuffers, тотже протобав. В fb используется например
источник

S

Slach in Scalability Camp — чат про распределенные системы (и про HPC)
kAldown
Не сильно ли это долго. Прочитал про flatbuffers, тотже протобав. В fb используется например
кстати да, flatbuffers очень даже ОК
и он эффективнее protobuf потому что нет дополнительных аллокаций в момент десеарилизации

wow и dota 100% используют что-то подобное бинарной серализации

на самом деле 5% потери позиции если у вас логика юнита на клиенте дублируются приведут к дерганию, но некритичное
источник

k

kAldown in Scalability Camp — чат про распределенные системы (и про HPC)
я чесно говоря вообще не гейм девелопер. Просто подумал, как живут "большие", за миром CRUDов :)

Вопрос назрел когда вчера впервые попробовал amongus и удивился такому большому latency. Прикинул как они вообще это делают. Почитал разыне статьи. Оказывается в CS есть механизм предвиденья поведения клиентов, а потом на сервере выбирается единсвтенное решение и остальыне отбрасываются.

В общем в мире геймдева все очень непросто. Начиная даже с вопроса сериализации
источник

S

Slach in Scalability Camp — чат про распределенные системы (и про HPC)
да, потому что HPB vs LPB ... и весь игровой experience в жопе =)

в Eve в свое время красиво сделали, но в итоге битва в eve на мой взгляд со стороны тактического экрана выглядит как то пипец стремно =) даже не представляю как там кто ориентируется в такие моменты
источник

AK

Andrey Kolnoochenko in Scalability Camp — чат про распределенные системы (и про HPC)
Slach
кстати да, flatbuffers очень даже ОК
и он эффективнее protobuf потому что нет дополнительных аллокаций в момент десеарилизации

wow и dota 100% используют что-то подобное бинарной серализации

на самом деле 5% потери позиции если у вас логика юнита на клиенте дублируются приведут к дерганию, но некритичное
Насколько помню, у dota protobuf.
источник
2020 November 24

ОН

Олег Неумывакин... in Scalability Camp — чат про распределенные системы (и про HPC)
На текущий момент самый продвинутый сетевой код (с т.з. пользовательского опыта) в Valorant. Можно поискать статью от разработчиков, но я не уверен что там было про протокол взаимодействия.
источник