Size: a a a

Java/Kotlin and more

2021 March 05

C

Cyclone in Java/Kotlin and more
Ruslan Stelmachenko
можно gzip-ать респонс. для большого JSON выигрыш довольно неплохой по объему передаваемых данных

стриминг JSON-а есть в спринг-вебфлаксе, там это продвигается чуть ли не как основная фишка. вот неплохой доклад по этой теме https://www.youtube.com/watch?v=tjp8pTOyiWg

конечно, стриминг тут "по объекту". т.е. часть объекта передать нельзя, минимум 1. технологически это делается, например, через server-sent events.
Если на фронте nginx, то там стоит включить gzip для json'ов.
И да, жмёт очень и очень сильно. Можно настроить уровень сжатия.
источник

RS

Ruslan Stelmachenko in Java/Kotlin and more
Cyclone
Если на фронте nginx, то там стоит включить gzip для json'ов.
И да, жмёт очень и очень сильно. Можно настроить уровень сжатия.
Ну да, я это и имел ввиду. Нгинксом или Томкатом. Не вручную конечно же)
источник

C

Cyclone in Java/Kotlin and more
А то человек пойдёт сейчас в джава-коде сжимать...
источник

C

Cyclone in Java/Kotlin and more
Ruslan Stelmachenko
можно gzip-ать респонс. для большого JSON выигрыш довольно неплохой по объему передаваемых данных

стриминг JSON-а есть в спринг-вебфлаксе, там это продвигается чуть ли не как основная фишка. вот неплохой доклад по этой теме https://www.youtube.com/watch?v=tjp8pTOyiWg

конечно, стриминг тут "по объекту". т.е. часть объекта передать нельзя, минимум 1. технологически это делается, например, через server-sent events.
Я, кстати, не в курсе, а клиента, т.е. javascript как научить принимать стриминговые данные? Он же будет ждать окончания ответа, насколько я понимаю?
источник

RS

Ruslan Stelmachenko in Java/Kotlin and more
server sent events
это древняя технология, поддерживается во всех браузерах
источник

RS

Ruslan Stelmachenko in Java/Kotlin and more
по сути это надстройка над хттп
лонг-пулинг + данные в виде

data: blabla

data: blabla
источник

RS

Ruslan Stelmachenko in Java/Kotlin and more
в JS для этого есть класс EventSource
источник

C

Cyclone in Java/Kotlin and more
кул
источник

RS

Ruslan Stelmachenko in Java/Kotlin and more
Ruslan Stelmachenko
server sent events
это древняя технология, поддерживается во всех браузерах
хотя нет, проверил только что. во всех, кроме... IE конечно же)
но там есть полифил
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Ruslan Stelmachenko
хотя нет, проверил только что. во всех, кроме... IE конечно же)
но там есть полифил
он просто еще древнее SSE 🌚
источник

AA

Alexey Astashenko in Java/Kotlin and more
Ruslan Stelmachenko
можно gzip-ать респонс. для большого JSON выигрыш довольно неплохой по объему передаваемых данных

стриминг JSON-а есть в спринг-вебфлаксе, там это продвигается чуть ли не как основная фишка. вот неплохой доклад по этой теме https://www.youtube.com/watch?v=tjp8pTOyiWg

конечно, стриминг тут "по объекту". т.е. часть объекта передать нельзя, минимум 1. технологически это делается, например, через server-sent events.
Да, гзип это понятно. Просто хотелось бы сделать процесс более нелинейным что-ли. Т.е. не так что, 1 сериализуем на сервере, пихаем все в респонс (клиент висит все это время) , потом клиент ждёт пока скачается весь респонс, потом парсит весь огромный респонс в кучу объектов, потом только начинает с ними работать. Да, про sse тоже думал, возможно стоит попробовать..
источник

RS

Ruslan Stelmachenko in Java/Kotlin and more
ну gzip тут скорее как наиболее простой и быстрый способ повысить производительность, не меняя ни единой строчки кода. ведь браузер сам будет анзипать и с точки зрения JS все прозрачно, как будто приходит JSON.

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

П

Павел Сарпов... in Java/Kotlin and more
Привет.
Как такое возможно, что spring boot под ubuntu какие-то логи выводит в консоль, а какие-то нет. Хотя все логи выводятся обычным println
При этом из студии под маком выводят железно все логи
источник

СС

Степан Савченко... in Java/Kotlin and more
Всем доброго времени суток. У меня достаточно банальный, но важный вопрос по джаве к людям с индустрии. На сколько она сейчас актуальна? Не как тонна легаси, а язык для новых проектов. На ней пишут что-то новое или все перебежали на node.js/go/C#?
Я еще студент и не имею особой возможности общаться с людьми из индустрии. Раньше занимался разработкой по IOS, но потом понравилась джава и решил сменить род деятельности (джава бэк на спринге).
И вот в многочисленных холиварах с одногруппниками/друзьями я могу аргументировать почему джава топ и я решил переобуться, но меня всегда кроют аргументом “вот когда на работу пойдешь, будешь один легаси держать, тогда и расскажешь как это круто”. Спасибо за ответы
источник

C

Cyclone in Java/Kotlin and more
более чем
источник

VS

Vitaly Sirotkin in Java/Kotlin and more
Степан Савченко
Всем доброго времени суток. У меня достаточно банальный, но важный вопрос по джаве к людям с индустрии. На сколько она сейчас актуальна? Не как тонна легаси, а язык для новых проектов. На ней пишут что-то новое или все перебежали на node.js/go/C#?
Я еще студент и не имею особой возможности общаться с людьми из индустрии. Раньше занимался разработкой по IOS, но потом понравилась джава и решил сменить род деятельности (джава бэк на спринге).
И вот в многочисленных холиварах с одногруппниками/друзьями я могу аргументировать почему джава топ и я решил переобуться, но меня всегда кроют аргументом “вот когда на работу пойдешь, будешь один легаси держать, тогда и расскажешь как это круто”. Спасибо за ответы
глупость какая. микросервисы на джаве повсеместно. начиная от сбербанка заканчивая hh.ru
источник

SS

Sergey Shpakovsky in Java/Kotlin and more
Павел Сарпов
Привет.
Как такое возможно, что spring boot под ubuntu какие-то логи выводит в консоль, а какие-то нет. Хотя все логи выводятся обычным println
При этом из студии под маком выводят железно все логи
Уровень логирования может стоит без вывода части сообщений?
источник

П

Павел Сарпов... in Java/Kotlin and more
Sergey Shpakovsky
Уровень логирования может стоит без вывода части сообщений?
Они выводятся одинаковым способом но из разных мест. Гарантировано, что все методы в которых происходит это логирование вызываются
источник

SS

Sergey Shpakovsky in Java/Kotlin and more
Павел Сарпов
Они выводятся одинаковым способом но из разных мест. Гарантировано, что все методы в которых происходит это логирование вызываются
Они все выводятся на другой машине?
источник

П

Павел Сарпов... in Java/Kotlin and more
Да
источник