Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4] 5   вперед  Ctrl      все
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Герой дня
Member

Откуда: obmanula.ru
Сообщений: 30529
Tsyklop
Petro123
С памятью проблема?
1. AJAX
2. Как юзверь без ГУИ добавляет сайт?
3. Настройки либы по таймауту.
..
Бездельник блин.


1. что AJAX? не пойму. Если вопрос про использование, то конечно он используется.
2. Не юзвер без ГУИ, а сервак без ГУИ делат скрин сайта. Клиент вводит url своего сайта и нажимает на кнопку "сохранить". Сервак принимает урл и делает скрин по переданному урлу, предварительно сделав проверки.
3. Уже пробовал. И сколько мне ставить, 3 секунды? что бы запрос не был слишком долгим. Допустим поставлю timeout 30 секунд. Зачем мне не до конца загруженный сайт?


30 секунд - это много
сделай очереди через Spring Cloud Stream
если больше 30 секунд - клади обратно в очередь задание (ID строки из БД с параметрами задания - типа, урл, пользователь и тп)

скриншоты делай отдельным приложением с внутренностями SWT браузера, который чисто качает урл, выполняет JS, делает скриншот и сохраняет куда надо
28 янв 19, 18:21    [21796154]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1008
Petro123
Tsyklop
блочить юзера.
доказывай. Если инженер.

После добавления сайта сервак вернет клиенту инфу о том что сайт успешно добавлен. ВО время добавления будет создана задача для планировщика и все. Ответ клиенту ушел - он дальше серфит по сайту и не ждет пока сделается скрин (При чем на разных сайтах может быть разное кол-во времени загрузки. У меня phantomjs google.com.ua грузит за считанные секунды, а вот stackowerflow я ждал около минуты что бы весь процесс добавления сайта, от клика на кнопку сохранить, до ответа клиенту пройдет). В то время как клиента серфит по сайту дальше, планировщик срабатывает, видит что есть задача на скрин. Он ее делает (При этом не мешая клиенту серфить) и обновляет скрин у сайта в бд. И потом когда клиент обновит список сайтов будет уже не заглушка, а нормальный скрин.
28 янв 19, 18:24    [21796158]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1008
Герой дня
30 секунд - это много
сделай очереди через Spring Cloud Stream
если больше 30 секунд - клади обратно в очередь задание (ID строки из БД с параметрами задания - типа, урл, пользователь и тп)

скриншоты делай отдельным приложением с внутренностями SWT браузера, который чисто качает урл, выполняет JS, делает скриншот и сохраняет куда надо


на счет SWT браузера можно подробнее, пожалуйста? может ссылочка есть.
28 янв 19, 18:25    [21796159]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1008
Герой дня, там обязательно ГУИ? мне без гуи надо.
28 янв 19, 18:26    [21796160]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
После добавления сайта сервак вернет клиенту инфу о том что сайт успешно добавлен. ВО время добавления будет создана задача для планировщика и все. Ответ клиенту ушел - он дальше серфит по сайту и не ждет пока сделается скрин
не понял.
А при команде на сервлет по AJAX нельзя серфить?
Напиши что будет не так.
28 янв 19, 19:30    [21796195]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
вот stackowerflow я ждал около минуты что бы весь процесс добавления сайта, от клика на кнопку сохранить, до ответа клиенту пройдет).
зачем ждать ответ в асинхронном режиме?
AJAX буква A. это не надо ждать))))
28 янв 19, 19:33    [21796198]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop,
Может у тебя POST был?
Я на первой станице спрашивал, знаешь ли ты принципы веб?
28 янв 19, 19:35    [21796199]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1008
Petro123
зачем ждать ответ в асинхронном режиме?
AJAX буква A. это не надо ждать))))

HTTP: запрос - ответ. AJAX средство что бы сделать запрос не замораживая при этом UI. HTTP работает как запрос - ответ. а не запрос - ... Если уже такая история то зачем HTTP?
28 янв 19, 20:03    [21796215]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1008
Petro123
Tsyklop,
Может у тебя POST был?
Я на первой станице спрашивал, знаешь ли ты принципы веб?

Знаю, не сомневайся. POST конечно. Не GET же и тем более не PUT.
28 янв 19, 20:04    [21796216]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1008
Petro123
не понял.
А при команде на сервлет по AJAX нельзя серфить?
Напиши что будет не так.

Ну например когда делался скрин что-то пошло не так. Запрос закончился. че дальше? как скрин сделать? у человека не будет скрина сайта? + ко всему если мы игнорим ответ то клиент не узнает о том что скрин не удался...
28 янв 19, 20:06    [21796218]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Petro123
Tsyklop
После добавления сайта сервак вернет клиенту инфу о том что сайт успешно добавлен. ВО время добавления будет создана задача для планировщика и все. Ответ клиенту ушел - он дальше серфит по сайту и не ждет пока сделается скрин
не понял.
А при команде на сервлет по AJAX нельзя серфить?
Напиши что будет не так.

