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

Откуда: Украина
Сообщений: 816
Есть задача. Нужно делать скрин сайта при его добавлении в систему.
Это можно делать при добавлении сайта, но это занимает время и не хочется заставлять клиента все это время ждать.

Появилась мысль делать это отложенно, то бишь при добавлении сайта создается таска на создание скрина. И через время какой-то механизм выполняет эту таску.

Как лучше такое реализовать и есть ли уже готовые инструменты для такого?
10 янв 19, 13:03    [21781507]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7396
Шедулер Windows или Linux.
10 янв 19, 13:08    [21781517]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7396
автор

C:\Program Files>at /?

The AT command schedules commands and programs to run on a computer at
a specified time and date. The Schedule service must be running to use
the AT command.

AT [\\computername] [ [id] [/DELETE] | /DELETE [/YES]]
AT [\\computername] time [/INTERACTIVE]
[ /EVERY:date[,...] | /NEXT:date[,...]] "command"

\\computername Specifies a remote computer. Commands are scheduled on the
local computer if this parameter is omitted.
id Is an identification number assigned to a scheduled
command.
/delete Cancels a scheduled command. If id is omitted, all the
scheduled commands on the computer are canceled.
/yes Used with cancel all jobs command when no further
confirmation is desired.
time Specifies the time when command is to run.
/interactive Allows the job to interact with the desktop of the user
who is logged on at the time the job runs.
/every:date[,...] Runs the command on each specified day(s) of the week or
month. If date is omitted, the current day of the month
is assumed.
/next:date[,...] Runs the specified command on the next occurrence of the
day (for example, next Thursday). If date is omitted, the
current day of the month is assumed.
"command" Is the Windows NT command, or batch program to be run.
10 янв 19, 13:10    [21781520]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Leonid Kudryavtsev, Мне надо запускать Java код. Он будет открывать браузер и делать скрин сайта. Без GUI. И после писать данные о файле в бд.
10 янв 19, 13:19    [21781540]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Да, я не уточнил. Мне надо запускать Java код. Он будет открывать браузер и делать скрин сайта. Без GUI (phantomjs). И после писать данные о файле в бд.

P.S. других средств сделать скрин без гуи не находил. может кто знает что-то другое подскажите.
10 янв 19, 13:20    [21781547]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
клиента все это время ждать.
принтскреен занимает время? Да ладно.
10 янв 19, 13:29    [21781566]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 15195
Tsyklop,

скрин экрана или скрин окна браузера? со всеми панелями меню и прочими индивидуальностями пользователя?
10 янв 19, 13:33    [21781570]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4785
Petro123
Tsyklop
клиента все это время ждать.
принтскреен занимает время? Да ладно.


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

Откуда: Ростов-на-Дону
Сообщений: 4785
Tsyklop, раз вы юзаете фантом, то и делайте им сайт превью:

https://www.codediesel.com/javascript/taking-website-screenshots-using-phantomjs/
10 янв 19, 13:38    [21781581]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3019
Tsyklop
Появилась мысль делать это отложенно, то бишь при добавлении сайта создается таска на создание скрина. И через время какой-то механизм выполняет эту таску.
Вообще если специально не заморачиваться, то смахивает на дыру, т.е. кто-то заводит сайт, в качестве URL указывает внутренний ресурс, а потом видит на скриншоте что там есть
10 янв 19, 13:47    [21781597]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Tsyklop
Есть задача. Нужно делать скрин сайта при его добавлении в систему.
Это можно делать при добавлении сайта, но это занимает время и не хочется заставлять клиента все это время ждать.

Появилась мысль делать это отложенно, то бишь при добавлении сайта создается таска на создание скрина. И через время какой-то механизм выполняет эту таску.

Как лучше такое реализовать и есть ли уже готовые инструменты для такого?

Тебе принципиално решать эту задачу на Java?
10 янв 19, 13:48    [21781599]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Озверин
Petro123
пропущено...
принтскреен занимает время? Да ладно.


сайт же должен загрузиться

Да. Примерно 1 сек. при добавлении в систему.
Долго?
10 янв 19, 13:52    [21781608]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Да. Примерно 1 сек. при добавлении в систему.
Долго?


