Size: a a a

2020 March 11

Oℕ

Oleg ℕizhnik in pro.jvm
dima
про апи согласен, а вот разве встроенные сервлет-контейнеры не решили эту проблему?
зачем делать встроенные сервлет контейнеры, если можно сделать композируемый тип сервисов
источник

AE

Alexandr Emelyanov in pro.jvm
Oleg ℕizhnik
зачем делать встроенные сервлет контейнеры, если можно сделать композируемый тип сервисов
Сервлет не композируемый?
источник

Oℕ

Oleg ℕizhnik in pro.jvm
Alexandr Emelyanov
Сервлет не композируемый?
нет
источник

AE

Alexandr Emelyanov in pro.jvm
С чего бы?
источник

Oℕ

Oleg ℕizhnik in pro.jvm
сервлет - это коробка с логикой, мутирующей респонс, всё, что вы можете - это собрать пачку таких коробок и запускать их независимо согласно каким-то фильтрам
вы не можете в сервлете явно передать управление другому сервлету, сообщить, что не будете обрабатывать этот случай, потому что если у вы запускаете две мутации респонса подряд, вы не понимаете, кто какую часть выполнил, не получилось ли у вас в итоге каши в теле и заголовках ответа
поэтому не существует нормального способа композировать несколько сервлетов в один, только - фильтры
источник

Oℕ

Oleg ℕizhnik in pro.jvm
вот фильтры композируемы, но вы не можете порождать результат в фильтрах
источник

AA

Anton Arhipov in pro.jvm
Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶
винзипом 🌚
источник

NB

Nikita Bezverkhy in pro.jvm
привет
есть тут адепты spring-boot-starter-oauth2-resource-server?
решил мигрировать приложуху на эту либу (была spring-security-oauth2)
у меня есть GrpcAuthenticationInterceptor, в который инджектится DefaultTokenServices и делается tokenServices.loadAuthentication(token);
как проделать тоже самое в spring-boot-starter-oauth2-resource-server? TokenServices здесь нет
источник

AE

Alexandr Emelyanov in pro.jvm
Oleg ℕizhnik
сервлет - это коробка с логикой, мутирующей респонс, всё, что вы можете - это собрать пачку таких коробок и запускать их независимо согласно каким-то фильтрам
вы не можете в сервлете явно передать управление другому сервлету, сообщить, что не будете обрабатывать этот случай, потому что если у вы запускаете две мутации респонса подряд, вы не понимаете, кто какую часть выполнил, не получилось ли у вас в итоге каши в теле и заголовках ответа
поэтому не существует нормального способа композировать несколько сервлетов в один, только - фильтры
все это можно на сколько помню
источник

А

Артём Курилко in pro.jvm
Где же ты был раньше? Я уже зарегистрирован
источник

AE

Anton Ermak in pro.jvm
Привет. Вопрос такой, страдают ли уже созданные треды в Java thread pool от context switch? По идее же да, их нужно периодически будить чтобы давать задачи.
источник

А

Артём Курилко in pro.jvm
Кстати есть удобная библиотека binance под java, если кому интересно в поиске сразу найдете
источник

AE

Anton Ermak in pro.jvm
Anton Ermak
Привет. Вопрос такой, страдают ли уже созданные треды в Java thread pool от context switch? По идее же да, их нужно периодически будить чтобы давать задачи.
То есть имеет ли здесь место проблема производительности, если thread pool имеет тысячи тредов в idle, но при этом 10-20 только running
источник

МК

Максим Калашников in pro.jvm
Anton Ermak
То есть имеет ли здесь место проблема производительности, если thread pool имеет тысячи тредов в idle, но при этом 10-20 только running
имеет
источник

AE

Anton Ermak in pro.jvm
При этом java.lang.Thread.State: TIMED_WAITING у них. По идее их не должно шедулить в os на равне с RUNNABLE
источник

AS

Aleksey Shipilev in pro.jvm
TIMED_WAITING же на локах стоят и ждут, их никто шедулить не будет
источник

AS

Aleksey Shipilev in pro.jvm
другое дело, если корявая реализация/конфигурация пула будет вечно будить новые треды, вместо того, чтобы использовать уже исполняющиеся
источник

AE

Anton Ermak in pro.jvm
Или если timeout слишком мал? На ожидание.
источник

DS

D & S in pro.jvm
А зачем вообще нужен пулл на тысячи тредов?
источник

AE

Anton Ermak in pro.jvm
D & S
А зачем вообще нужен пулл на тысячи тредов?
Это же совсем другая история, он там не нужен.
источник