|
Async Servlets
|
|||
---|---|---|---|
#18+
Привет котаны-бротаны! 1) Кто использовал сабж? Какие выгоды получили? 2) Асинк-сервлет == Async IO ? 3) Какие сервера поддерживают (JBoss, Tomcat, Jetty e.t.c) 4) Технологии Java(jakkarta)EE? Весенний ботинок spring-boot? С пятницей вас. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 00:18 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Тематически связный документ JSR-000340 JavaTM Servlet 3.1 Final Release for Evaluation https://download.oracle.com/otndocs/jcp/servlet-3_1-fr-eval-spec/index.html ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 15:00 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Один сниппет. Код: java 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 17:12 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, Понед попробую сделать демку. Но там же для тестов jMeter еще( Его я не юзал. Попробуем. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 18:13 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Хм... привычным движением руки приподнял версию jetty с девятки до одинадцатки (там между ними какие-то нестабильные были и сломал хороший конструктор. pom.xml Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 21:20 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, А как мавеном все очистить иивернуть взад) если нет веба на машинке? Он вместо очистки на clear лезет в веб собака? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 21:34 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton Какие выгоды получили? Глубокий разбор темы от Viacheslav Kolbasin: ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 21:43 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton Один сниппет. Код: java 1. 2. 3. 4.
Сейчас вроде как все сидят на REST под spring фреймворком редко где нужен сервлет. На спринге просто ставишь опцию @Async и вроде как все. https://www.baeldung.com/spring-async Последний раз юзал когда надо было грузить большие файлы в блобсторе. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 22:06 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, А как мавеном все очистить иивернуть взад) если нет веба на машинке? Он вместо очистки на clear лезет в веб собака? Есть offline mode. Тяпничная подготовка к работе на дому (ворчалка) Но если maven полез в веб - то значит ему не хватает какой-то dependency и ее все равно надо скачать. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 22:16 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
В продолжение апргейде версии jetty. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86.
Код: java 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 22:19 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Вот еще презентация по теме https://www.slideshare.net/SimoneBordet/servlet-31-async-io Здесь возможно есть ответ на мой вопрос. 2) Асинк-сервлет == Async IO ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2020, 23:19 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, Да без разницы IO это или нет. Разрабы сей фичи жалеют потоки контейнера или веб сервера. Их типо всего 200 штук и надо экономнее. Побыстрее освобождать. Хотя причем тут прогеры? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 00:21 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Это ... какой-то лютый 3.14дец. Вот бранч jetty-10.0.x проекта jetty.project. Стоит в конструкторе нормальный сервлет. Код: java 1. 2. 3. 4. 5. 6. 7.
Вот мастер бранч. Он-же синоним одинадцатки. Какой-то штопаный кондом заменяет нормальный сервлет на import jakarta.servlet.Servlet; Код: java 1. 2. 3. 4. 5. 6. 7.
Да у меня чуть глаза не лопнули. Я вглядывался почему не компилируется. Туловище конструктора не меняется но компиллятор не видит нужную перегрузку. Ладно. Сойдем на десятку. Чорт с ним. Это поинт к тому чтоб не гнаться за модой. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 00:28 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, асинхронные сервлеты счас выглядят как велосипед - всё просто решается через websocket. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 14:25 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Какую связь ты увидел между WebSockets и темой топика? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 16:04 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton Какую связь ты увидел между WebSockets и темой топика? но вопрос применения этих асинхронных штук интересен. а также есть вопрос - не есть ли это нечто похожим на http2 ? про которое уже есть статьи про фактически нулевой эффект от использования... ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 16:12 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Ты - практик? Познаешь мир через физические эксперименты. Я - тоже такой. Но хоть иногда надо открывать нормативные доки чтоб синхронизировать своё миро-восприятие с тем как это видят разработчики фреймворков и технологий которые ты же используешь. В документе под названием Java Servlet Spec Version 3.1 нет вообще ни слова про WebSockets. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 16:38 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя но вопрос применения этих асинхронных штук интересен. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 17:39 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton В документе под названием Java Servlet Spec Version 3.1 нет вообще ни слова про WebSockets. PetroNotC Sharp вадя но вопрос применения этих асинхронных штук интересен. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 17:56 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя жду мнения. Увы. Выше сказали что сервлеты используют единицы. А в спринге просто ставим @Async. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 18:13 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp А в спринге просто ставим @Async. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 18:42 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Немного переделал с WebAppContext, но что-то не стартует. (Не хочу использовать все эти уродские web.xml). Думаю что базовогООП и композиции достаточно чтоб сделать все конфигурационные шаги. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56.
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 20:11 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton Не хочу использовать все эти уродские web.xml ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 20:20 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Я с вашего позволения попробую. Предыдущий вариант работал хотя сервлеты были ущербны без конфигов. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 20:25 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Добавил. Вроде работает. Код: java 1.
И правильно отрабатывает таймауты. Полезная фича кстати. 5 секунд. Код: java 1.
Лог. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
С таймаутом в 20 секунд. Код: java 1.
Лог Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Мой пример является просто копи-пастой отсюда https://www.journaldev.com/2008/async-servlet-example . Я только адаптировал под Jetty и добавил человеческое логгирование. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2020, 20:35 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton И правильно отрабатывает таймауты. Полезная фича кстати. А вот кто и почему вызвал таймаут при sleep 20сек я не понял ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 12:39 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton Мой пример является просто копи-пастой отсюда Ты делаешь его работу. Он скилы повышать не хочет. Постарел. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 12:43 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Вопрос по спринг буту стартеру в консоли. - как сделать чтобы сообщения от бд русскими не были крякозяблами? - как увеличить скроллинг консоли в винде? На одной машинке вверх листает много. На другой мало. Где настройка? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 12:46 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp с вади тебе 100грамм. Ты делаешь его работу. Он скилы повышать не хочет. Постарел. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 12:54 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя мне вадя моё Иди к себе с миром. Тут обсуждение более широкое про асинхронность, и для всех! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 12:59 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton Мой пример является просто копи-пастой отсюда Ты делаешь его работу. Он скилы повышать не хочет. Постарел. Я делаю свою собсвтенную работу. В частности это перекликается с топиком https://www.sql.ru/forum/1331028/sredovyy-rsync-cherez-http ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 14:04 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, Вот это вроде настройка должна работать AsyncContext asyncCtx = request.startAsync(); asyncCtx.addListener(new AppAsyncListener()); asyncCtx.setTimeout(12000); ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 14:26 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton Я делаю свою собсвтенную работу. В частности это перекликается с топиком https://www.sql.ru/forum/1331028/sredovyy-rsync-cherez-http позволяет сравнивать и структуры баз и сами данные и заливать из одной базы в другую разницу ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 15:01 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя mayton Я делаю свою собсвтенную работу. В частности это перекликается с топиком https://www.sql.ru/forum/1331028/sredovyy-rsync-cherez-http позволяет сравнивать и структуры баз и сами данные и заливать из одной базы в другую разницу Хочешь лишить меня мотивации таким дешевым способом? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 15:12 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, )) Вадя, а почему играют в футбол или шахматы)))) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 15:48 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton Хочешь лишить меня мотивации таким дешевым способом? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 16:07 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя, Что ЭФФЕКТИВНЕЕ, вкладывать в знания или в недвижимость? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 16:20 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя mayton Хочешь лишить меня мотивации таким дешевым способом? Я отвечу на твой вопрос чуть позже в топике http-rsync. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 16:49 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Что ЭФФЕКТИВНЕЕ, вкладывать в знания или в недвижимость? а будет это недвижимость или знания - в каждом конкретном случае - надо оценивать по конкретному месту. я предложил вариант, могу ещё сказать что mayton В частности это перекликается с топиком https://www.sql.ru/forum/1331028/sredovyy-rsync-cherez-http но это предложения - ТС может их рассматривать, может пропустить мимо. меня вот это 22246687 направило в хорошем направлении. причём это была не "рыба".... а опыты тутошние - взяты на заметку... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 16:50 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя ЭФФЕКТИВНЕЕ вкладывать в то что принесёт большую выгоду. а будет это недвижимость или знания - в каждом конкретном случае - надо оценивать по конкретному месту. Значит ты согласился что эффектичнее/выгоднее надо решать по месту. Не по твоему, вадя заднему месту, а по месту васи или пети. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 16:56 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Sergunka Сейчас вроде как все сидят на REST под spring фреймворком редко где нужен сервлет Говорят спринг бут с 2.0 web разъехался на servlet и reactive. Вплоть до import org.springframework.boot.autoconfigure.web разъехались по пакетам org.springframework.boot.autoconfigure.web — .servlet и .reactive; )))) Смогут ли силком затянуть в реактивное Всех - большой вопрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 17:10 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Смотрю на форум. Такое ощущение что нас 3 человека осталось. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 17:20 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, А пофиг. Все на самизоляции сидят. А меня работать заставлят) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 17:23 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton вадя пропущено... ну тут вопрос не только в мотивации - а больше в эффективности. а свои мотивации пустить на то чего еще не сделано у других Я отвечу на твой вопрос чуть позже в топике http-rsync. Типа так 22247839 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 18:23 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя mayton Какую связь ты увидел между WebSockets и темой топика? но вопрос применения этих асинхронных штук интересен. а также есть вопрос - не есть ли это нечто похожим на http2 ? про которое уже есть статьи про фактически нулевой эффект от использования... вебсокет идет перпендикулярно асинк сервелетам Для долгих задач блокирующих поток асинк сервлеты позволяют освободить эти самые общие потоки. Чаще всего какие либо долгие задачи выполняющиеся. Ну вот Сергунька привел пример с блобами,я пользовал их для генерации xslt отчетов ибо они(apache poi) не стримабл (хотя в последней версии уже стримабл но не понятно наксколько стримы настроящие). Выделили пул потоков 10 в томкат, запустили генерацию отчетов 10 пользователей и все, сервер ушел в несознанку, даже для сервлета hello world. По сути просто более тонкое управление потоками, одни для сложных/долгих/блокирующих задач, другие для общих. Можно для них отдельный pool настроить и отбивать запросы если перегрузка идет, при этом обычные запросы будут дальше работать не мешая общей доступности сервера. http2 идет перпендикулярно первым, если пользоваться curl то эффект действиетльно нулевой но у некоторых сценариев прирост есть (тебе неважно, а у некоторых счета за электирочество/amazon/azure уходит ежемесячно больше чем тебе заработать за жизнь) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 20:57 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
По веб-сокетам можем поднять отдельную тему. Только задайте свои вопросы чтоб был какой-то смысл. И я тоже там кое-чего спрошу. Вообще меня интересует эмуляция полноценного браузера в Java с поддержкой localStorage, IndexedDb. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 21:28 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
lleming http2 идет перпендикулярно первым, если пользоваться curl то эффект действиетльно нулевой но у некоторых сценариев прирост есть (тебе неважно, а у некоторых счета за электирочество/amazon/azure уходит ежемесячно больше чем тебе заработать за жизнь) mayton Вообще меня интересует эмуляция полноценного браузера в Java с поддержкой localStorage, IndexedDb. mayton По веб-сокетам можем поднять отдельную тему. Только задайте свои вопросы чтоб был какой-то смысл. И я тоже там кое-чего спрошу. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 22:05 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
lleming Выделили пул потоков 10 в томкат, запустили генерацию отчетов 10 пользователей и все, сервер ушел в несознанку, даже для сервлета hello world. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 22:07 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя mayton Вообще меня интересует эмуляция полноценного браузера в Java с поддержкой localStorage, IndexedDb. Нужно программно пройти автентификацию через систему которая это использует. Больше рассказать не могу ибо NDA. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 22:44 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
lleming, А почему выделили 10 потоков? Там вроде по умолчанию 200 идет? Без всякой асинхронности. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 23:20 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя lleming Выделили пул потоков 10 в томкат, запустили генерацию отчетов 10 пользователей и все, сервер ушел в несознанку, даже для сервлета hello world. Причина? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 23:22 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, к меня прекрасно работало только порядок не нравился. колом не вставало. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 23:30 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя PetroNotC Sharp, к меня прекрасно работало только порядок не нравился. колом не вставало. Смешно авторпроблема в том , что пока не отрабоает первые клиент - второй не получает сообщение эти 20 сек, У вади это не "колом" ... |
|||
:
Нравится:
Не нравится:
|
|||
14.12.2020, 23:37 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp У вади это не "колом" то , что оно не удовлетворяет меня - это мои проблемы, которые я решил запуском методов в отдельных потоках. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 06:56 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя PetroNotC Sharp У вади это не "колом" то , что оно не удовлетворяет меня - это мои проблемы, которые я решил запуском методов в отдельных потоках. Последнее что ты высказал это удивление на слове контейнер. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 07:42 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp lleming, А почему выделили 10 потоков? Там вроде по умолчанию 200 идет? Без всякой асинхронности. Это для примера. Если там 200 потоков и 2000тыс пользователей?. Просто пример из жизни сервлет делал http (блокирующий) запрос на сторонний сервер в какой то момент тот сторонний сервер заклинило, стал медленно отвечать. На основном томкате быстро были выбраны все потоки и сервер ушел в несознанку. Все стоят ждут. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 10:15 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
вадя PetroNotC Sharp У вади это не "колом" то , что оно не удовлетворяет меня - это мои проблемы, которые я решил запуском методов в отдельных потоках. Bad сектора на диске это нормальное поведение с точки зрения системы ведь там crc предусморено, и в ram ошибки тоже нормально ведь есть же ecc. А с точки зрения пользователя это ненормально. Когда получается сервер ту бизи при открытии основной страницы если соседний пользователь/и отчетку запустил/и. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 10:22 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
lleming, >2000тыс пользователей?. Да, это понятно. Но ведь второй пул от программиста а не от контейнера тоже не безграничен. Тоже 200 запросов? Ведь тоже встанет. Не? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 10:51 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp lleming, >2000тыс пользователей?. Да, это понятно. Но ведь второй пул от программиста а не от контейнера тоже не безграничен. Тоже 200 запросов? Ведь тоже встанет. Не? Я подчеркнул что главное это разделить нагрузку и дать возможность регулировать. Есть разного приоритера запросы, запросы создают разную нагрузку в разы и соотвественно нужно как то этим управлять. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 11:05 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
lleming, Да. Спс за мысли. Меня лично очень интересует ругулировки и выбор двух вариантов - поставить контейнеру 400 maxThreadPool и код не менять Или - менять код и ставить костыли для потоков Приложения с maxThreadPool Один фиг общее число потоков считается одинаковым в сумме) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 11:21 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
Смысл КМК в разделении. Tomcat предоставляет коробочный пул для исполнения doGet/doPost хендлеров. Но для долгоиграющих запросов разраб делает свой пул (например на 20 потоков) и привязывает их к "специфичному железу" или софту. Там - он хозяин. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 11:22 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp lleming, Да. Спс за мысли. Меня лично очень интересует ругулировки и выбор двух вариантов - поставить контейнеру 400 maxThreadPool и код не менять Или - менять код и ставить костыли для потоков Приложения с maxThreadPool Один фиг общее число потоков считается одинаковым в сумме) Я привел пример реальный из жизни. Блокирующий запрос на сторонний сервис,если стороннему серверу плохо то основному тоже становится плохо. Если сторониий сервис перезагружается то потоки на основном виснут на connection timeout . Основной сервер начинает выкидывать отказ в обслуживании. Основной сервис не копия стороннего просто часть данных определенная функция на стороннеи сервере но проблемы на нем могут полностью парализовать работу основного. Если сторониий сервис гарантировано стабильный то добавить можно потоков и вроде как все. Если гарантий нет ( т.е. не свое) то могут быть проблемы. Тоже случай из жизни сторонний сервис был за reserve proxy nginx (а там админ упоротый поставил древнющий nginx без http1.1 и настроил хитро iptables) . То есть после цикла запроса ответ сторонний сервис не разрывал соединение а игнорировал.На основном потоки забивались и ждали connection timeout 3min. То есть основной сервер забивал за 30с все потоки, потом 2m30s шел отказ в обслуживании, после сокеты в apache http clietn connetion pool пересоздавались и сервер работал еще 30с и т.д. С админом проблема так и не решилась. Пришлось временно выписывать 2000тыс потоков томкату и переписывать приложение немного. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 11:38 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, Все замечательно, только J2EE стандарт не дает каждому приложению вида записная книжка создавать пул потоков. И держать его даже если ни один запрос не пришел. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 11:47 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
lleming, Тут согласен. Пул потоков от сервера, он честный)))). Если внутри наш вызывает порно сайт условно тормозящий, то он честно выдаст отказ. А если пул вручную в приложении, то я смогу скрыть отказ на...... "простите нет данных и непонятно почему". авторЕсли сторониий сервис гарантировано стабильный то добавить можно потоков и вроде как все. Если гарантий нет ( т.е. не свое) то могут быть проблемы. +1 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 11:59 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Все замечательно, только J2EE стандарт не дает каждому приложению вида записная книжка создавать пул потоков. И держать его даже если ни один запрос не пришел. С тех пор как пояился Spring со встраиваемым веб-контейнером - мы живем 100% игнорируя J2EE, хотя и поддерживая некоторые части стандарта. Иногда. И если кто-то живет всегда по требованиям J2EE - расскажите как вы живете? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 12:08 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, Я не против обоих платформ. Вот есть в спринг бут такая ручка server.tomcat.threads.max На собесе могут спросить - зачем это? Вот я и интересуюсь)))) Это ведь спринг. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 12:14 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Я не против обоих платформ. Вот есть в спринг бут такая ручка server.tomcat.threads.max На собесе могут спросить - зачем это? Вот я и интересуюсь)))) Это ведь спринг. Это чтобы нажимая кнопку F5 в браузере случайный пользователь не за-DDOS-ил систему. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 12:20 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
mayton, Нееее. Это штатный нагрузочный параметр. Мин/макс ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 12:28 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Я не против обоих платформ. Вот есть в спринг бут такая ручка server.tomcat.threads.max На собесе могут спросить - зачем это? Вот я и интересуюсь)))) Это ведь спринг. ага а могут спросить зачем это если у нас undertow или jetty ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 12:50 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
lleming, А jetty вроди поделка школьников. Не? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 12:56 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp lleming, А jetty вроди поделка школьников. Не? Не пользовался. Но и у томкат были тяжелые времена когда чуть ли не без ментейнеров остался и вебсокеты сначала был thirdparty solutuin пока "сами" не переписали. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 14:07 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
PetroNotC Sharp lleming, А jetty вроди поделка школьников. Не? Делает eclipse foundation. И у меня есть тайное подозрение что это просто тестовая площадка где IBM обкатывает разные идеи и потом затаскивает их к себе и продает за денежки... За деньжЫщи. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 14:20 |
|
Async Servlets
|
|||
---|---|---|---|
#18+
С другой стороны выбор серверов есть. В шарпе вообще всего один и тот скороспелка. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 14:25 |
|
|
start [/forum/topic.php?all=1&fid=59&tid=2120579]: |
0ms |
get settings: |
8ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
29ms |
get topic data: |
2ms |
get forum data: |
1ms |
get page messages: |
1154ms |
get tp. blocked users: |
0ms |
others: | 290ms |
total: | 1491ms |
0 / 0 |