TOV_MULTIMASSO
:sexism:
Hog
TOV_MULTIMASSO
А. Но всё равно :sexism:
Anonymous
Вот клинкодный дизайн АПИ выше это еще что. Я сегодня был на дизайн ревью, где было на полном серьезе озвучено предложение ДЕРЖАТЬ СТОЛЬКО ПАРТИЦИЙ В ТОПИКЕ, СКОЛЬКО УНИКАЛЬНЫХ ОБЪЕКТОВ В ОДНОМ ИЗ НАШИХ ДОМЕНОВ И ... кастомно их разбрасывать от продьюсеров. Даже алгоритм был ОЧЕНЬ БЫСТРЫЙ (это цитата) предложен: "мапа в конфиге, которую читаешь на стартапе и кешируешь для СКАЛАБИЛИТИ" (опять цитата). В домене в этом тысяч пять объектов точно будет.
Anonymous
Так что ваши инженеры еще хорошо справляются.
Hog
Anonymous
Anonymous
А вы
конфиг
кешировать смогли бы
для масштабирования под?
Hog
Anonymous
маяковский прям
А вы
ноктюр сыграть смогли бы
на флейте водосточных труб
Hog
Anonymous
А все это родом из вот этих коротеньких видео на ютубе от вендора, где продают технологию. Там кучу хуйни рассксзывают про то, как и так можнл, и этак - видимо, эта чупакабра, автор вышеозвученного дизайна, наслушалась ахуетительных историй и.. в общем миллионы лет эволюции в его конкретном случае прошли напрасно.
Vladimir
Hog
пульсар бы справился)
А все это родом из вот этих коротеньких видео на ютубе от вендора, где продают технологию. Там кучу хуйни
Hog
😂😂😂
Shub
Ilya
F# популярен в Китае?
Ilya
А, или это в общем. Ок.
Ilya
Ну тогда можно статистику смертей посмотреть. Больше всего шансы у людей 60+
Hog
Это про что?
Hog
Про посыл короновируса?
Ilya
Да.
Ильяс
Anonymous
Тем временем в соседнем чате старожили Хаскеля, которые еще gch 1.0 помнят, учат новичков правильно писать правильный код:
flip flip (^ 2) . (((.) . (+)) .) . (. (^ 2)) . (+) . (^ 2)
Anonymous
Vladimir
как я помню, у нее максимум нормальности это около десяти тыщ топиков
Vladimir
As a rule of thumb, if you care about latency, it's probably a good idea to limit the number of partitions per broker to 100 x b x r, where b is the number of brokers in a Kafka cluster and r is the replication factor. Personally I have experienced problem with 5600 topics/23000 partitions ob 6 Broker nodes cluster.
Anonymous
как я помню, у нее максимум нормальности это около десяти тыщ топиков
Наверняка не знаю, но думаю, что в современных версиях этого лимита нет, по крайней мере не тот порядок цифр. Сейчас же очень модно писать easily scales to millions of topics, оставляя за кадром вопрос с какого перепугу и для каких таких задач нужно столько потоков данных.
Vladimir
современные версии архитектурно не отличаются от несовременных
Igor
О, кстати, хотел спросить, у пульсара есть с++ клиент и динамическая библиотека, ее можно заюзать из дотнета?
Vladimir
топики все так же лежат на брокерах
Anonymous
Vladimir
Igor
Там ещё написано, что на ее основе реализованы клиенты для питона и ноды
Vladimir
Партиции
да, одна партиция должна на брокер влезть это одно, я про то что много топиков тормозят брокера
Vladimir
Igor
Я к тому, что может это дешевле будет в плане поддержки. У Кафки такая же история - есть нативный клиент и на его основе куча клиентов для разных языков
Vladimir
хз, я уже почти дописал на фшарпе полностью, несколько фичей осталось только
Vladimir
и кафковский клиент так стримы и не поддерживает)
Vladimir
нативный клиент всегда лучше, ты его всегда можешь улучшать как хочешь
Nikolay
Я если на стеке создать структуру, записать в реф, и вернуть, где она лежать будет? 🤔
Nikolay
Или в реф нельзя засунуть структуру?
Anonymous
в более-менее устойчивом домене из ~5к разных объектов.
Vladimir
ну в пульсаре партиция=отдельный топик, 100 партиций=100 топиков с одной партицей, вроде в кафке примерно так же
Vladislav
Vladislav
если ты про рефы
Vladislav
если не про рефы
Vladislav
то на стеке
Диёр
Диёр
А тут сразу ответят
Dmitry
в книге не забанят
Nikolay
Nikolay
А так вообще интереснее самому додуматься :)
Nikolay
Nikolay
Кто следующий?
habib
/ban
habib
/ban
habib
я случайно)
Nikolay
Тебе тоже /ban
habib
)))
Nuxs🏴☠️
почему банхаммер бесится?
Nikolay
Ещё вопрос появился, можно ли сделать так же, но без строчки с IsCancellationRequested?
Что-то типа |> Async.WithToken ct |> Async.Catch
let cmp =
async {
while true do
if (ct.IsCancellationRequested) then raise (TaskCanceledException())
if 1 = 2 then failwith "asd"
} |> Async.Catch
let! r = cmp
match r with
| Choice1Of2 x -> printfn "Done!"
| Choice2Of2 e -> printfn "Error %A" e
Viacheslav
Anonymous
Vladimir
Ayrat
Диёр
конечно
а там дока плохая что-ли
Диёр
или для полного погружения?