Menu

First Use

Mi Pa
2011-10-09
2013-04-22
  • Mi Pa

    Mi Pa - 2011-10-09

    Для запуска на нескольких машинах необходимо:
    Указать путь к веб-сервису для клиента в "wsdl/apco_xop.wsdl":
               <wsdl:service name="BrokerService">
                   <wsdl:port name="BrokerPort" binding="tns:BrokerBinding">
                       <soap:address location="http://localhost:80/broker" />
                   </wsdl:port>
               </wsdl:service>
    Сгенирировать (spring) и перекомпилировать исходники командой "ant build.xml"
    Запустить сервер командой "ant server" или через IDEA
    Скопировать запускаемую часть и запустить клиенты на каждой машине командой "ant client"
    При этом в серверном логе для каждого выполняемого задания добавляется информация такого вида:
    INFO: FLUKA BROKER BEAN create finished
    INFO: file put to tmp/435/_fort.22
    INFO: file size 163166
    INFO: energy level 435 host BENAMN0L006672 runtime 3047 sendinput 3047 sendoutput 3047
    INFO: file from host BENAMN0L006672 written

    В клиентском логе для каждого выполняемого задания добавляемая информация выглядит так:
    -Sending result of execution back
    -Result of execution is sent back
    -Task received
    -Executing tasks:./bragg.inp

    В папке "./tmp" для каждого обсчитанного задания появляется подпапка, где имя подпапки - значение уровня энергии соответсвующего задания. В этой подпапке должен появиться лежать файл "bragg001_fort.22", если операционная система не WINDOWS, или "me.bmp" в противном случае. Это сделанно для того, чтобы на WINDOWS-клиентах проект по прежнему запускался бы (пусть и безрезультатно).

    Это был подробно описанный сценарий запуска. Теперь по смыслу.
    runme.sh - скрипт запуска в UNIX; runme.bat - заглушка для WINDOWS;
    wsdl/apco_xop.wsdl - файл описания веб-сервиса. необходимый клиентский и серверный JAVA код генерится из него и "wsdl/cxf-servlet.xml" посредством SPRING;
    broker-bean.xml - файл, где хранится текущее состояние очереди заданий. соответственно, если все задания были выполнены, то даже при перезапуске сервера и клиента, задания не будут выполняться повторно. в случае тестирования приложения: чтобы запустить тест повторно, можно удалить этот файл, тогда очередь заданий автоматически обнулиться;
    braggqueue.dat - файл, где хранятся параметры всех заданий;
    "src\org\spbgu\apco\client\FlukaRunner.java" - файл/класс реализующий клиента. Стоит обратить внимание на цикл while (doFurther) { …. }, где реализуется основной метод;
    "src\org\spbgu\apco\server\FlukaBrokerImpl.java" )  - файл/класс реализующий сервер.

    Последние исходники можно скачать с помощью SVN комманды:
    svn co https://apco.svn.sourceforge.net/svnroot/apco apco

     
  • Sergey Merts

    Sergey Merts - 2011-10-09

    Миша, привет.

    Сразу начну с получаемых ошибок.

    при выполнении ant build.xml, получаю ошибку
    BUILD FAILED
    /home/merz/work/apco/trunk/apco/build.xml:22: Cannot find /home/merz/work/apco/trunk/common_build.xml imported from /home/merz/work/apco/trunk/apco/build.xml

    Файла common_build.xml действительно нет.

     
  • Mi Pa

    Mi Pa - 2011-10-09

    Я думаю, что надо сначала открыть проект в Идее (среда разработки). Так как тебе скорее всего понадобится конфигурировать приложение, будет полезно скачать и установить. Ты можешь взять бесплатную comminity version c оф. сайта: http://www.jetbrains.com/idea/download/index.html. Там же смотри инструкцию для установки под Линуксом. После установки необходимо будет импортировать проект. Для этого используй  /home/merz/work/apco/trunk/apco

     
  • Sergey Merts

    Sergey Merts - 2011-10-09

    Ок, попробую. Отпишусь потом.

     
  • Mi Pa

    Mi Pa - 2011-10-19

    Проект перестроен. Теперь для запуска необходимо выполнить следующие шаги:

    1. скачать и установить дистрибутив http://maven.apache.org/docs/2.2.1/release-notes.html
    2. скачать проект
    3. из папки apco скомпиллировать и запустить сервер с помощью комманды:
         mvn clean install -Pserver
    4. из apco скомпиллировать и запустить клиент с помощью комманды
         mvn clean install -Pclient

     
  • Mi Pa

    Mi Pa - 2011-10-19

    На клиентских машинах необходимо иметь скрипт, который запускает fluka (название по умолчанию runme.sh).

     
  • Mi Pa

    Mi Pa - 2011-10-31

    Дистрибутив серверной и клиентских частей одинаков и прикреплен. Описание работы фреймворка:

    Серверная часть:
    для настройки необходимо ввести в файле braggqueue.dat очередь комманд для запускаться на удаленных машинах. Каждая строка в файле имеет формат:
        <число энергии>=<коммандная строка по запуску флюки>

    для нового запуска необходимо проиграть комманду:
    mvn install -Pserver
    после чего должен успешно запуститься сервер (на локальном порту 9000).
    * для запуска сервера с учетом состояния решенных задач (записываемых в файл broker-state.xml)
    mvn clean install -Pserver

    Клиентская часть:
    для настройки надо отредактировать файл application.properties, где надо определить адрес сервера server.url и файл куда сбрасывается результат работы флюки fluka.output.path.

    для запуска необходимо проиграть комманду:
    mvn install -Pclient
    после чего должен успешно запуститься клиент и начать обработку заданий.
    Результат обработки клиентской флюки записывается в директорию tmp на сервере!

    Последнюю версию проекта можно получить, проиграв:
    svn co https://apco.svn.sourceforge.net/svnroot/apco/trunk/apco apco

     

Log in to post a comment.