|
|
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Задача cледующая: Есть сервлет(он же контроллер в спринге) внутри него пишется Код: java 1. То есть отправили сообщение в некую систему. id нужен для идентификации ответа. система внешняя отвечает асинхронно. то есть в другом потоке есть infinite lool внутри которого выполняется Код: java 1. 2. тут мы можем сматчить запрос и ответ. Как это сделать в спринге? в сервлетах насколько я понял можно просто asyncContext закидывать в мапу и когда ответ пришёл - вытаскивать из мапы и обрабатывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2017, 14:12 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Опять не понимаю - зачем отдельный поток и асинхронность, если до получения ответа от внешней системы вам всё равно нечего делать? Что мешает ждать ответа в основном потоке запроса??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2017, 20:11 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovОпять не понимаю - зачем отдельный поток и асинхронность, если до получения ответа от внешней системы вам всё равно нечего делать? Что мешает ждать ответа в основном потоке запроса??? Таких запросов может быть много. Асинхронность это данность. Так устроена внешняя система. Хотите сказать, что асинхронные сервлеты не нужны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2017, 01:41 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questionerтут мы можем сматчить запрос и ответ. Как это сделать в спринге? в сервлетах насколько я понял можно просто asyncContext закидывать в мапу и когда ответ пришёл - вытаскивать из мапы и обрабатывать. Почитайте про Spring-integration... может поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2017, 08:16 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questionerТаких запросов может быть много.Ясен перец, что их будет много. Сколько клиенты навялят - столько и будь. Вас это каким боком касается, если не вы пишите контейнер, в котором работает ваше приложение.Асинхронность это данность. Так устроена внешняя система.И? В каком месте возникла необходимость отдельного потока, если вам всё равно ждать ответ внешней системы?Хотите сказать, что асинхронные сервлеты не нужны?Не все нужные вещи надо пихать затычками в разные неподходящие места. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2017, 19:15 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovВ каком месте возникла необходимость отдельного потока, если вам всё равно ждать ответ внешней системы? Синхронные сервлеты: Пускай конетйнер даёт 200 потоков а нам пришло сразу 500. итого 200 потоков успешно отослали запрос во внешнюю систему висят. 300 потоков висят, ждут места в тредпуле. асинхронные сервлеты: приняли запрос от системы, положили в мапу, поток свободен. с другой стороны имеем 1 поток, который разгребают асинхронные ответы и отвечают клиентам(пишут в респонс через асинк контекст) Таким образом все 500 потоков сразу отослали запрос во внешнюю систему. Мне кажется разница очевидна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 11:11 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
"Сын церкви прекращает спор" (ц) Э.Л.Войнич, "Овод". Про предположение, которое мать всех провалов - уже оскомину набило. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 11:20 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
А конечно все понимаю, но вроде если тему данного топика забить в гугле, ответ находится за 2-3 мин. Например http://spring.io/blog/2012/05/07/spring-mvc-3-2-preview-introducing-servlet-3-async-support Вроде совершенно нормальным английским языком по белому (прошу извинение у тех, у кого другая цветовая палитра в ОС) написано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 11:44 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov"Сын церкви прекращает спор" (ц) Э.Л.Войнич, "Овод". Про предположение, которое мать всех провалов - уже оскомину набило. Неконструктивно, я ведь написал вам разницу от и до. С чем Вы конкретно не согласны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 12:11 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev, спасибо, я кучу раз был на этой линке, но не видел её. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 12:12 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questionerспасибо, я кучу раз был на этой линке, но не видел её. Спасибо за ответ. Не поверишь, я тоже при чтение это не заметил ))) Но я между строк читал, т.к. Spring'а не знаю / не использовал. Зато в разделе Motivation в статье все по полочкам разложено, зачем и почему асинх. сервлеты нужны. IMHO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 12:23 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Кстати из той же ссылки http://spring.io/blog/2012/05/07/spring-mvc-3-2-preview-introducing-servlet-3-async-support In other cases, where the result is required, we need to decouple processing from the Servlet container thread or else we'll exhaust its thread pool. Servlet 3 provides just such support where a Servlet (or a Spring MVC controller) can indicate the response should be left open after the Servlet container thread is exited. То, что я написал, только на буржуйском ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 14:03 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questioner, в прошлой теме вроде разобрали, что в веб проектах транзакции короткие 0,1 сек. И тормозить сервлет каким то кодом странно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 14:20 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questioner, если вы в прошлой теме не написали ни строки кода: Зачем нужны фичи servlet 3.0/3.1 ? то зачем начинать новую со спрингом? Ведь всё что может спринг, можно решить и без него. Это просто "клей", как тут говорят профи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 14:50 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Petro123questioner, в прошлой теме вроде разобрали, что в веб проектах транзакции короткие 0,1 сек. И тормозить сервлет каким то кодом странно. Авторитетно мнение, конечно, у всех прям 0.1 А у меня вот 1 минута и это даже не транзакция. а тема новая потому, что вопрос более конкретный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 17:28 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questionerАвторитетно мнение, конечно, у всех прям 0.1 выделяю для тебя ключевое слово. Чтобы не отвлекался. автор в веб проектах транзакции короткие 0,1 сек. автора тема новая потому, что вопрос более конкретный. questionerА у меня вот 1 минута и это даже не транзакция. Предложение решить эту тему в Вашей прошлой теме. А потом уже в спринге. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2017, 18:19 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Petro123выделяю для тебя ключевое слово. Чтобы не отвлекался. автор в веб проектах транзакции короткие 0,1 сек. А меня веб проект. В любом случае в ответ на вопрос говорить, что забей, тебе это не надо как-то глупо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2017, 16:35 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questionerС чем Вы конкретно не согласны?Это не укладывается в вашу картинку мира и поэтому недоступно вашему разумению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2017, 20:28 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questionerВ любом случае в ответ на вопрос говорить, что забей, тебе это не надо как-то глупо. я не сказал глупо. Я сказал что тебе дали ссылку на демку чата на асинхронных сервлетах. Ты ноль реакции и завёл новую тему опять про бла бла бла. Т.е. тебе не нужно решение задачи. Только удовлетворение своих мыслей про потоки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2017, 21:40 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questioner, Ведь на самом деле всё просто. Если проект высоконагружен, то делают максимальный параметр количества потоков maxThreads=300 Потом увеличивать бесполезно. Просто добавляют ещё томкат)). Это проекты _Веб_ у которых по 3000 запросов в сек. Ты полез в какой то спринг. Зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2017, 21:55 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
questioner, Ещё один пример. Есть высоконагруженный проект. Самое медленное звено - запросы к базе. Что будет делать questioner? Будет перетирать 2 ветки про потоки и добавлять потоки. Что делают 99,9 остальных процентов? Добавляют кеш один, два или три. И ответ БД будет моментальным. ... Это закон веб проектов - минимальные транзакции для горизонтального масштабирования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2017, 22:09 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
конкретика Код: plaintext 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. результаты Код: plaintext 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. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2017, 22:12 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
ещё вариант Код: plaintext 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. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2017, 22:45 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Petro123questioner, Ещё один пример. Есть высоконагруженный проект. Самое медленное звено - запросы к базе. Что будет делать questioner? Будет перетирать 2 ветки про потоки и добавлять потоки. Что делают 99,9 остальных процентов? Добавляют кеш один, два или три. И ответ БД будет моментальным. ... Это закон веб проектов - минимальные транзакции для горизонтального масштабирования. У меня нет БД. Зачем Вы мне всё это пишете? я спросил про одно, Вы отвечаете мне на другой вопрос? У меня асинхронный сервис, который является кластером. При асинхронных сервлетах поток работает меньше. Один человек только в тему ответил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2017, 22:59 |
|
||
|
Spring async servlets support
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov конкретика Код: plaintext 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. результаты Код: plaintext 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. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. Что это за бенчмарк? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2017, 23:01 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=69&tid=2122980]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
96ms |
get tp. blocked users: |
2ms |
| others: | 198ms |
| total: | 382ms |

| 0 / 0 |
