Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7 8 9 10 .. 12   вперед  Ctrl      все
 Re: Что такое серверный рендеринг  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 27661
И подобной идее минимум 15 лет.
Время давно показало её несостоятельность.
26 мар 20, 08:34    [22106112]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
lleming
Member

Откуда:
Сообщений: 1702
вадя
lleming
. Шаблонизатор заранее может аллоцировать stringbuilder необходимой длины
кто мешает задать ручками эту длину? на этапе разработки вполне можно оценить необходимое значение


тут ктото говорил про сложность разработки дополнительного кода, если у меня свыше 3000тыс шаблонов предлагаешь руками отодвинуть разработку и считать длину шаблонов ?
при внесении изменений пересчитывать ?
т.е. написать плагин к мавен который будет пересчитывать эти константы на compile time или при старте приложения считать?
боюсь у тебя тоже самодельный шаблонизатор в итоге получится учитывая твой уровень знаний он(шаблонизатор) будет похуже готового velocity какого нибудь .
26 мар 20, 09:11    [22106122]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
mayton
Member

Откуда: loopback
Сообщений: 45401
вадя
PetroNotC Sharp
Где работодатель просил ЧИСТУЮ java?
отвечаю про чистую java:
из простого результсета
SELECT * FROM spr_type;

получить
html строку
<ul class="treeCSS"><li>aaaaa1<ul><li>ttttsfasfa2<ul><li>рррррррррррррр3<li>ggggggg3</ul><li>eeeee2</ul><li>ggggg1<ul><li>0000000000002</ul><li>ffff1</ul>

Технически. Это будет работать. Но DBMS жалко нагружать таким шлаком. Ее канал взаимодействия с аппликейшеном
надо беречь для передачи ценной информации. Любой ДБА захочет для тебя медленной и мучительной смерти если
увидет дамп сетевого трафика.

Тоесть надо передавать только значимые поля. Многие DBMS легко отдают
atomic строки с таблички БД но очень плохо конкатенируют их (Oracle до сих пор не имеет механики VarcharBuilder
и длина строки в нем ограничена 32k если отдельно DBA не конфигурил а так еще того меньше). Есть ограничения
на JDBC драйверы (особенно Постгрес) которые написаны так *уёво что либо прогружают весь курсор в память (!)
зачем непонятно для forward-backward либо тормозят в 10 раз когда ставишь форвард.

Тоесть мораль. Не нагружать сетевой канал DB <=> Application и не нагружать ядро SQL + Stored Procedures ненужными
и несвойственными ей строковыми операциями.

И вообще - по максимуму работать с стеком NGinx(eTag/expires)+Application и с кеширующими технологиями Redis/Memcached
EhCache, Hazelcast, Ignite, Cassandra. Пускай он отдают шлак повторно если будет дабл-клик или фальстарт или цикл с фронта.

Сообщение было отредактировано: 26 мар 20, 17:41
26 мар 20, 17:41    [22106485]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8461
mayton

Oracle ... и длина строки в нем ограничена

4 K для SQL
32 K это не SQL-строки, а недо-LONG в PL/SQL

AFAIK

p.s. почему недо-LONG, т.к. LONG до 2 Gb, но PL/SQL умеет работать с недо-LONG'ом как с пере-строкой )))
/не знаю как обозвать PL/SQL строки, которая не VARCHAR2, а 32 K LONG/
26 мар 20, 17:56    [22106494]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
mayton
Member

Откуда: loopback
Сообщений: 45401
Leonid Kudryavtsev, начиная с Oracle 11g строка хранимая в блоках таблицы была
увеличена до 32к. Только чтобы эту фичу включать надо было менять системные параметры
БД которые по дефолту были выставлены в совместимость со старыми размерами
26 мар 20, 17:58    [22106495]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
mayton
Member

Откуда: loopback
Сообщений: 45401
LONG были объявлены Deprecated и их стали рекомендовать заменять на БЛОБ.
26 мар 20, 18:00    [22106496]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
hVostt
Member

Откуда:
Сообщений: 17115
Короче, Java больше не нужна, расходитесь парни :)

вадя открыл более короткий путь
1 апр 20, 01:24    [22109096]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17480
Leonid Kudryavtsev
32 K это не SQL-строки, а недо-LONG в PL/SQL
не знаю как там у оракла, но в mysql
LONGTEXT
Столбец типа BLOB или TEXT с максимальной длиной 4294967295 (2^32 - 1) символов.

mayton
Любой ДБА захочет для тебя медленной и мучительной смерти если
увидет дамп сетевого трафика.
при выводе данных в результсете нескольких записей, что одну запись длиной равной сумме этих записей - это одинаково... для субд.

