Задать вопрос
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    ThunderCat, ага - через пару дней, попробую сформулировать предварительные итоги
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    ThunderCat, другую аргументацию я принял и обдумываю, а на прочую указал как на некорректную, если обидел, прошу прощения.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    ThunderCat, Колумб, между прочего, все-таки открыл Америку
    Если серьёзно, я просто пытаюсь скорректировать направление дискуссии, в интересующую меня сторону.
    Не нужно делать необоснованных выводов. А вот за ещё пару юскейсов из жизни, скажу спасибо, как уже сказал за первый.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    ThunderCat, коенчно скажу - в бизнесе как и в жизни выживает не стабильный (сильнейший), а тот кто лучше приспасабливается (гибкий), адаптируется к изменениям. Можно конечно сформулировать как "стабильно гибкий" - но это уже словоблудие, типа "отрицательного роста" и т.д. и т.п.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    ThunderCat, про нравоучения поподробнее, раз уж зашла речь.
    "Здравый смысл" - всего лишь словесная коснтрукция, целью которой несомненно является манипуляция.
    Аргументация про карму, или вида "неделай так, потому что так умный дядя говорит", "из соображений гуманизма" и прочее - в нормальном мире не работает, по простой причине, это все тоже не аргументы, а манипулятивные техники, причем очень примитивные.
    Естественно в манипуляции нет ничего плохого и иногда она полезна (чаще на коротких дистанциях и чтоб затукнуть условные "дырки") но чаще вредит и автору и потребителю.
    Рекомендую ей пользоваться осознано и не злоупотреблять.
    Я в этом топике в любом случае увижу все полезные аргументы, для этого и завел.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    mayton2019, можно поподробнее про две копии логики? (Есть свои мысли, но прежде хочу услышать ваши).
    Orm - это отдельная песня, с одной стороны ты получаешь удобство доступа к данным, с другой ад в профайлере , но это офтоп.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    ThunderCat, а забыл. Стабильность - очень так себе аргумент. Можно ещё сказать зачем ты раскачиваешь лодку . Антихрупкость уж тогда. Но это всё оффтоп.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    За кейс, благодарю.
    Хороший довод про кеш. Согласен, что он не дёргает БД, и в этом его плюс, вопрос как его организовать и неужен ли он сейчас не так важен, а вот факт того, что его будет очень сложно внедрить при наличии хранимок - это потенциальный довод.
    Всем нравоучениям улыбаюсь но не более.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    ThunderCat, главная причина - это дурацкая привычка задавать вопросы (и у меня и у заказчика). соврменная это же не значит автоматически, правильная или лучшая.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    Ипатьев, я здесь не обсуждаю статью. Обсуждаю заявленный вопрос. Это как пример, их много таких примеров и везде это суждение как само собой разумеющееся, может слегка под разными углами.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    Я же правильно понимаю. Всё ваши минусы сводятся конкретно, к сложности поддержки, в связи с отсутствием/дороговизной специалистов?
    Спасибо за коммент, согласен, что это важно, но конкретно в данном вопросе, конкретно сейчас меня больше интересует архитектурные аспекты
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    FernandoErrNando,
    Кейс достаточно простой/распространенный обычная распределённая бизнес система с очень большим количеством товаров/продавцов/покупателей и требованием заказчика в реализации бл в sql и выбора субд. Я исследую вопрос в контексте контраргументов, и пока не нашёл, чего то конкретного, чтоб можно было сказать -
    "смотри если так сделаем, то нам капец, по таким то причинам". Всё говорит о том, что нам может быть когда-то капец, а может и нет.
    Хороший вариант с зоопарком сервисов получения данных (микросервисы, шины, эластик, БД), но этого пока мало, хотя сейчас в проекте только эластика нет.
    С редисом не всё однозначно, есть подозрения, что pg сам себя кэширует лучше.
    По поводу бизнес требований согласен - поменяются 100 раз. Но как говорил король в "Убить дракона": " не сейчас, не сегодня и не бизнес требования"

    Короче самые лучшие коменты для меня это конкретные юскейсы: типа смотри мы вот сделали и огребли такие-то проблемы, потом переделали вот так и эти проблемы ушли, но появились новые такие-то.

    Понимаю, что получу то, что хочу не в одном коменте, а в диалоге, поэтому ценю каждый отклик.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    Мутные они на мой взгляд в том, что эти минусы можно легко получить и в приложении, где условна вся БЛ отделена от сервера БД. Разве не так?
    По вашим доводам
    1. Не готов ответить, здесь много вариантов и отладки и способов строить тестовые среды
    2. Посмотрю это интересно. Но замечу затрудненность это же не невозможность.
    3. Ага, уверен (пусть будет так для простоты)
    4. Думаю почти всё решаемо. В pg вроде даже на c++ можно писать
    5. Кэширование это проблема - согласен, pg кстати неплохо с ней справляется. Но это же не совсем БЛ.
    Если серверов будет больше 1, то буду работать с несколькими серверами (их кстати сейчас больше одного) - в чем здесь вопрос?
    6. Ага - это тоже интересно, естественно придётся задействовать бэкенд, для получения сервисных данных. И думаю не стоит их для обработки отправлять серверу БД. Но есть понимание, что таких запросов будет, где-то 2% (возможно здесь я не прав)

    P. S. Если можно, попрошу обойтись без пассивной агрессии.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    Примеры прикольные, гипреболизированые, но не имеющие отношения к предмету обсуждения. Как аргумент это сложно принять.
    Типа: почему рыба плавает в воде? - ха! Ты хоть раз видел, чтобы орёл бегал по лесу? Вот то то и оно.
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    ksnk, минуточку. здесь еще один набор штампов (я как раз пытаюсь разобраться с одним из них). насколько я понимаю ООП никаких слоев не выделяет он предлагает инструменты абстрагирования, которым хочешь пользуйся, хочешь нет,. Более глубокое расслоение это уже архитектурные паттерны (имхо) - чистая архитектура, хексоганальная архитектура и т.д..
    Я не думал о варианте размазывания бизнес-логики между бекендом и БД (пока рассматриваю вариант или там или там).
    Про кодера - это тоже спорно - любой приличный кодер бэкенда, как правило неплохо ориентируется и в sql ( предлагаю это оставить за рамками данного топика).

    Речь идет о категоричности суждений - я часто читаю о том, что БЛ вообще нельзя помещать в SQL - пытаюсь понять откуда растут ноги - есть же какая то причина такой категоричности. Вот пример: https://habr.com/ru/companies/oleg-bunin/articles/...
  • Почему нельзя/можно писать бизнес-логику в sql?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    Пока не понятно. Всё минусы какие-то мутные (кроме зависимости от конкретной БД) - их можно натворить в обоих подходах, а плюсы наоборот всё чёткие.
  • Как прослушивать событие нажатия кнопки на принтере?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    Принтер, более сложное устройство, нежели может показаться на первый взгляд...
  • Как прослушивать событие нажатия кнопки на принтере?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    Вариант с отдельной кнопкой, я отложил в конец очереди (естественно не исключая его), как один из плохих/дорогих... То, что не факт, я понимаю - поэтому ищу и спрашиваю...
  • Как прослушивать событие нажатия кнопки на принтере?

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    Копание в этом направлении, пока что привели меня сюда. Если есть конкретные варианты - рассмотрю их с благодарностью
  • После миграция компьютера в новый корпративный домен перестала работать архивация

    alexeyshkolnik
    @alexeyshkolnik Автор вопроса
    В общем я хотел сказать, что переустановка ОС или такой грандиозный откат на прошлый домен (хотя за откат я не уверен) — это конечно выход, но это не объясняет ни причины ошибки, не нормального способа ее устранения. Хорошо что штатной Windows архивацией пользовались только 2-а человека, а если бы ее использовали на всех ПК (~500), то вариант с откатом был бы неприемлем в принципе. Нужно решение которое починит службу, без откатов.