Где тут разговор об ошибках?
Кончай съезжать с темы что нельза заниматься серфингом.
В ГУИ пишешь что задание ушло на сервер и далее все одинаково.
Так?
28 янв 19, 20:52    [21796256]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 1008
Petro123
Где тут разговор об ошибках?
Кончай съезжать с темы что нельза заниматься серфингом.
В ГУИ пишешь что задание ушло на сервер и далее все одинаково.
Так?


Где я съехал с темы? Был вопрос "Напиши что будет не так." - я ответил.

Давай еще раз. Клиент вводит url своего сайта. Нажимает кнопку добавить. Запрос с урлом ушел на бэк. Сайт добавился. Клиенту вывело сообщение что сайт добавлен. На фоне этого я делаю запрос (с фронта) на бэк что бы тот сделал скрин сайта, ну и передаю урл. При этом клиент дальше продолжает серфить на сайте. Он не знает что сейчас на серваке делается скрин. В идеальном случае все ок, скрин успешно создался, в бд записался и юзер увидит его.

Так ты видишь воркфлоу?
28 янв 19, 20:59    [21796260]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
и не ждет пока сделается скрин
дак какие ошибки ты сюда притащил в топик и юз кейс?
28 янв 19, 20:59    [21796261]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Нажимает кнопку добавить.
ajax? Post?
28 янв 19, 21:01    [21796268]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
На фоне этого я делаю запрос (с фронта)
это Одна бизнес транзакция. И делается Одним запросом.
28 янв 19, 21:03    [21796270]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Tsyklop
Так ты видишь воркфлоу?
да. Только:
- запрос всего один, и Перед отправкой в ГУИ написать что ушло задание.
- больше ничего не делать и никаких task manager
28 янв 19, 21:06    [21796272]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Остался вопрос, зачем выше, ты что то там ждал минуту. И кто тебя заставил ждать.
28 янв 19, 21:08    [21796275]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
mayton
Member

Откуда: loopback
Сообщений: 40756
Tsyklop
Petro123
не понял.
А при команде на сервлет по AJAX нельзя серфить?
Напиши что будет не так.

Ну например когда делался скрин что-то пошло не так. Запрос закончился. че дальше? как скрин сделать? у человека не будет скрина сайта? + ко всему если мы игнорим ответ то клиент не узнает о том что скрин не удался...

Вместо скрина сохраняется плейсхолдер с крестиком. Типа что-то пошло не так.
Крестик - кликабельный. Типа обновить. Клиент кликает и создает еще раз задание
на отрисовку титула.
28 янв 19, 21:53    [21796302]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Герой дня
Member

Откуда: obmanula.ru
Сообщений: 30529
Tsyklop
Герой дня, там обязательно ГУИ? мне без гуи надо.


там не нужно гуи, в том-то и дело
28 янв 19, 23:30    [21796368]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Герой дня
Member

Откуда: obmanula.ru
Сообщений: 30529
Второй ответ:

https://stackoverflow.com/questions/13111424/having-the-swt-browser-render-its-output-to-an-image
28 янв 19, 23:35    [21796369]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
mayton
Member

Откуда: loopback
Сообщений: 40756
Вот может пригодится.

https://electronjs.org/docs/tutorial/offscreen-rendering
28 янв 19, 23:52    [21796375]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
lleming
Member

Откуда:
Сообщений: 1581
Герой дня
Второй ответ:

https://stackoverflow.com/questions/13111424/having-the-swt-browser-render-its-output-to-an-image


вроде как swt Html renderer это компонент который просто используется движок установленного браузера(причем на каждой ОС свой, ie на винде пострадает) для рендера на своем канвасе, и для этого нужно чтобы x11 стоял обязательно. phantomjs вроде рендерит во framebuffer и не требует x11 поэтому предпрочтительнее на сервере (помимом того чтотам движок хромовский более менее свежий и .... внезапно можно не только скрины в png но и в pdf делать)

хотя могу ошибаться (давно этим уже не занимался)
29 янв 19, 10:20    [21796534]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3207
Какой же беспровсетный п##дец в этом треде.
1. Tsyklop, лазить из сервера в недоверенные источники - западло, можешь рассказывать что угодно, что там твоя поделка в DMZ, AWS, еще хрен знает где - все равно западло
2. все что ты хочешь реализуется в пару строк кода:
  • @Async над методом, если нам насрать на консистентность
  • Пишем куда-то статус и делаем метод с @Scheduled чтобы он периодически проверял базу

    все, конец истории.
  • 29 янв 19, 10:40    [21796561]     Ответить | Цитировать Сообщить модератору
     Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 40756
    Я предлагаю закрыть топик. Беря во внимание практически полное отсутсвие реакции. Тема исчерпана.
    29 янв 19, 10:43    [21796566]     Ответить | Цитировать Сообщить модератору
     Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 1008
    mayton, какой такой реакции?
    29 янв 19, 11:02    [21796583]     Ответить | Цитировать Сообщить модератору
    Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 [4] 5   вперед  Ctrl      все
    Все форумы / Java Ответить