BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 23 июн 2025, 21:46

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
СообщениеДобавлено: 17 июн 2013, 14:33 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Код:
Информация о версии:
  Клиент: вер. 5.2 сборка 1169 от 29.04.2013 19:05:29
    os: Windows 8; java: Java HotSpot(TM) 64-Bit Server VM, v.1.6.0_45
  Сервер: вер. 5.2 сборка 1487 от 26.04.2013 16:34:20
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.6.0_37


Проблема в следующем.
Есть скрипт, который я запускаю через управление дин.кодом. В вывод результатов попадает что-то около 5000-6000 строк.

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

Если этот же код запустить через глобальные скрипты поведения (классы Java), то окно с результатами появляется примерно сразу же как завершается выполнение скрипта. +/- 1-2 секунды.

И еще замечание. Если запускать через классы Java в глобальных скриптах поведения - окно клиента виснет до тех пор, пока не закончится выполнение скрипта. При выполнении же через Скрипты BGBS в глобальных скриптах - появлялось окно "Скрипт выполняется. Результаты смотрите в логах". И можно было продолжать работать.

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 14:55 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
Т.е. выполняется сразу, а рисует долго?

Цитата:
И еще замечание. Если запускать через классы Java в глобальных скриптах поведения - окно клиента виснет до тех пор, пока не закончится выполнение скрипта. При выполнении же через Скрипты BGBS в глобальных скриптах - появлялось окно "Скрипт выполняется. Результаты смотрите в логах". И можно было продолжать работать.
В этом и был смысл - синхронное выполнение/вывод как в иде. Для отладки только и не более. Асинхронно сделать ну никак не получится, т.к. выполняется на сервере ведь. И выполняется по другому.
Т.е. надо убрать отсюда окошко и тоже рисовать потом как-нибудь, как всё завершится?

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 15:30 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
dimOn писал(а):
Т.е. выполняется сразу, а рисует долго?

Именно.
Запустил только что через динкод, выполнялось секунд 20, а результаты не появляются уже минут 5.

Цитата:
рВ этом и был смысл - синхронное выполнение/вывод как в иде. Для отладки только и не более. Асинхронно сделать ну никак не получится, т.к. выполняется на сервере ведь. И выполняется по другому.
Т.е. надо убрать отсюда окошко и тоже рисовать потом как-нибудь, как всё завершится?

Ну тогда и не суть важно. Его в любом случае используют только для отладки.

upd: появилось ~ через 6-7 минут после старта.

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 16:11 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
хм, не очень понятно почму так долгоу... возврат долгий результата или как? там просто после выполнения возвращается результат и всё.

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 17:40 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
там, конечно, форматирование через html так что скорее всего на огромных документах просто тупо тормозит. но как избежать этого я даже не знаю...

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 17:43 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Угу. Я тоже проверил на простом выводе - выводит практически моментально.
На более сложном где дофига текста - выводит как я уже сказал, достаточно долго.
Просто было непонятно почему через глобальные скрипты выводит как и положено, а через дин.код все гораздо дольше.

В любом случае это не постоянные случаи так что если невозможно избежать - пускай будет :)

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 17:50 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
проверил кодом, выводит сразу...
Код:
package foo.bar;

public class Test5000
{
   public static void main( String[] args )
   {
      for( int i=0; i<5000; i++ )
      {
         System.out.println("line"+i);
      }
   }
}

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 17:55 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
код такой даёт довольно громоздкий html но тоже довольно быстро рендерится) но памяти слегка отжирает, да. может выделить побольше?
Код:
public class Test5000
{
   public static void main( String[] args )
   {
      for( int i=0; i<5000; i++ )
      {
         System.out.print("l");System.err.print("i");System.out.print("n");System.err.print("e");System.out.println(i);
      }
   }
}

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 18:08 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Проверял вот таким кодом.
Код:
package ru.ellcom.test;

import java.sql.*;
import java.util.Date;

import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;


public class testDimon
   extends GlobalScriptBase
{
      
   @Override
   public void execute( Setup setup, ConnectionSet connectionSet )
      throws Exception
   {
      Connection con  = connectionSet.getConnection();
      
      String query = "SELECT id FROM contract";
      java.sql.PreparedStatement ps = con.prepareStatement( query );
      ResultSet rs = ps.executeQuery();
      Date newDate = new Date();
      while ( rs.next() )
      {            
         int id = rs.getInt(1);
         print("Договор с id = " + id + " был замечен за неправомерными действиями в месяце " + newDate );
      }
   }
}


Результаты в видео http://www.youtube.com/watch?v=6N-fbU5yulA
Причем оно до сих пор еще не вывелось в дин.коде. Хотя прошло уже минут 4-5

Через глобальные скрипты вывелось практически моментально, даже учитывая что это тестовый сервер.
А через дин.код - сами понимаете :)

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 18:19 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
600 договоров у меня в БД - мгновенно вывело )

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 июн 2013, 18:21 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
скопипастил код 10 раз подряд - секунд 20 и вывело. так что могу заключить, что УМВР :umnik:

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.046s | 37 Queries | GZIP : On ]