lilalo

diff l3config.pm @ 27:098664cf339c

Выполнены шаги 4,5 в плане N05 по построению распределённой системы lilalo.
Шаг <6> в настоящее время не является необходимым.


Введено понятие сеанса.
Сеансом считается процедура работы с системой, начинающаяся с регистрации
в ней и зазаканчивающаяся разрегистрацией, и сопровождающаяся ведением одного
файла скрипта.
Одновременно с созданием скрипта (.script) создаётся соответствующий ему
файл с информацией о сеансе (.info).
Каждый сеанс имеет уникальный в пределах хоста идентификатор,
~local_session_id~, который впоследствии позволяет определить,
какие команды относятся к какому сеансу.

Добавлен backend-сервер, который получает данные от агентов и записывает
из в backend (в настойщий момент - в XML-файл).
Данные передаются по tcp-соединениям.
(Одновременно может работать несколько серверов.
Блокировка файла при записи пока что не выполняется ОСТОРОЖНО!!!!!!)

Агент периодически пытается отправить backend-серверу содержимое своего кэш-файла,
и если ему это удаётся, кэш файл очищается -- данные теперь хранятся в backend'е.

Взаимодействие агентов, backend-сервера и frontend'а
сейчас выполнеятся так:


+-------+
| |
| cache |
| |
+-^---+-+
| |
. ^ v . ^^ . +---------+ . ^^ .
/ \ tcp / \ | | / \ CGI
( agent )----->( backend- )-->| backend |-->( frontend )----->
\ / \ сервер / | | \ /
' . ' ' .. ' +---------+ ' .. '
^
|
+----+----+
| |
|*.script |
| *.info |
| |
+---------+

l3-frontend:
Теперь может выдавать результат работы на стандартный поток вывода.
Вместо имени файла нужно указать символ -

Добавлены файлы:

l3-backend - backend-сервер
l3-cgi - CGI-обвязка для l3-frontend'а

Новые конфигурационные параметры:
frontend_css Путь к файлу CSS, используемому в HTML-странице, которую генерирует frontend
frontend_google_ico Путь к иконке google
frontend_linux_ico Путь к иконке linux
frontend_freebsd_ico Путь к иконке freebsd
frontend_opennet_ico Путь к иконке opennet
frontend_local_ico Путь к иконке локальной документации

backend_address IP-адрес интерфейса, на котором работает backend-сервер
backend_port Порт, который слушает backend-сервер
backend_pidfile Путь к файлу, который хранит идентификатор процесса backend-сервера
backend_datafile Путь к файлу хранилищу (файлу backend)
author devi
date Mon Nov 07 11:24:49 2005 +0200 (2005-11-07)
parents ba4d6515b8fd
children 450b6ac9b657
line diff
     1.1 --- a/l3config.pm	Thu Nov 03 17:49:56 2005 +0200
     1.2 +++ b/l3config.pm	Mon Nov 07 11:24:49 2005 +0200
     1.3 @@ -46,6 +46,12 @@
     1.4  		#"output"			=>	"report.xml",
     1.5  		"output_mask"			=>	"INDEX",
     1.6  		"output_format"			=>	"html",
     1.7 +		"frontend_css"			=>	"/l3/l3.css",
     1.8 +		"frontend_google_ico"		=>	"/l3/google.ico",
     1.9 +		"frontend_linux_ico"		=>	"/l3/linux.ico",
    1.10 +		"frontend_freebsd_ico"		=>	"/l3/freebsd.ico",
    1.11 +		"frontend_opennet_ico"		=>	"/l3/opennet.ico",
    1.12 +		"frontend_local_ico"		=>	"/l3/freebsd.ico",
    1.13  
    1.14  		"signature"			=>	"#lm:",
    1.15  		"from"				=>	"",
    1.16 @@ -62,7 +68,13 @@
    1.17  		"detach"			=>	"yes",
    1.18  		"agent_pidfile"			=> 	"$ENV{HOME}/.labmaker/l3-agent.pid",
    1.19  
    1.20 +		"backend_address"		=>	"127.0.0.1",
    1.21 +		"backend_port"			=> 	"18030",
    1.22 +		"backend_pidfile"		=> 	"/tmp/l3-backend.pid",
    1.23 +		"backend_datafile"		=> 	"/tmp/backend.xml",
    1.24 +
    1.25  		"l3-agent"			=>	"l3-agent", 
    1.26 +		"l3-backend"			=>	"l3-backend", 
    1.27  		
    1.28  		"course-name" => "", 
    1.29  		"course-code" => "",