Есть разные сайты. С разной скоростью загрузки. А если проблемы с инетом и т.д.
10 янв 19, 13:53    [21781613]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
mayton
Тебе принципиално решать эту задачу на Java?

Если есть другие варианты из которых я могу таске дать ссылку на сайт и id сайта из бд и что бы потом этот вариант смог записать в бд данные о файле и привязать к сайту, то окей.
10 янв 19, 13:55    [21781614]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
вадя
Tsyklop,

скрин экрана или скрин окна браузера? со всеми панелями меню и прочими индивидуальностями пользователя?

Скрин сайта. Открывается сайт в браузере и делается скрин именно сайта, без панелек и прочего. чисто сайт.
10 янв 19, 13:55    [21781616]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
[
Да. Примерно 1 сек. при добавлении в систему.
Долго?

у меня скрин экрана занимал примерно секунд 10-15, а то и до 30 доходило. Дело ж еще в том что сам драйвер нужно запустить.
10 янв 19, 13:56    [21781618]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Озверин
Tsyklop, раз вы юзаете фантом, то и делайте им сайт превью:

https://www.codediesel.com/javascript/taking-website-screenshots-using-phantomjs/

Ну так так и делается, только из джава кода.
10 янв 19, 13:57    [21781621]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Андрей Панфилов
Tsyklop
Появилась мысль делать это отложенно, то бишь при добавлении сайта создается таска на создание скрина. И через время какой-то механизм выполняет эту таску.
Вообще если специально не заморачиваться, то смахивает на дыру, т.е. кто-то заводит сайт, в качестве URL указывает внутренний ресурс, а потом видит на скриншоте что там есть

какой внутренний ресурс? к примеру.
10 янв 19, 13:58    [21781626]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop,
Не пойму. Как юзверь работает если его сайт грузится 20 сек?
Это конструктор сайтов?
10 янв 19, 14:09    [21781641]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
Petro123
[
Да. Примерно 1 сек. при добавлении в систему.
Долго?

у меня скрин экрана занимал примерно секунд 10-15, а то и до 30 доходило. Дело ж еще в том что сам драйвер нужно запустить.
конкретнее дай график загрузки по F12
10 янв 19, 14:11    [21781646]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3019
Tsyklop
какой внутренний ресурс? к примеру.
Пофиг какой, вид атаки известный: SSRF
10 янв 19, 14:13    [21781653]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Tsyklop,
Не пойму. Как юзверь работает если его сайт грузится 20 сек?
Это конструктор сайтов?

Нет. просто человек добавляет сайт в мою систему(предполагается что это владелец сайта). И если у него его же сайт грузит долго тот тут уже ничего не сделаешь.
10 янв 19, 14:24    [21781669]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Андрей Панфилов
Tsyklop
какой внутренний ресурс? к примеру.
Пофиг какой, вид атаки известный: SSRF

в моем случае таких ссылок нет. Ибо приложение не микросервисное (на данный момент). Как вариант можно запретить вводить айпишники, что бы залочить возможность стучатся в локальной сетке.
10 янв 19, 14:26    [21781675]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop,
Добавь ajax'ом и пусть продолжает играть крестики нолики.
Кто кого ждет?
10 янв 19, 14:27    [21781677]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Tsyklop,
Добавь ajax'ом и пусть продолжает играть крестики нолики.
Кто кого ждет?

Это и так будет происходить ajax-ом. Но пока запрос выполнится пройдет время. Доберусь домой засеку время (но на данный момент только локально на ПК. На рабочем сервере может быть дольше.)
10 янв 19, 14:30    [21781679]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop,
Контейнер сам создаст поток. Ферштеен?
10 янв 19, 14:46    [21781689]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4785
Tsyklop, тогда я проблему не понял.

Проблема в том, чтобы запустить отдельный поток? Или запустить js код из java? Или работать с phatomjs из явы?
10 янв 19, 14:57    [21781702]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Озверин,
Он забыл асинхронность веб по умолчанию. Без всякого кода. Только и всего.
10 янв 19, 15:07    [21781719]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7396
про Web в исходном сообщении ничего не было
10 янв 19, 15:09    [21781720]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7396
Если Spring, то гугля вполне находит шедулер от спринга
(спрингом не пользуюсь, умею только гуглеть, ничего о шедулере спринга сказать не могу)

http://ru.lmgtfy.com/?q=spring scheduler

https://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/scheduling.html
10 янв 19, 15:11    [21781724]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Leonid Kudryavtsev
Если Spring, то гугля вполне находит шедулер от спринга
(спрингом не пользуюсь, умею только гуглеть, ничего о шедулере спринга сказать не могу)

http://ru.lmgtfy.com/?q=spring scheduler

https://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/scheduling.html

Тоже думал в его сторону. Но тут вариант такой что есть таска которая выполняется каждые 5 минут, допустим. Выгребает все сайты с бд где нет фото и делает их. Но лучше наверно помещать в отдельную таблицу таску.
10 янв 19, 15:48    [21781795]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Озверин
Tsyklop, тогда я проблему не понял.

Проблема в том, чтобы запустить отдельный поток? Или запустить js код из java? Или работать с phatomjs из явы?


Как это лучше делать. Или же запустить поток или же делегировать это дело кому-то другому. и т.д. Как работать с фантомом я знаю и умею. (И да я знаю про потоки в вебе)
10 янв 19, 15:49    [21781796]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Озверин,
Он забыл асинхронность веб по умолчанию. Без всякого кода. Только и всего.

не забыл как бы.
10 янв 19, 15:50    [21781798]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7396
Tsyklop
Leonid Kudryavtsev
Если Spring, то гугля вполне находит шедулер от спринга
(спрингом не пользуюсь, умею только гуглеть, ничего о шедулере спринга сказать не могу)

http://ru.lmgtfy.com/?q=spring scheduler

https://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/scheduling.html

Тоже думал в его сторону. Но тут вариант такой что есть таска которая выполняется каждые 5 минут, допустим. Выгребает все сайты с бд где нет фото и делает их. Но лучше наверно помещать в отдельную таблицу таску.

При чем тут таблица?

Если я правильно понял доку от спринга, объявили метод @Async и не паритесь. Все остальная работа по контролю Job'ов, должна лежать на том, кто их будет выполнять (пул потоков и прочее)
10 янв 19, 15:54    [21781807]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Leonid Kudryavtsev,
А спринг не веб что ли?
10 янв 19, 16:08    [21781824]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop,
Делать фото надо там где бизнес логика. Т. Е. Добавляем сайт.
А не оставляем на потом... Кто нибудь.... Разгребает это Г.
10 янв 19, 16:10    [21781828]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Tsyklop,
Делать фото надо там где бизнес логика. Т. Е. Добавляем сайт.
А не оставляем на потом... Кто нибудь.... Разгребает это Г.

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

Откуда: Ростов-на-Дону
Сообщений: 4785
Tsyklop
Озверин
Tsyklop, тогда я проблему не понял.

Проблема в том, чтобы запустить отдельный поток? Или запустить js код из java? Или работать с phatomjs из явы?


Как это лучше делать. Или же запустить поток или же делегировать это дело кому-то другому. и т.д. Как работать с фантомом я знаю и умею. (И да я знаю про потоки в вебе)



так в итоге - это микросервисы или десктоп ?
10 янв 19, 16:42    [21781914]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
s62
Member

Откуда: Жуковский
Сообщений: 874
Tsyklop,
на всякий случай,
task с английского переводится на русский "задача", "задание", на украинский "задача", "завдання".
10 янв 19, 16:44    [21781918]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Озверин
Tsyklop
пропущено...


Как это лучше делать. Или же запустить поток или же делегировать это дело кому-то другому. и т.д. Как работать с фантомом я знаю и умею. (И да я знаю про потоки в вебе)



так в итоге - это микросервисы или десктоп ?

микросервисы.
10 янв 19, 16:52    [21781933]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7396
тут еще терминалогическая путаница

task vs thread - в контексте многозадачности и ОС

task a la job - в контексте scheduler'ов
10 янв 19, 16:52    [21781934]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
s62
Tsyklop,
на всякий случай,
task с английского переводится на русский "задача", "задание", на украинский "задача", "завдання".

да ладно? я и не знал, слушайте. укр нах....
10 янв 19, 16:53    [21781935]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4785
Tsyklop
Озверин
пропущено...



так в итоге - это микросервисы или десктоп ?

микросервисы.


есть 2 пути - сложный и простой.

Простой заключается в том, чтобы дергать уже чей-то сервис.
Предположим, такой: http://www.page2images.com/Create-website-screenshot-online-API (там вроде 100 запросов в день?)
Этот сервис по rest api вернет превью для заданного сайта.

Сложный заключается в написании своего микросервиса(мы ж микросервисы?) и дергании его.
Учитывая, что вы знаете фантомджс, я бы этот сервис поднял на node.js и всю магию бы делал там, ну и потом бы за него дергал.

Если второй путь подходит, но не подходит всякие node.js, и нужен именно java-way, то берем в руки что-нибудь вроде phatom wrapper`а и дергаем за фантом из этой либы в java уже.

Теперь к тому, что задача должна перебирать сайты без превью и делать эти превью. Все это решается довольно быстро:
над методом, который должен раз в н времени что-то делать вешается аннотация:

@Scheduled(cron = "а-тут-крон-выражение")


и в любом классе конфигурации(это там, где @Configuration) должна быть аннотация: @EnableScheduling
10 янв 19, 17:05    [21781947]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Мда... Классика приделывания микросервисов ко всему, что ни попадя)
Вместо
function setMyFoto(url) ;
Забабахаем микросервисы, API, оркестровку и шину.
10 янв 19, 17:28    [21781984]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
cossack5
Member

Откуда:
Сообщений: 413
В том же спринге есть @Async. Судя по первому посту ТС, это то что нужно.
10 янв 19, 17:34    [21781995]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
забыл ник
Member

Откуда:
Сообщений: 2601
Молодцы мужики, разобрались всего-то за 2 страницы.
10 янв 19, 17:40    [21782008]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123, Я провел тесты. Страница stackowerflow у меня грузиться око минуты в phantomjs. это никуда не годится. Вообще.
28 янв 19, 10:52    [21795568]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
Petro123, Я провел тесты. Страница stackowerflow у меня грузиться око минуты в phantomjs. это никуда не годится. Вообще.

"Страница грузится" это ответ домохозяек.
На что конкретно уходит время?
28 янв 19, 10:58    [21795570]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
lleming
Member

Откуда:
Сообщений: 1527
Tsyklop
Petro123, Я провел тесты. Страница stackowerflow у меня грузиться око минуты в phantomjs. это никуда не годится. Вообще.


Казалось бы причем здесь java. Во вторых никто не знал бы что существует stackoverflow если бы он грузился минуту. Банально терпения у людей не хватало бы ждать по минуте.

А по факту, что означает грузится около минуты от начала загрузки до чего ?
window.onready event или phantomjs заканчивает с exit(0) ?

Так страницу сейчас можно вечно грузить с учетом websocket. Из опыта если на сайте навешен какой то сторонний api для теж же яндекс карт или что особенно актуально сторонний assistant вот он может грузиться с минуту. Т.е. сам сайт в 300мс грузится и затем около 30-35с этот асистант подгружается через ajax.

Можно еще полистать настройки Phantomjs max parallel connection чтото такое (есть у всех браузеров, и есть подозрение что у phantomjs по умолчанию тоже что и chrome)
28 янв 19, 12:09    [21795643]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
lleming
Member

Откуда:
Сообщений: 1527
ну и еще вопрос по поводу времени загрузки от чего начало считается?
Входит туда время необходимое для самого старта phantomjs ?
28 янв 19, 12:11    [21795647]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
lleming,
+1 автор путается в показаниях.
28 янв 19, 12:17    [21795654]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
"Страница грузится" это ответ домохозяек.
На что конкретно уходит время?

Видать на подгрузку скриптов. я ж не вижу браузер. Я поставил дебагер после driver.get(url). И он туда попал только после минуты загрузки страницы. Что он загружает сайт я вижу в логах - он пишет какой сайт начал загружать.
28 янв 19, 14:56    [21795911]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
lleming

Казалось бы причем здесь java. Во вторых никто не знал бы что существует stackoverflow если бы он грузился минуту. Банально терпения у людей не хватало бы ждать по минуте.

А по факту, что означает грузится около минуты от начала загрузки до чего ?
window.onready event или phantomjs заканчивает с exit(0) ?

Так страницу сейчас можно вечно грузить с учетом websocket. Из опыта если на сайте навешен какой то сторонний api для теж же яндекс карт или что особенно актуально сторонний assistant вот он может грузиться с минуту. Т.е. сам сайт в 300мс грузится и затем около 30-35с этот асистант подгружается через ajax.

Можно еще полистать настройки Phantomjs max parallel connection чтото такое (есть у всех браузеров, и есть подозрение что у phantomjs по умолчанию тоже что и chrome)


У меня вот так вот. Бывает что у меня в хроме он долго загружается. Я предполагаю из-за скриптов которые не доступны (К примеру яндекс метрика. Яндекс в украине заблочен).

Грузится долго до document.readyState === complete.
28 янв 19, 14:58    [21795916]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
lleming
ну и еще вопрос по поводу времени загрузки от чего начало считается?
Входит туда время необходимое для самого старта phantomjs ?

от того как я на фронте нажал кнопку отправить. Входит, но сам phantomjs инициализируется быстро.
28 янв 19, 15:00    [21795918]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
lleming
Member

Откуда:
Сообщений: 1527
Яндекс метрики на стаковерфлоу нет но он очень много грузит с cdn и причем действительно не быстро. Сама страница в пределах 2,5s, затем всякая хрень с cdn около 8с и затем остатки до 15с. (но я позади прокси, так абсол. значения сильно меньше)

Но сейчас ромкомзнайкто усилил борьбу с тебеграммом а крупные сайты всегда юзают всякие cdn. Это как вариант. С этим можно побороться уменьшив connection timeout , и read timeout уменьшить. Подобрать экспериментально или делать перезапрос если ошибки полезли с увеличенным timeout.
28 янв 19, 15:18    [21795933]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
У меня вот так вот. Бывает что у меня в хроме он долго загружается. Я предполагаю из-за скриптов которые не доступны (К примеру яндекс метрика. Яндекс в украине заблочен).

Грузится долго до document.readyState === complete.

Давай я в двадцатый раз спрошу: "нажми f12 и напиши конкретно что тормозит до минуты загрузки.".
А потом подымай данную тему.
Не знаю, зачем её сегодня подняли.
28 янв 19, 15:57    [21795976]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123, да какая в ж***у разница что там долго грзится, если я не смогу на это повлиять? смысл это делать? как я это сделаю если ГУИ НЕТ?!!! ептить. Могли бы не заходить если не понимаете зачем подняли. То же мне спец...
28 янв 19, 16:05    [21795989]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
lleming
Яндекс метрики на стаковерфлоу нет но он очень много грузит с cdn и причем действительно не быстро. Сама страница в пределах 2,5s, затем всякая хрень с cdn около 8с и затем остатки до 15с. (но я позади прокси, так абсол. значения сильно меньше)

Но сейчас ромкомзнайкто усилил борьбу с тебеграммом а крупные сайты всегда юзают всякие cdn. Это как вариант. С этим можно побороться уменьшив connection timeout , и read timeout уменьшить. Подобрать экспериментально или делать перезапрос если ошибки полезли с увеличенным timeout.


Хм. вариант, но чет мне кажется усложнено все. перезапросы... отслеживать это все. Мне просто проще создать что ли задачу, в планировщике. Тогда добавление будет быстрым, а картинка появится позже. Я такое видел на разных сервисах.
28 янв 19, 16:07    [21795994]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Герой дня
Member

Откуда: obmanula.ru
Сообщений: 30503
Tsyklop
Petro123, да какая в ж***у разница что там долго грзится, если я не смогу на это повлиять? смысл это делать? как я это сделаю если ГУИ НЕТ?!!! ептить. Могли бы не заходить если не понимаете зачем подняли. То же мне спец...


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

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop,
Скока у тебя Г. полилось после того как ты написал: "... сайт грузится минуту и мне по барабану почему".
Бизнес логика такая у юзверя когда он сайт добавляет.

Tsyklop
если я не смогу на это повлиять?

С памятью проблема?
1. AJAX
2. Как юзверь без ГУИ добавляет сайт?
3. Настройки либы по таймауту.
..
Бездельник блин.
28 янв 19, 16:28    [21796019]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Герой дня,
Он из джуна в профи экстерном а отдыхать не научился.
28 янв 19, 16:30    [21796023]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Герой дня
ты что такой агрессивный? тут форум высокой культуры

Человек задолбал одним и тем же. + еще ко всему тем что не поможет.
28 янв 19, 16:44    [21796041]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Герой дня,
Он из джуна в профи экстерном а отдыхать не научился.

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

Откуда: Украина
Сообщений: 816
Petro123

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


1. что AJAX? не пойму. Если вопрос про использование, то конечно он используется.
2. Не юзвер без ГУИ, а сервак без ГУИ делат скрин сайта. Клиент вводит url своего сайта и нажимает на кнопку "сохранить". Сервак принимает урл и делает скрин по переданному урлу, предварительно сделав проверки.
3. Уже пробовал. И сколько мне ставить, 3 секунды? что бы запрос не был слишком долгим. Допустим поставлю timeout 30 секунд. Зачем мне не до конца загруженный сайт?
28 янв 19, 16:48    [21796048]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop,
Ну, у меня получше память твоей.
Ты даже свой топик не помнишь.
Выше я говорил что скрин обычно делают ам где бизнес логика.
Ты согласился.
А сегодня выдал ахинею свой пост про минуту загрузки.
Это разве отменило совет про БЛ?
Нет.
Просто ты пофлудил и ничего не узнал.
28 янв 19, 16:49    [21796050]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
Клиент вводит url своего сайта и нажимает на кнопку "сохранить". Сервак принимает урл и делает скрин по переданному урлу, предварительно сделав проверки.
так.
Значит ГУИ есть. Я же о кнопке на клиенте говорю блин!
Дальше по ajax ушла команда на скрин.
Зачем потоки?
28 янв 19, 16:51    [21796055]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Tsyklop,
Ну, у меня получше память твоей.
Ты даже свой топик не помнишь.
Выше я говорил что скрин обычно делают ам где бизнес логика.
Ты согласился.
А сегодня выдал ахинею свой пост про минуту загрузки.
Это разве отменило совет про БЛ?
Нет.
Просто ты пофлудил и ничего не узнал.

Я согласился, и пошел тестить как это будет работать. Потестил и вот вернулся.
28 янв 19, 16:54    [21796059]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Tsyklop
Клиент вводит url своего сайта и нажимает на кнопку "сохранить". Сервак принимает урл и делает скрин по переданному урлу, предварительно сделав проверки.
так.
Значит ГУИ есть. Я же о кнопке на клиенте говорю блин!
Дальше по ajax ушла команда на скрин.
Зачем потоки?

После того как сайт был добавлен, делать запрос на бэк что бы он сделал скрин?
28 янв 19, 16:55    [21796060]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
Я согласился, и пошел тестить как это будет работать. Потестил и вот вернулся.
см. выше.
Домохозяйка так тестирует.
Что грузится минуту? Реклама? Счетчики гугла? Хреновый код? 404?
28 янв 19, 16:56    [21796063]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

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

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
Petro123, Я провел тесты. Страница stackowerflow у меня грузиться око минуты в phantomjs. это никуда не годится. Вообще.

Технически, imho скрины не имеют проблем в выполнении.
А вот по БЛ некоторые хотят дожидаться загрузки всей рекламы сайта и баннеров. Тогда ждем...
Другие наоборот не хотят. Тогда не ждем.
Есть миллион разных случаев юз кейса: "нажал кнопку Добавить сайт".
Делай как угодно, только глупости не пиши.
Удачи!
28 янв 19, 17:07    [21796072]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Tsyklop
После того как сайт был добавлен, делать запрос на бэк что бы он сделал скрин?
таски и потоки не нужны. Сервлет делает в потоке контейнер.

та то понятно. Задачи для планировщика имел в виду. При добавлении ставить сайту картинку что-то вроде "Картинка скоро появится...". Ну и когда планировщиу сделает скрин, уже будет скрин, а не та картинка.
28 янв 19, 17:08    [21796075]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
планировщика
в двадцатый раз.
На AJAX без него будет точно так же.
Ответь словом "Да" и иди гуляй и делай как хочешь.
Хоть на JOBах в бд.
28 янв 19, 17:18    [21796090]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Tsyklop
Member

Откуда: Украина
Сообщений: 816
Petro123
Tsyklop
планировщика
в двадцатый раз.
На AJAX без него будет точно так же.
Ответь словом "Да" и иди гуляй и делай как хочешь.
Хоть на JOBах в бд.


Не тоже самое. Планировщик не будет блочить юзера.
28 янв 19, 17:39    [21796108]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
Tsyklop
блочить юзера.
доказывай. Если инженер.
28 янв 19, 17:53    [21796120]     Ответить | Цитировать Сообщить модератору
 Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
Герой дня
Member

Откуда: obmanula.ru
Сообщений: 30503
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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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


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

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

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
Сообщений: 38815
Вот может пригодится.

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

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

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

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

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

    Откуда: Украина
    Сообщений: 816
    mayton, какой такой реакции?
    29 янв 19, 11:02    [21796583]     Ответить | Цитировать Сообщить модератору
     Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
    Tsyklop
    Member

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

    все, конец истории.

  • Ну вот и я думал сделать @Scheduled, но вон людям больше нравится еще один запрос кидать... я ж то не против.
    29 янв 19, 11:03    [21796585]     Ответить | Цитировать Сообщить модератору
     Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
    Tsyklop
    Member

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

    Вместо скрина сохраняется плейсхолдер с крестиком. Типа что-то пошло не так.
    Крестик - кликабельный. Типа обновить. Клиент кликает и создает еще раз задание
    на отрисовку титула.[/quot]
    Мне кажется, или это усложнение довольно простой задачи.
    29 янв 19, 11:04    [21796586]     Ответить | Цитировать Сообщить модератору
     Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 816
    Petro123
    Остался вопрос, зачем выше, ты что то там ждал минуту. И кто тебя заставил ждать.

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

    Откуда: loopback
    Сообщений: 38815
    Tsyklop
    mayton, какой такой реакции?

    Тебе дают ссылки. От тебя нет реакции. Не подходит? Почему?
    29 янв 19, 11:10    [21796589]     Ответить | Цитировать Сообщить модератору
     Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 36520
    Tsyklop
    Petro123
    Остался вопрос, зачем выше, ты что то там ждал минуту. И кто тебя заставил ждать.

    Ждал пока сделается скрин сайта и добавится сайт в бд..
    выше ты писал, что НЕ ХОТЕЛ ЖДАТЬ И НАДО СЕРФИТЬ.
    Ты уж разберись с юз кейсами))
    29 янв 19, 11:12    [21796592]     Ответить | Цитировать Сообщить модератору
     Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 36520
    mayton
    Я предлагаю закрыть топик. Беря во внимание практически полное отсутсвие реакции. Тема исчерпана.
    +1 дурдом в топике.
    Давно можно сделать оба варианта. А не спорить страницами что лучше.
    29 янв 19, 11:15    [21796594]     Ответить | Цитировать Сообщить модератору
     Re: Выполнение таски вне основного потока. (или хз как назвать тред)  [new]
    Tsyklop
    Member

    Откуда: Украина
    Сообщений: 816
    Закрыто.
    29 янв 19, 11:17    [21796598]     Ответить | Цитировать Сообщить модератору
    Топик располагается на нескольких страницах: 1 2 3 4 5      [все]
    Все форумы / Java Ответить