[ОТВЕТИТЬ]
Опции темы
13.06.2013 11:38  
Aleks_Str
Надо "переключать" СГО с порта на порт раз в Х минут.
Видится следующее: раз в Х минут (шедулер) запускаем батник следующего вида:
1. Стоп УКМ
2. Читать порт
3. Если порт=YYY, то присвоить порт ZZZ, в противном случае - присвоить YYY.
4. Старт УКМ.

Вопрос: как в BAT-файл получить значение из запроса
select НОМЕР_ПОРТА from НАСТРОЙКИ_СГО
и потом записать
update НАСТРОЙКИ_СГО set НОМЕР_ПОРТА=YYY (ZZZ)
 
13.06.2013 14:10  
whitewizard
паранойя - это здорово :) но не проще ли порт ставить, например 50000+текущая минута или типа того
 
13.06.2013 14:39  
Little
Вот только не пойму, в чем сокральный смысл сего действия ?!
 
13.06.2013 14:41  
Aleks_Str
Не, дело не в паранойе.
При нашем количестве магазинов (более 80) СГО только и делает, что принимает от них (от магазинов) информацию (в логах только импорт-экспорт с/на магазины).
А в БД для обмена с внешней системой чеки выгружаются (стандарный экспорт 4) весьма редко. Задержка в появлении чеков в БД для обмена доходит до 4-5 часов, а это уже критично.
Вот и хочу первую половину магазинов натравить на порт СГО YYY, а вторую - ZZZ.
А потом раз ХХХ минут переключать порт СГО на самом СГО. Расчитываю, что он (СГО) будет успевать не только "принимать" чеки от СМ-ов, но и выгружать их в БД для обмена с внешней системой.
 
13.06.2013 14:45  
whitewizard
как то кривенько всё выходит.
ну и переключай порт каждый интервал времени.
 
13.06.2013 15:04  
Aleks_Str
хочется автоматически это делать, не используя мускулы пальцев людев.
 
13.06.2013 15:41  
whitewizard
вот это сохранит в файл порт сервера:
Код:
mysql -uroot -pCtHDbCGK.C --database=ukmserver -e"select value from local_server_param where id='server_port'" > port.txt
а если запрос поменять на update, то и менять данные сможешь.
только я так опнимаю, после смены порта надо будет службу "УКМ сервер" перегружать.
 
13.06.2013 15:47  
whitewizard
либо создай заранее файлы со скриптом и запускай батник такого вида:
Код:
C:\MySQL\bin\MySQL.exe -uroot -pCtHDbCGK.C ukmserver < port.sql > log.log
а в port.sql будет
Код:
update local_server_param set value='порт' where id='server_port';
вроде так
 
13.06.2013 16:22  
Aleks_Str
Ага.
Значит будем "курить" инет о анализе в батнике содержимого текстового файла.
Спасибо за толчок в нужном направлении...
Как сделаю - скину для примера....
 
13.06.2013 17:14  
Павел Сосновских
а о "переменных" в mysql не слышал никто что ли?
set @port=0;
select value from local_server_param where id='server_port' into @port;

еще, я бы не полагался на виндовый шедуллер
погуглить лучше mysql'ные event'ы
 
 


Опции темы



Часовой пояс GMT +3, время: 16:37.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.