Size: a a a

Java/Kotlin Web and more

2020 November 24

AE

Alexandr Emelyanov in Java/Kotlin Web and more
Вообще надо брать кубик и использовать spring cloud kubernates
источник

AE

Alexandr Emelyanov in Java/Kotlin Web and more
Ruslan Stelmachenko
нет, вебфлакс как раз сложнее, чем стандартная модель программирования, где ты пишешь синхронный код и о тредах большую часть времени не думаешь.

выбирают как раз ради того, чтобы не создавался тред на каждый запрос. когда идет тысяча одновременных запросов, то такая модель становится не очень производительной и тратит много памяти впустую (т.к. 1 тред занимает примерно 1 мб сам по себе)
Кстати, насчет реактивщины и колбэков. Все отлично ложится на корутины, код получается императивным)
источник

RS

Ruslan Stelmachenko in Java/Kotlin Web and more
Я с корутинами (и вообще котлином) не работал. Но интересно, как у такого кода дела с дебагом (например, поставить брикпоинты и идти по коду построчно), со стектрейсами (не становится ли стектрейс total mess, в котором ничего не понять) и т.п. Ведь по факту-то код лишь притворяется императивным, а сам все еще асинхронный. :)

Для джавы, кстати, тоже есть либа (https://github.com/electronicarts/ea-async), позволяющая писать асинхронный код синхронно через примитивы async/await, которые эта либа эмулирует с помощью java agent instrumentation. Но ее я тоже не пробовал.
источник

C

Cyclone in Java/Kotlin Web and more
Думаю, что стектрейс становится total mess.
источник

AE

Alexandr Emelyanov in Java/Kotlin Web and more
Ruslan Stelmachenko
Я с корутинами (и вообще котлином) не работал. Но интересно, как у такого кода дела с дебагом (например, поставить брикпоинты и идти по коду построчно), со стектрейсами (не становится ли стектрейс total mess, в котором ничего не понять) и т.п. Ведь по факту-то код лишь притворяется императивным, а сам все еще асинхронный. :)

Для джавы, кстати, тоже есть либа (https://github.com/electronicarts/ea-async), позволяющая писать асинхронный код синхронно через примитивы async/await, которые эта либа эмулирует с помощью java agent instrumentation. Но ее я тоже не пробовал.
С отладкой и стектрейсами так все ок)

С либой этой я думаю сравнивать не стоит) там очень все хитро под капотом, по сути механика работы такая же как лума, но в его случае все делает вм, а у корутин генерируется байт-код, который это проворачивает
источник

AE

Alexandr Emelyanov in Java/Kotlin Web and more
Корутины - Стейт машина
источник

k

kuzznya in Java/Kotlin Web and more
Edem Injection
А почему выбирают вебфлакс? Из-за сложности мультитреда?
У нас был выбран вебфлакс, потому что делаем систему диспетчеризации
Нужно читать из ккчи мест и в кучу мест писать
По разным протоколам
Что-то из opc, что-то в бд
Сначала там были коллбэки
Очень много коллбэков
А сейчас как раз и занимаюсь переписыванием этого всего на реактивную модель
Да, код становится сложнее, надо больше думать и следить, чтобы всё было именно так, как хочешь, а не  в другом порядке
Но относительно старого вида с коллбэками и прочим обвесом код стал логичнее (и даже быстрее немного)
источник

k

kuzznya in Java/Kotlin Web and more
Ну и, конечно, выглядит красиво
Хочется применять много где
Но, если подумать и посмотреть, как это все работает (а еще получить много проблем при дебаге), то желание пихать куда угодно пропадает
источник

EI

Edem Injection in Java/Kotlin Web and more
У нас вот-вот на парах вебфлакс пойдет
источник

EI

Edem Injection in Java/Kotlin Web and more
Хз, я после многопоточки ниче не боюсь, месяц лабу кодил. Вебфлакс это какие-то ясли будут...
источник

AE

Alexandr Emelyanov in Java/Kotlin Web and more
Edem Injection
Хз, я после многопоточки ниче не боюсь, месяц лабу кодил. Вебфлакс это какие-то ясли будут...
источник

AE

Alexandr Emelyanov in Java/Kotlin Web and more
источник

AE

Alexandr Emelyanov in Java/Kotlin Web and more
Edem Injection
Хз, я после многопоточки ниче не боюсь, месяц лабу кодил. Вебфлакс это какие-то ясли будут...
Я бы не зарекался
источник

AE

Alexandr Emelyanov in Java/Kotlin Web and more
Начнется бэкпреже и прочие весёлости
источник

k

kuzznya in Java/Kotlin Web and more
Самым страшным, что я использовал в джаве, я считаю JNI
источник

k

kuzznya in Java/Kotlin Web and more
Вот там такие приколы внутри
источник

k

kuzznya in Java/Kotlin Web and more
Не так-то просто получить SEGFAULT, работая на джаве)
источник

ЧЧ

Чел Челу Чел Челыч... in Java/Kotlin Web and more
всем доброго времени бытия, назрел вопрос
есть POSTmapping, который логинит юзеров, данный мапинг помечаю в security-config’e как loginprocessingurl(), но логика которая внутри этого мапинга не отрабатывает, но логин происходит
источник

ЧЧ

Чел Челу Чел Челыч... in Java/Kotlin Web and more
там для отладки делал несколько sout’oв и они напрочь отказываються работать
источник

AE

Alexandr Emelyanov in Java/Kotlin Web and more
Чел Челу Чел Челыч
всем доброго времени бытия, назрел вопрос
есть POSTmapping, который логинит юзеров, данный мапинг помечаю в security-config’e как loginprocessingurl(), но логика которая внутри этого мапинга не отрабатывает, но логин происходит
loginprocessingurl() указывает адрес, на котором spring security повесит свой обработчик логина, соответственно он его обработает и никакой маппинг его не поймает
источник