но вот для приложения есть разница

вот вариант , когда выводится из базы в несколько строк
try (Connection con = dataSource.getConnection();
                CallableStatement proc = con.prepareCall(f);) {
            rs = proc.executeQuery();
            StringBuilder sb = new StringBuilder();
            sb.append("<ul class=\"treeCSS\"  id=\"ul_tree\">");
            while (rs.next()) {
               
                sb.append(rs.getString("d"));
            }
            sb.append("</ul>");
            userSession.getBasicRemote().sendText("xxx010|" + sb.toString());

        } catch (SQLException | IOException ex) {
            ex.printStackTrace();
        } 

и вариант одна строка-запись
try (Connection con = dataSource.getConnection();
                CallableStatement proc = con.prepareCall(f);) {
            rs = proc.executeQuery();
            rs.next();
            userSession.getBasicRemote().sendText("xxx010|" + rs.getString(1));

        } catch (SQLException | IOException ex) {
            ex.printStackTrace();
        }

результат один, вот только работа сервера - разная, в субд коннект строк - нативная функция, в java - сами знаете...
ну и это sb.append(rs.getString("d")); добавляет времени...
ну и что можно сделать(простейшая демка)
https://jsfiddle.net/qbua0v92/1/

хаять разрешается :)

Сообщение было отредактировано: 1 апр 20, 14:08
1 апр 20, 14:07    [22109326]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
mayton
Member

Откуда: loopback
Сообщений: 45401
Зачем хаять?

Ты не пройдешь code-review даже не по NFR поинтам. А просто архитекурно.
По предназначению. У middle-уровне предназначение - выражать бизнес модель.
У storage - хранить чистую дату.

У жопы предназначение - срать.

Тыж не гей?
1 апр 20, 14:15    [22109336]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17480
mayton
Ты не пройдешь code-review даже не по NFR поинтам. А просто архитекурно.
По предназначению. У middle-уровне предназначение - выражать бизнес модель.
У storage - хранить чистую дату.
какие-то шоры.
если кому-то трудно уметь разбираться - это не значить что другим это сложно.
шаблонное мышление - не есть хорошо для развития.
я переложил часть нагрузки на ту область , которая с ней проще справляется - получил выйгрыш в производительности.
если сформировать тот же json - ,eltn ghjot&
1 апр 20, 14:28    [22109345]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
hVostt
Member

Откуда:
Сообщений: 17115
вадя
какие-то шоры.
если кому-то трудно уметь разбираться - это не значить что другим это сложно.
шаблонное мышление - не есть хорошо для развития.
я переложил часть нагрузки на ту область , которая с ней проще справляется - получил выйгрыш в производительности.
если сформировать тот же json - ,eltn ghjot&


нет никакого выигрыша в производительности.
но есть очень серьёзный проигрыш по сопровождению такого решения, тестированию, и развитию.

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

и твои идеи не выгорели ещё десяток лет назад, и не получили поддержку.
почему ты это упорно игнорируешь?
1 апр 20, 14:48    [22109365]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 9980
hVostt
и твои идеи не выгорели ещё десяток лет назад, и не получили поддержку.
почему ты это упорно игнорируешь?
Человек один работает и его всё устраивает.
Да, в команде разработчиков плохо ему будет, но каждый - кузнечик собственного счастья.
1 апр 20, 16:37    [22109471]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
mayton
Member

Откуда: loopback
Сообщений: 45401
Эта история КМК - жестокое дежа-вю и повторение идей из шаблонизатора https://www.sql.ru/forum/1282812-1/shablonizaciya

Но мне кажется здесь спора вобщем то нет. Вадя сидит один. Сам себе чото кодит. Сам себя саппортит.

И бох с ним. А топик то можно и закрыть. Какой в нем смысл? Развивать плохие практики?
1 апр 20, 16:53    [22109483]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17480
hVostt
нет никакого выигрыша в производительности.
ты просто не в курсе что есть в начале и что надо получить
если ты дашь задание чистоту базисту - он тебе выдаст 3 столбца - id, id_parent, name (ну если сообразит - уровень вложенности).
вот из этого попробуй сделать что-то готовое для вывода.
я уже сколько раз предлагал - докажите обратное - посмотрим количество кода , время выполнения - и ничего в ответ, только пустые слова. такими словами ты только подтверждаешь, что не в курсе того, что происходит
в цепочке от данных до их отображения. я дал ссылку последнего варианта. попробуй это сформировать на java и сравним время (да даже с тем же шаблонизатором)

