Size: a a a

2020 May 10

N

Navern in DevOps
Aragaer
у меня есть несколько машин - мой десктоп, впс, может быть нетбук в шкафу. Я хочу раскидать по ним по всем пачку разных сервисов. Сервисы умеют между собой общаться, если сказать им, как друг друга находить - то есть конфиги должны быть согласованы. Я хочу одну общую точку раскатывания и обновления всего этого добра. Сейчас пока экспериментирую с ансиблем например.
кубер не про это)

по крайней мере под то что ты озвучиваешь сейчас, без подробностей
источник

SP

Sergei Puzyrev in DevOps
Phil Kulin
Я не очень понимаю, что ты в теории с базой делать собрался. Даже если мы на языке ассемблера всё написали. Там такой некислый k/v
некислый k->v для стораджа, в котором ключ занимает фиксированное число байт, а значение - ограниченное число байт (e.g. до 16К?)
источник

A

Aragaer in DevOps
вот я тоже начинаю догадываться
источник

SP

Sergei Puzyrev in DevOps
ты серьезно?
источник

PK

Phil Kulin in DevOps
Sergei Puzyrev
шаред - не про перформанс или его отсутствие.
шаред - про покупку минимально необходимого сисадмина и минимально необходимого кого-нибудь, кто починит, если сломалось что-то не на самом сайте.
за копейки.

гиганты туда не лезут тупо потому что расходы на саппорт больше, чем доходы от клиентов. собственно, шаред и живет в тех местах, где труд стоит копейки.
1. Ну так и есть да
2. Угу. Шаред например крайне популярен в США. Хочу пслушать про их труд за копейки. И мы возвращаемся к изначальному гиганты туда не лезут, но лезут создав сервисы в своих облачных услугах. Я запутался - лезут или не лезут? :)))
источник

SP

Sergei Puzyrev in DevOps
в памяти потребуется держать 24 байта на урл
источник

PK

Phil Kulin in DevOps
Sergei Puzyrev
некислый k->v для стораджа, в котором ключ занимает фиксированное число байт, а значение - ограниченное число байт (e.g. до 16К?)
И? Да, я серьёзно. Я вон сраную выгрузку не смог в Гиг запихать. Там посложнее чутка, но всё же. Хотя всё умерло на фиксированных IPv4 в ключе
источник

PK

Phil Kulin in DevOps
Sergei Puzyrev
в памяти потребуется держать 24 байта на урл
24 байта на URL? Это если ты собрался просто перебором искать
источник

SP

Sergei Puzyrev in DevOps
Phil Kulin
24 байта на URL? Это если ты собрался просто перебором искать
Фил, не расстраивай меня.
источник

PK

Phil Kulin in DevOps
Мне всё равно, расстраиваю я кого-то или нет, но боевой clck.ru на pi zero - шапкозакидательство. Не прямо чтобы сильное, но оно
источник

SP

Sergei Puzyrev in DevOps
8 байт достаточно для значения хеша.
8 байт на смещение на диске и 8 байт на длину объекта. на самом деле можно 2 байта на длину объекта, потому что мы не разрешим настолько длинные оригинальные урлы на самом деле.

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

запись тривиальна:
1) считаем хеш
2) пишем объект на диск
3) пишем строчку в индекс (24 байта)

чтение тривиально:
1) считаем хеш
2) читаем смещение и длину объекта из индекса
3) отправляем с диска сразу в TCP-сокет
источник

SP

Sergei Puzyrev in DevOps
это даже не байтоёбство.
работы на день.
источник

PK

Phil Kulin in DevOps
0. А мы учли свою проверку на уникальность при такой длине хэша?
1. Что такое "оптимизировать хэш-табицу"? Что за таблица?
2. Я пропустил место с мультиплексированием записи. С синхронной блокирующей небуферизированной записью тебе вся конструкция очень быстро фигвам нарисует
3. Я пропустил место собственно с индексом. Вероятно это как-то связано с (1), но я не вижу цифр
4. Я бы не стал утверждать, что небуферизированная логически беспорядочные чтение/запись не будет крайне неприятным узким местом, если мы говорим о нагрузках в 1000rps
5. В работу на день не включена конструкция по поддержанию целостности и/или восстановление. Хотя, конечно в простой конструкции это сделать проще. Но таки сделать надо
источник

