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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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


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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Это и так будет происходить ajax-ом. Но пока запрос выполнится пройдет время. Доберусь домой засеку время (но на данный момент только локально на ПК. На рабочем сервере может быть дольше.)
10 янв 19, 14:30    [21781679]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3 4 5   вперед  Ctrl      все
Все форумы / Java Ответить