можно конечно что-то стороннее - но это куча кода(соответственно - время) для десктопа - мелочь, для нагруженного сервера - это уже не мелочь.
hVostt
но есть очень серьёзный проигрыш по сопровождению такого решения, тестированию, и развитию.
это слова человека для которого не понимает ни в базах ни во фронте.
сопровождение? в браузере - одна строка вставки в dom, в приложении - я показал - 5 строк , в субд - да там есть что-то не очень сложное. замени всё это на привычное - это надо знать и либы для преобразования из результсета в нужный формат json, который понимает либа на js, и надо знать либы , которые преобразуют из json в элементы dom.
где сопровождение проще?

и что значит эффективные решения? для чего и для кого? сделать быстро, абы работало, чтоб потом говорить, что без масштабирования не пойдет и надо новое железо?
Basil A. Sidorov
Да, в команде разработчиков плохо ему будет, но каждый - кузнечик собственного счастья.
я и в команде могу - в чём проблема ? если я знаю что может дать субд - я и потребую этого, Если для кого-то есть трудности с суппортом субд - не надо распространять это на всех.
mayton
Эта история КМК - жестокое дежа-вю и повторение идей из шаблонизатора
и там было выяснено , что шаблонизатор в конечном итоге использует тот же стрингбилдер. плюс ещё кучу кода для универсальности. и надо чтоб из результсета данные сформировать так, чтоб их засунуть в шаблонизатор. приведите пример такого...

mayton
И бох с ним. А топик то можно и закрыть. Какой в нем смысл? Развивать плохие практики?
да ради бога.

Сообщение было отредактировано: 1 апр 20, 20:49
1 апр 20, 20:48    [22109606]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
lleming
Member

Откуда:
Сообщений: 1702
вадя

сопровождение? в браузере - одна строка вставки в dom, в приложении - я показал - 5 строк , в субд - да там есть что-то не очень сложное. замени всё это на привычное - это надо знать и либы для преобразования из результсета в нужный формат json, который понимает либа на js, и надо знать либы , которые преобразуют из json в элементы dom.
где сопровождение проще?


Тут все логично конешно. Во втором случае намного проще. Middle если не работал со спринг справится за пару часов, если работал то минут 15. Берем спринг туториал 15 минут и все готово плюс и к маштабированию готово.

Junior освоит не за 15 минут а за пару дней и можно кидать его уже на смежный проект с таким же спрингом но с совсем другой БД.
1 апр 20, 21:32    [22109617]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17480
lleming
Во втором случае намного проще. Middle если не работал со спринг справится за пару часов, если работал то минут 15. Берем спринг туториал 15 минут и все готово плюс и к маштабированию готово.
это всё слова. практика?
и сравним количество кода и скорость работы.

Сообщение было отредактировано: 1 апр 20, 21:50
1 апр 20, 21:50    [22109622]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
lleming
Member

Откуда:
Сообщений: 1702
вадя
lleming
Во втором случае намного проще. Middle если не работал со спринг справится за пару часов, если работал то минут 15. Берем спринг туториал 15 минут и все готово плюс и к маштабированию готово.
это всё слова. практика?
и сравним количество кода и скорость работы.


Слова подтвержденные практикой (пару леть в аутсорсе проработал). А что сравнивать зайди на spring tutorial сделай и сравни. По скорости врядли у тебя получится понять, ты же алгоритмическую сложность не осилил а бенчмарки тем более не осилишь. Я же как то пробовал тебе объяснить что у запросов тоже есть план и не бесплатный, а ты обвинил меня в маркетинговой чепухе.
1 апр 20, 22:30    [22109637]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
Zzz79
Member

Откуда:
Сообщений: 42
lleming,вадя тут известный всем балабол,который знает что такое веб сокеты и чо то из фронд энда
на этом его полномочия все)
1 апр 20, 22:48    [22109647]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17480
Zzz79,

уж твои то познания что в вэб, что в субд хорошо известны. один цветочный магазин чего стоит
lleming
А что сравнивать зайди на spring tutorial сделай и сравни.
ну раз ты в этом спец - тебе это как два пальца ...
вот и будет что сравнить.
пока слова.
уже 6 страницу прошу сделайте свой вариант - и в ответ только слова, слова...
lleming
Я же как то пробовал тебе объяснить что у запросов тоже есть план и не бесплатный,
да есть цена, а ещё есть цена всей системы, и что толку что ты уменьшишь стоимость плана запроса, но повысишь стоимость работы всей системы многократно ?
почему ты считаешь что стоимость запроса выше стоимости работы java-кода?
1 апр 20, 23:03    [22109653]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
Zzz79
Member

