@Ranout а чем не устраивает модуль CaptchaCustom выложенный на форуме? Он сделает за вас сам все, только потом нужно токен вписать ну или найти каллбэк функцию куда его добавить.
Как Выполнить GET до начала основной секции проекта
-
@Fox said in Как Выполнить GET до начала основной секции проекта:
@Sevenup В теории функция OnApplicationStart запускается перед запуском всех потоков. Можно попробовать через неё выполнить get-запрос и установить общее количество потоков.
А вообще, есть более простой способ, установить количество потоков из ресурса\базы и соответственно их изменять по необходимости.
OnApplicationStart выполняется уже внутри секции после установки значения потоков, пробовал, не подходит :(
"установить количество потоков из ресурса\базы" да, так сейчас и делаю, но значение этого ресурса нужно менять. Какой тип ресурса в таком случае наиболее удобен по Вашему мнению?
-
@Sevenup Смотря где у Вас админка, но самый простой способ это взять из файла цифру.
Можно установить апач и заходить на сервер, через свою админку на php. А там уже можно добавить установки количества потоков (с записью числа в файл для ресурса) и запуск самого скрипта.Можно подключить удалённую базу и изменять параметры в ней..
Кстати BAS поддерживает ссылки вида
\\, то есть можно подключить сетевой диск и править файл с количеством потоков в одном месте. -
@Fox said in Как Выполнить GET до начала основной секции проекта:
@Sevenup Смотря где у Вас админка, но самый простой способ это взять из файла цифру.
Можно установить апач и заходить на сервер, через свою админку на php. А там уже можно добавить установки количества потоков (с записью числа в файл для ресурса) и запуск самого скрипта.Админка удаленно, BASы за НАТом. Да так и делаю, тяну цифру из файлика а туда ее ложу самописной утилитой, которая получает ее из удаленной админки. Также и project.xml обновляю и старт/стоп(kill) БАСу делаю. Но сам факт того, как это происходит, писать int в файл, что бы потом считать, доставляет дискомфорт :)))) может я перфекционист. Вот подумываю модуль сделать, но моя програмулина на GO, а БАС его не поддерживает, а как их подружить пока не знаю, был бы API какой-то у БАСа по http что ли или даже хз, это уже надо автора звать и с ним идеи обсуждать :)
@Fox said in Как Выполнить GET до начала основной секции проекта:
Можно подключить удалённую базу и изменять параметры в ней..
Попытался подключить БАС к удаленному MongoDB, по началу мне эта идея очень понравилась, прям в процессе работы проекта ходить в базу, что-то читать, что-то писать, но как-то с ходу не взлетело :( пока отложил эту идею. Классика POST/GET работает :)
@Fox said in Как Выполнить GET до начала основной секции проекта:
Кстати BAS поддерживает ссылки вида
\\, то есть можно подключить сетевой диск и править файл с количеством потоков в одном месте.
да, но это только когда все БАСы в одной локалке. -
@Sevenup По vpn соединяйся и работай как в локалке через
\\.Можно любой костыль придумать, вариантов масса. Я по началу вообще через bat запускал vbs, которые получали данные из админки и записывали в файл..
Хотя @support планировал выпустить Панель для развертывания и управления несколькими копиями БАС через веб.
-
Решил сейчас попробовать.. Создал ресурс в функции OnApplicationStart, добавил в этот ресурс число, и ввёл этот ресурс в выборе количества потоков..
В итоге при запуске, BAS пишет в логВсе данные были обработаныи вылазит отчёт работы скрипта, закрыв который вылетает весь BAS.Это вопрос к @support , вылет программы логичен, или это баг?
Вот пример скрипта. -
-
@support said in Как Выполнить GET до начала основной секции проекта:
Это вопрос к @support , вылет программы логичен, или это баг?
Предпочтительный способ решения проблемы сейчас - запуск функции в несколько потоков.
да, это было бы идеальным решением, если бы такой запуск работал в точности как классический многопоточный запуск проекта - это решило бы много проблем :) Самая главная спотыкачка, мешающая использовать "многопоточный запуск функций" - это не возможность понимать что в этих потоках происходит, многопоточные функции не отписываются в лог и если там что-то падает, узнать об этом не представляется возможным (приходится запускать функцию в один поток, дебажиться, а после переводить на продакшне в многопоток). Очень ждем багфикс. Спасибо. -
@support said in Как Выполнить GET до начала основной секции проекта:
@Sevenup я могу исправить только многопоточный запуск функций. Еще раз, проблема в том, что не работают сообщения об ошибке?
Если многопоточные функции будут сообщать в лог все что в них происходит, равносильно как если бы запустить многопоточно проект, то да - это упростило бы задачу дебага и использования многопоточных функций. Дальше уж если найду еще баги отпишусь.
-
@support said in Как Выполнить GET до начала основной секции проекта:
@Sevenup ошибки, которые случились во время выполнения функции в несколько потоков, теперь выводятся в лог и в отчет
@Sevenup Также я добавил возможность завершать все потоки мгновенно, через "Прервать Скрипт". Теперь запуск многопоточных функций ничем не отличается от обычного.супер! Спасибо! а где брать? ждать 20.4? на гитхабе последние изменение были несколько месяцев назад, там точно не latest.