VS

Vladimir Smirnov in DevOps
Phil Kulin
0. А мы учли свою проверку на уникальность при такой длине хэша?
1. Что такое "оптимизировать хэш-табицу"? Что за таблица?
2. Я пропустил место с мультиплексированием записи. С синхронной блокирующей небуферизированной записью тебе вся конструкция очень быстро фигвам нарисует
3. Я пропустил место собственно с индексом. Вероятно это как-то связано с (1), но я не вижу цифр
4. Я бы не стал утверждать, что небуферизированная логически беспорядочные чтение/запись не будет крайне неприятным узким местом, если мы говорим о нагрузках в 1000rps
5. В работу на день не включена конструкция по поддержанию целостности и/или восстановление. Хотя, конечно в простой конструкции это сделать проще. Но таки сделать надо
1. Стандартный процесс компакшена для подобных баз. По сути на базе того что ты знаешь что данные в основном дописыаются, старые ты можешь почитать и переписать как нибудь поэффетивнее для чтения
источник

VS

Vladimir Smirnov in DevOps
Phil Kulin
0. А мы учли свою проверку на уникальность при такой длине хэша?
1. Что такое "оптимизировать хэш-табицу"? Что за таблица?
2. Я пропустил место с мультиплексированием записи. С синхронной блокирующей небуферизированной записью тебе вся конструкция очень быстро фигвам нарисует
3. Я пропустил место собственно с индексом. Вероятно это как-то связано с (1), но я не вижу цифр
4. Я бы не стал утверждать, что небуферизированная логически беспорядочные чтение/запись не будет крайне неприятным узким местом, если мы говорим о нагрузках в 1000rps
5. В работу на день не включена конструкция по поддержанию целостности и/или восстановление. Хотя, конечно в простой конструкции это сделать проще. Но таки сделать надо
4. Не будет, если диск достаточно быстрый
источник

VS

Vladimir Smirnov in DevOps
Phil Kulin
0. А мы учли свою проверку на уникальность при такой длине хэша?
1. Что такое "оптимизировать хэш-табицу"? Что за таблица?
2. Я пропустил место с мультиплексированием записи. С синхронной блокирующей небуферизированной записью тебе вся конструкция очень быстро фигвам нарисует
3. Я пропустил место собственно с индексом. Вероятно это как-то связано с (1), но я не вижу цифр
4. Я бы не стал утверждать, что небуферизированная логически беспорядочные чтение/запись не будет крайне неприятным узким местом, если мы говорим о нагрузках в 1000rps
5. В работу на день не включена конструкция по поддержанию целостности и/или восстановление. Хотя, конечно в простой конструкции это сделать проще. Но таки сделать надо
2. А при чем тут это?
источник

PK

Phil Kulin in DevOps
Vladimir Smirnov
2. А при чем тут это?
В смысле? Оно у тебя будет очень херово работать, если ты ничего не сделаешь с буферизацией записи
источник

VS

Vladimir Smirnov in DevOps
Phil Kulin
В смысле? Оно у тебя будет очень херово работать, если ты ничего не сделаешь с буферизацией записи
Вы изначально говорили о том чтобы оно помещалось в рам или на сд карту. Сд карта достаточно шустро работает так то.
источник

PK

Phil Kulin in DevOps
Vladimir Smirnov
Вы изначально говорили о том чтобы оно помещалось в рам или на сд карту. Сд карта достаточно шустро работает так то.
Мы изначально говорили, что это должно заработать на pi zero. ну точнее, было такое утверждение. SD-карта вообше то ешё развлечение найти, чтобы шустро работало. Такая карта будет сравнима по цене с самим pi zero
источник

PK

Phil Kulin in DevOps
Ну и то, я не знаю как она будет работать на рандомном i/o
источник