Size: a a a

Ruby, Rails, Hanami | dry-rb

2019 December 04

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
а, не, 3-7-7, сорян
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
это не узкое место в большинстве кейсов кастомерсаппорта
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
чью проблему мы тут решаем?)
источник

AD

Anton Davydov in Ruby, Rails, Hanami | dry-rb
Artem
Ну как вариант да, но это должно быть удобно пользователям, не каждый юзер хеш по телефону продиктует.
Для этого есть hashid
источник

AD

Anton Davydov in Ruby, Rails, Hanami | dry-rb
Что бы убрать похожие буквы (О и 0) и сложные буквы и сочетания
источник

AD

Anton Davydov in Ruby, Rails, Hanami | dry-rb
Ну и там же сделать проверку на ругательства, что бы не слать «убивай черных»
источник

A

Artem in Ruby, Rails, Hanami | dry-rb
Anton Davydov
Для этого есть hashid
Это типо создание ютубовского id?
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Artem
А разве uuid не постгрес генерирует?
у нас нет, мы генерим айдишник будущей сущности как часть команды, котораю создание этой сущности иницииализирует. команды мы персистим
в итоге даже если сущность не создалась, мы получаем "попытались создать сущность с id = X" в команде + лог попытки создания в graylog
если создалась - получаем команду, сущность и лог в graylog
источник

AD

Anton Davydov in Ruby, Rails, Hanami | dry-rb
Artem
Это типо создание ютубовского id?
Не совсем, это просто чистая функция по генерации набора символов по числу
источник
2019 December 05

AD

Anton Davydov in Ruby, Rails, Hanami | dry-rb
Или по числам
источник

A

Artem in Ruby, Rails, Hanami | dry-rb
focusshifter 🤔
у нас нет, мы генерим айдишник будущей сущности как часть команды, котораю создание этой сущности иницииализирует. команды мы персистим
в итоге даже если сущность не создалась, мы получаем "попытались создать сущность с id = X" в команде + лог попытки создания в graylog
если создалась - получаем команду, сущность и лог в graylog
Есть еще преимущества создания uuid на клиенте? В целом меня такой подход заинтересовал.
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
focusshifter 🤔
у нас нет, мы генерим айдишник будущей сущности как часть команды, котораю создание этой сущности иницииализирует. команды мы персистим
в итоге даже если сущность не создалась, мы получаем "попытались создать сущность с id = X" в команде + лог попытки создания в graylog
если создалась - получаем команду, сущность и лог в graylog
@Eugene_Shved ^ обещал кейс. у нас гарды "можем ли мы прям ща технически (не бизнесово) подключить чуваку продукт", например - часть проверок внутри команды. если не можем - не подключаем, но точно знаем, что пытались (команда записана), и что произошло (логи поднимаются по айдишнику)
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Artem
Есть еще преимущества создания uuid на клиенте? В целом меня такой подход заинтересовал.
ну в нашем случае не в клиенте, физически всё это происходит внутри одного приложения
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Artem
Есть еще преимущества создания uuid на клиенте? В целом меня такой подход заинтересовал.
можешь сделать предположения о том, где eventually-сгенерированная сущность будет находиться, если генерация СИЛЬНО не синхронная, и через некоторое время попробовать постучать по известному тебе урлу в API
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
в теории можно батчить команды при желании, не дожидаясь результатов запросов (потому что ты знаешь идентификатор сущности), но я вживую не встречал такого пока
источник

ES

Eugene Shved in Ruby, Rails, Hanami | dry-rb
focusshifter 🤔
в теории можно батчить команды при желании, не дожидаясь результатов запросов (потому что ты знаешь идентификатор сущности), но я вживую не встречал такого пока
Круто, спасибо!
источник

AD

Anton Davydov in Ruby, Rails, Hanami | dry-rb
focusshifter 🤔
в теории можно батчить команды при желании, не дожидаясь результатов запросов (потому что ты знаешь идентификатор сущности), но я вживую не встречал такого пока
Там сложно, потому что тебе уникальность ююид проверить стоит
источник

AD

Anton Davydov in Ruby, Rails, Hanami | dry-rb
Потому что всякое случается и может разойтись
источник

AD

Anton Davydov in Ruby, Rails, Hanami | dry-rb
Особенно если ты из базы генерируешь, кода и ещё одного сервиса
источник

f🤔

focusshifter 🤔 in Ruby, Rails, Hanami | dry-rb
Anton Davydov
Там сложно, потому что тебе уникальность ююид проверить стоит
Ну там всё или ничего вариант
источник