Откуда:
Сообщений: 42
вадя
Zzz79,

уж твои то познания что в вэб, что в субд хорошо известны. один цветочный магазин чего стоит

как показала практика даже моя лаба интернская оказалась для тебя недостежимой высотой))

давай так -пиши цветочный магазин - код на гитхаб ,а дальше решим что с тобой делать
1 апр 20, 23:13    [22109659]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17480
Zzz79
давай так -пиши цветочный магазин - код на гитхаб ,а дальше решим что с тобой делать
я прошу кусочек - ты и этого не сможешь, а уже требуешь "цветочный магазин" тебе предоставить.
Zzz79
моя лаба интернская оказалась для тебя недостежимой высотой
она ниже плинтуса, о чём тебе все сказали...
1 апр 20, 23:29    [22109664]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
Zzz79
Member

Откуда:
Сообщений: 42
вадя
о чём тебе все сказали...

Очень плохое качество - гооворить за всех,пусть даже ты и джава скриптер)
2 апр 20, 09:33    [22109727]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
hVostt
Member

Откуда:
Сообщений: 17115
вадя
hVostt
нет никакого выигрыша в производительности.
ты просто не в курсе что есть в начале и что надо получить
если ты дашь задание чистоту базисту - он тебе выдаст 3 столбца - id, id_parent, name (ну если сообразит - уровень вложенности).
вот из этого попробуй сделать что-то готовое для вывода.
я уже сколько раз предлагал - докажите обратное - посмотрим количество кода , время выполнения - и ничего в ответ, только пустые слова. такими словами ты только подтверждаешь, что не в курсе того, что происходит
в цепочке от данных до их отображения. я дал ссылку последнего варианта. попробуй это сформировать на java и сравним время (да даже с тем же шаблонизатором)


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


вадя
это слова человека для которого не понимает ни в базах ни во фронте.
сопровождение? в браузере - одна строка вставки в dom, в приложении - я показал - 5 строк , в субд - да там есть что-то не очень сложное. замени всё это на привычное - это надо знать и либы для преобразования из результсета в нужный формат json, который понимает либа на js, и надо знать либы , которые преобразуют из json в элементы dom.
где сопровождение проще?

и что значит эффективные решения? для чего и для кого? сделать быстро, абы работало, чтоб потом говорить, что без масштабирования не пойдет и надо новое железо?


сопровождение это не про вставку строки в dom.
то, что ты показал не актуально в современной разработке.
подобный подход не принесёт пользы никому, ни практической, ни экономической.

какой смысл обсуждать подходы, которые не выдержали проверку временем?
давай ещё разработку на Basic-е в ДОС-е обсудим?
2 апр 20, 11:14    [22109774]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
Дмитрий Мух
Member

Откуда: Зеленоград
Сообщений: 3052
hVostt
вадя
пропущено...
ты просто не в курсе что есть в начале и что надо получить
если ты дашь задание чистоту базисту - он тебе выдаст 3 столбца - id, id_parent, name (ну если сообразит - уровень вложенности).
вот из этого попробуй сделать что-то готовое для вывода.
я уже сколько раз предлагал - докажите обратное - посмотрим количество кода , время выполнения - и ничего в ответ, только пустые слова. такими словами ты только подтверждаешь, что не в курсе того, что происходит
в цепочке от данных до их отображения. я дал ссылку последнего варианта. попробуй это сформировать на java и сравним время (да даже с тем же шаблонизатором)


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

+1

нечего пока обсуждать
пусть применит свою идею в реальном проекте, тогда и будем сравнивать
2 апр 20, 14:20    [22109879]     Ответить | Цитировать Сообщить модератору
 Re: Что такое серверный рендеринг  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17480
hVostt
какой смысл обсуждать подходы, которые не выдержали проверку временем?
я дал ссылку где описывается "серверный рендеринг" - т.е. формируется html строка на сервере. каким образом это делается - это уже реализация каждого конкретного случая.
прежде чем говорить о том, что не принесёт пользу - сделай по своему и давай сравним.
если тебе слабо - не лезь.

hVostt
сопровождение это не про вставку строки в dom.
сопровождение это прежде всего возможность разобраться в коде, если у тебя не хватает способности - не надо распространять это на других.

я уже сколько раз предлагал - давайте сравним на реальных примерах...
я привел код, работающий код. от вас только бла, бла, бла.
вчера, 10:50    [22110350]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7 8 9 10 .. 12   вперед  Ctrl      все
Все форумы / Java Ответить