Size: a a a

2020 August 23

AE

Alexandr Emelyanov in pro.jvm
nasdaq nice
Что думаете по поводу "логики на бд" ?
наткнулся на https://habr.com/ru/company/lingualeo/blog/515530/ и все тут как-то слишком сладко
только единственная проблема - версионирование
1. SQL это в первую очередь язык запросов, логика и манипуляции данными там описать сложнее ввиду скудного синтаксиса по сравнению с яп общего назначения
2. Для такого проекта нужна команда dba, ориентированная на постгрес, их меньше и стоят они дороже
3. Профит от этого всего может быть только на ограниченном количестве кейсов, когда например формируемый результат после обработки много меньше исходного объема данных, на которых он строится, но и тут все не однозначно. В общем тут можно просто вынести какую то часть, но не все полностью
источник

TI

Tolegen Izbassar in pro.jvm
Так там еще проблема с версионированием, тестриованием, тулингом вида деплой/CI
источник

AD

Apache DOG™ in pro.jvm
nasdaq nice
Что думаете по поводу "логики на бд" ?
наткнулся на https://habr.com/ru/company/lingualeo/blog/515530/ и все тут как-то слишком сладко
только единственная проблема - версионирование
Было в девяностых и нулевых
источник

G

George in pro.jvm
Apache DOG™
Было в девяностых и нулевых
Количество вакансий "*DB_name* developer" и сейчас большое)
источник

T

Tagir in pro.jvm
nasdaq nice
Что думаете по поводу "логики на бд" ?
наткнулся на https://habr.com/ru/company/lingualeo/blog/515530/ и все тут как-то слишком сладко
только единственная проблема - версионирование
В каментах смешно
источник

T

Tagir in pro.jvm
Кажется, что автор скрывает масштаб бедствия, конечно. Так гладко не бывает
источник

D

Dima in pro.jvm
nasdaq nice
Что думаете по поводу "логики на бд" ?
наткнулся на https://habr.com/ru/company/lingualeo/blog/515530/ и все тут как-то слишком сладко
только единственная проблема - версионирование
выиграли бой, но проиграли войну
источник

D

Dima in pro.jvm
правда если у них реально будет супернаплав пользователей, думаю найдут денюшку еще раз все переписать по современным тенденциям
источник

AD

Apache DOG™ in pro.jvm
George
Количество вакансий "*DB_name* developer" и сейчас большое)
Лигаси же
источник

h

humanoid in pro.jvm
Я почитал ответы автора в комментах, у меня сложилось впечатление, что у них только для read и для write (без особых инвариантов) используются хранимки. Остальное у них на Go
источник

DK

Dmitriy Krayanskiy in pro.jvm
Apache DOG™
Было в девяностых и нулевых
у нас в начале десятых было. При этом был взрослый сервак (sun m9k) и хранилка на 200к iops ( в 10-х, когда ssd  еще не были распространены, это было круто).
источник

GM

Gerr Mes in pro.jvm
На самом деле хранимки вполне так хорошо реинкарнировались в продуктах типа hazelcast/ignite - только там они не называются "stored procedures" :)) Главное правильно "продать" :) И вот уже мы снова в тренде.И во вполне себе "свежих" базах типа Тарантул они есть и насколько я помню - единственный способ получить атомисити в Tarantool (по пачке изменений конечно же) заюзать sp
источник

AE

Alexandr Emelyanov in pro.jvm
Tolegen Izbassar
Так там еще проблема с версионированием, тестриованием, тулингом вида деплой/CI
+
источник

S

Sherzod in pro.jvm
/stat@combot
источник

C

Combot in pro.jvm
Total messages: 392870
источник

А

Артём Курилко... in pro.jvm
Всем привет, как в okhttp3 указать метод Post без тела запроса? или просто поставить экземпляр RequestBody без указания каких либо данных?
источник

А

Артём Курилко... in pro.jvm
код метода
public Request.Builder method(String method, @Nullable RequestBody body) {
           if (method == null) {
               throw new NullPointerException("method == null");
           } else if (method.length() == 0) {
               throw new IllegalArgumentException("method.length() == 0");
           } else if (body != null && !HttpMethod.permitsRequestBody(method)) {
               throw new IllegalArgumentException("method " + method + " must not have a request body.");
           } else if (body == null && HttpMethod.requiresRequestBody(method)) {
               throw new IllegalArgumentException("method " + method + " must have a request body.");
           } else {
               this.method = method;
               this.body = body;
               return this;
           }
       }
источник
2020 August 24

VP

Vladimir Petrakovich in pro.jvm
Артём Курилко
код метода
public Request.Builder method(String method, @Nullable RequestBody body) {
           if (method == null) {
               throw new NullPointerException("method == null");
           } else if (method.length() == 0) {
               throw new IllegalArgumentException("method.length() == 0");
           } else if (body != null && !HttpMethod.permitsRequestBody(method)) {
               throw new IllegalArgumentException("method " + method + " must not have a request body.");
           } else if (body == null && HttpMethod.requiresRequestBody(method)) {
               throw new IllegalArgumentException("method " + method + " must have a request body.");
           } else {
               this.method = method;
               this.body = body;
               return this;
           }
       }
С null, видимо, падает?
источник

ὦan in pro.jvm
вопрос по секурити спринга
есть у меня модель юзера и у него енам userStatus и там active, blocked и все такое
как на основе этого поля задать доступ на урл?
вот пример - юзер UserStatus.Blocked будет иметь доступ только на 1 урл
источник

AV

Aleksej Voroncov in pro.jvm
ὦan
вопрос по секурити спринга
есть у меня модель юзера и у него енам userStatus и там active, blocked и все такое
как на основе этого поля задать доступ на урл?
вот пример - юзер UserStatus.Blocked будет иметь доступ только на 1 урл
В реквест фильтре можешь выдать ему роль ROLE_BLOCKED и повесить @PreAuthorize('hasRole(ROLE_BLOCKED') на тот урл
источник