Size: a a a

2020 December 14

EF

Eugene Freeman in pro.jvm
Gerr Mes
Континуэшен останется на этом аксепте а реальный нативный поток "отцепится" и пойдёт другую работу делать

Поэтому вам и не нужны ни колбеки ни промисы ни реактивные стримы ни прочие костыли
"Континуэшен останется на этом аксепте а реальный нативный поток "отцепится" и пойдёт другую работу делать" а как где именно это произойдет? unpack ведь не вызовется из-за того что мы повисли
источник

GM

Gerr Mes in pro.jvm
Eugene Freeman
"Континуэшен останется на этом аксепте а реальный нативный поток "отцепится" и пойдёт другую работу делать" а как где именно это произойдет? unpack ведь не вызовется из-за того что мы повисли
https://cr.openjdk.java.net/~rpressler/loom/loom/sol1_part1.html

В разделе
"All your blocking are belong to us"

Как раз про ввод/вывод кратенько - общий принцип
источник

EF

Eugene Freeman in pro.jvm
да, это отвечает на мой вопрос, спасибо
источник

U

UsernameAK in pro.jvm
а можно ли как-то чисто в отладочных целях кинуть исключение если ReadWriteLock не заблокирован текущим потоком (или на чтение, или на запись)?
источник

Д

Данил in pro.jvm
D
источник

DZ

Dmitry Zvorygin in pro.jvm
Илья
Я хз что он знает и что нет. На мой вопрос он мне дал ответ что у нас много базистов, лично для меня это не аргумент. По этому суда и пошел за ответами. Лично я мало кому верю на слово что вот так надо и ни как иначе.
На самом деле, с точки зрения бизнеса это вполне себе аргумент
источник

DZ

Dmitry Zvorygin in pro.jvm
Если у них много ресурсов в виде .net инженеров, то проще и правильнее будет новый проект писать на .net, чем нанимать javистов, полгода оттягивать начало проекта, потом переделывать систему разворачивания проектов итд
источник

DZ

Dmitry Zvorygin in pro.jvm
Если много ресурсов в виде windows серверов, то логично что они не будут использовать докер итд
источник

DZ

Dmitry Zvorygin in pro.jvm
Я был на проекте с огромной репортинговой тулой, где большая часть кода была в виде plsql
источник

DZ

Dmitry Zvorygin in pro.jvm
Главное было правильно разграничить ответственность - что например ВСЯ логика должна быть в PLSQL, и что не надо подхачивать результат вывода PLSQL на джаве потом (в плане бизнес-логики)
источник

VA

Vladimir Alexeev in pro.jvm
Есть около 300 различных независимых друг от друга сервисов,  выполняющих несложную логику (в основном, обработка форм и передача данных в/из внешних систем). Необходимо реализовать их на Java и Spring Boot.

Проблема: если придерживаться классического монолита, при изменении одного сервиса потребуется перезапуск всего приложения (зная производительность бута при запуске, загрузка 300 модулей будет занимать очень много времени.) То же, вероятно, и при компиляции.

Варианты:

- Микросервисы
- Инструменты для hotswap, JRebel, например
- ???
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Vladimir Alexeev
Есть около 300 различных независимых друг от друга сервисов,  выполняющих несложную логику (в основном, обработка форм и передача данных в/из внешних систем). Необходимо реализовать их на Java и Spring Boot.

Проблема: если придерживаться классического монолита, при изменении одного сервиса потребуется перезапуск всего приложения (зная производительность бута при запуске, загрузка 300 модулей будет занимать очень много времени.) То же, вероятно, и при компиляции.

Варианты:

- Микросервисы
- Инструменты для hotswap, JRebel, например
- ???
Странный вопрос, на самом деле. Если сервисы уже есть и независимые, то зачем переписывать их на бут и тем более объединять в монолит?
источник

VA

Vladimir Alexeev in pro.jvm
Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶
Странный вопрос, на самом деле. Если сервисы уже есть и независимые, то зачем переписывать их на бут и тем более объединять в монолит?
Они сейчас реализованы на другом языке, возникла необходимость переписать их на джаве. В силу интерпретируемости PHP эта проблема неактуальна, на джаве все сложнее
источник

VA

Vladimir Alexeev in pro.jvm
Нельзя назвать их «сервисами» в чистом виде. Фактически, это один большой пхпшный монолит
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Vladimir Alexeev
Они сейчас реализованы на другом языке, возникла необходимость переписать их на джаве. В силу интерпретируемости PHP эта проблема неактуальна, на джаве все сложнее
Основное преимущество микросервисов - это как раз то, что их можно переписывать независимо друг от друга. Скажем, есть несколько наиболее нагруженных сервисов, начните с них, может остальные и не понадобится трогать
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Vladimir Alexeev
Нельзя назвать их «сервисами» в чистом виде. Фактически, это один большой пхпшный монолит
Ну, начните тогда выделять эти сервисы в отдельные приложения
источник

VA

Vladimir Alexeev in pro.jvm
Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶
Основное преимущество микросервисов - это как раз то, что их можно переписывать независимо друг от друга. Скажем, есть несколько наиболее нагруженных сервисов, начните с них, может остальные и не понадобится трогать
Да, но такое количество микросервисов будет довольно трудно сопровождать, и у нас сейчас нет достаточных ресурсов для этого. Микросервисы - это крайний вариант, за неимением достойных альтернатив
источник

L

Loljeene in pro.jvm
А их вот прям реально 300? Или все же то что сейчас это не совсем микросервисы и их можно объединить логически?
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Vladimir Alexeev
Да, но такое количество микросервисов будет довольно трудно сопровождать, и у нас сейчас нет достаточных ресурсов для этого. Микросервисы - это крайний вариант, за неимением достойных альтернатив
Переписывать монолит с пхп на монолит на жабе - это точно не достойная альтернатива
источник

DP

Denis Pavlyuchenko in pro.jvm
Vladimir Alexeev
Есть около 300 различных независимых друг от друга сервисов,  выполняющих несложную логику (в основном, обработка форм и передача данных в/из внешних систем). Необходимо реализовать их на Java и Spring Boot.

Проблема: если придерживаться классического монолита, при изменении одного сервиса потребуется перезапуск всего приложения (зная производительность бута при запуске, загрузка 300 модулей будет занимать очень много времени.) То же, вероятно, и при компиляции.

Варианты:

- Микросервисы
- Инструменты для hotswap, JRebel, например
- ???
еще. как довольно необычный вариант - реализовывать логику на груви скриптах, если это возможно, а на джаве написать только движок для этого
источник