mod Apache?

Модератор: Fastman

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Гость
проходил мимо

mod Apache?

Непрочитанное сообщение Гость » 2010-06-27 19:57:42

Всем всего!

Есть клиент-серверное приложение. Поставленна задача клиента заменить веб-браузером. Писать веб-сервер большого желания нет. Возможноли решить данный вопрос созданием мода Апача?

1. Насколько данная тема трудоемка? на русском практически ничего нет.
2. Возможно ли запихать в мод протокол обмена существуещего клиент-серверного приложения?
3. Думаю я не первый кто задается такой темой...если не трудно подсобите советом.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Fastman
ст. лейтенант
Сообщения: 1236
Зарегистрирован: 2006-07-07 10:20:38
Откуда: Минск. РБ

Re: mod Apache?

Непрочитанное сообщение Fastman » 2010-06-29 10:47:17

Гость писал(а):Всем всего!

Есть клиент-серверное приложение. Поставленна задача клиента заменить веб-браузером. Писать веб-сервер большого желания нет. Возможноли решить данный вопрос созданием мода Апача?

1. Насколько данная тема трудоемка? на русском практически ничего нет.
2. Возможно ли запихать в мод протокол обмена существуещего клиент-серверного приложения?
3. Думаю я не первый кто задается такой темой...если не трудно подсобите советом.
Если есть протокол общения между клиентом и сервером то почему бы просто не обернуть его в какой нибудь XML-RPC и склепать веб морду ?
У нас вообще изначально просто сервер и клиент общались по такому протоколу. Поэтому добавление веб морды свелось к написанию веб морды.
Не зная нюансов трудно что то посоветовать. Но привязывать что то намертво к апачу может и не стоит.
Главное в жизни здоровье и любовь, остальное я все куплю.

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-06-29 19:46:26

Да какая фиг разница буст или не буст...
В каком виде бегают сообщения между клиентом и сервером ? Бинарный протокол ? Текстовый с разделителями ? XML-RPC ?? Etc.. ???
У нас все было просто. Есть сервер. Подаешь запрос к примеру, по обычному сокетному соединению отслыаешь XML-ку типа:

Код: Выделить всё

<header>
  <cmd>
    <type>CMD:С001</type>
    <login>pupkin</login>
    <pass>12345</pass>
  </cmd>
</header>
То есть к примеру запрос авторизации. Сервак ловит эту фигню, парсит и отвечает похожей XML-кой по сокетному соединению.

Код: Выделить всё

<header>
  <cmd>
    <type>CMD:S001</type>
    <read>1</read>
    <write>0</write>
  </cmd>
</header>
Ну это псевдокод..но принцип понятен.
То есть клиенту прилетает что юзер может данные читать..а писать нет... клиент парсит это и так далее.
В этом случае - серверу пофигу кто спрашивает данные. Прилетело... распарсили и ответили.
Как это будет сделанно CGI или еще какая хрень типа вебсервис - монопенисуально.

Аватара пользователя
Fastman
ст. лейтенант
Сообщения: 1236
Зарегистрирован: 2006-07-07 10:20:38
Откуда: Минск. РБ

Re: mod Apache?

Непрочитанное сообщение Fastman » 2010-06-29 20:00:05

Сорри.. по ошибке грохнул сообщение ваше )
Главное в жизни здоровье и любовь, остальное я все куплю.

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 20:18:03

это не push server, long-pull, aka Comet ?
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-06-29 20:23:12

Гость писал(а):Да какая фиг разница буст или не буст...
В каком виде бегают сообщения между клиентом и сервером ? Бинарный протокол ? Текстовый с разделителями ? XML-RPC ?? Etc.. ???
У нас все было просто. Есть сервер. Подаешь запрос к примеру, по обычному сокетному соединению отслыаешь XML-ку типа:

Код: Выделить всё

<header>
  <cmd>
    <type>CMD:С001</type>
    <login>pupkin</login>
    <pass>12345</pass>
  </cmd>
</header>
То есть к примеру запрос авторизации. Сервак ловит эту фигню, парсит и отвечает похожей XML-кой по сокетному соединению.

Код: Выделить всё

<header>
  <cmd>
    <type>CMD:S001</type>
    <read>1</read>
    <write>0</write>
  </cmd>
</header>
Ну это псевдокод..но принцип понятен.
То есть клиенту прилетает что юзер может данные читать..а писать нет... клиент парсит это и так далее.
В этом случае - серверу пофигу кто спрашивает данные. Прилетело... распарсили и ответили.
Как это будет сделанно CGI или еще какая хрень типа вебсервис - монопенисуально.
Примерно тоже самое и у меня. То что без разницы кто отправит запрос это тоже понятно. Не понятно как это дело завернуть в мод апача.

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-06-29 20:27:17

ProFTP писал(а):это не push server, long-pull, aka Comet ?
нет

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 20:27:51

вот я видел, может пригодится...
http://search.cpan.org/search?query=JSON-RPC&mode=all
http://search.cpan.org/search?query=XML-RPC&mode=all

вот только что увидел, товарищ, Makamaka Hannyaharamitu, написал
http://search.cpan.org/~makamaka/JSON-R ... Apache2.pm

====

если надо на С/С++ то может сервер написать? например, на kqueue/kevent. и т.д.?
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-06-29 20:31:09

ProFTP писал(а):это не push server, long-pull, aka Comet ?
если конечно "частый опрос" можно посчитать за push-server

Аватара пользователя
Fastman
ст. лейтенант
Сообщения: 1236
Зарегистрирован: 2006-07-07 10:20:38
Откуда: Минск. РБ

Re: mod Apache?

Непрочитанное сообщение Fastman » 2010-06-29 20:33:06

Гость писал(а):
ProFTP писал(а):это не push server, long-pull, aka Comet ?
если конечно "частый опрос" можно посчитать за push-server
Ну вообщем по большинству у нас был запрос/ответ и возможность ловить сообщения от сервака без запроса.
Как то так :)
Главное в жизни здоровье и любовь, остальное я все куплю.

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 20:33:33

Гость писал(а):если конечно "частый опрос" можно посчитать за push-server
да, опрос, инициализация по инициативе сервера...
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-06-29 20:40:52

ProFTP писал(а):вот я видел, может пригодится...
http://search.cpan.org/search?query=JSON-RPC&mode=all
http://search.cpan.org/search?query=XML-RPC&mode=all

вот только что увидел, товарищ, Makamaka Hannyaharamitu, написал
http://search.cpan.org/~makamaka/JSON-R ... Apache2.pm

====
.....с Perl как то не сложилось...
ProFTP писал(а):
если надо на С/С++ то может сервер написать? например, на kqueue/kevent. и т.д.?
просто хотелось бы поиметь "вкусности" апача...

я так так идея мода - не гуд?

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 20:47:15

не видел, а большая нагрузка? если да, говорят что плохо будет с mod_* и fastcgi, если оно будет обрабатывать много соединений...
оно будет все "пихать" в многопоточность все соединения...
может в CGI для начала?
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-06-29 20:59:14

ProFTP писал(а):не видел, а большая нагрузка? если да, говорят что плохо будет с mod_* и fastcgi, если оно будет обрабатывать много соединений...
оно будет все "пихать" в многопоточность все соединения...
может в CGI для начала?
нагрузка достаточная....сейчас порядка 500-1000 соединения...тем более пока нет четкой картины реализации COMET..т.е. мод на каждый коннект создает поток?

для начала cgi уже было...минимум....руководство исключило :(

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 21:09:07

как обменивается сообщениями клиент(ы)?
т.е. клиент посылает запрос на сервер через 2 сек. чтобы посмотреть новые данные? и принять? (и отправить самому?)
то можно использовать push server, long-pull, aka Comet, где сервер сам будет посылать данные тогда когда надо, и лишние коннекты через 2 сек. не будут...
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-06-29 21:18:59

ProFTP писал(а):как обменивается сообщениями клиент(ы)?
т.е. клиент посылает запрос на сервер через 2 сек. чтобы посмотреть новые данные? и принять? (и отправить самому?)
то можно использовать push server, long-pull, aka Comet, где сервер сам будет посылать данные тогда когда надо, и лишние коннекты через 2 сек. не будут...
там все достаточно сложно...сечас более 3000 форм...наверное 40% вообще не обновляются...как все это реализовать в веб пока не понятно....до этого пока не дошли...т.е. ппока надо реализовать "устойчивый" коннект и пусть это будет статичная форма. в целом да - таймаут обновления информации 5 секунд.

блин, как часто это бывает разработчик транспортного уровня не совсем похорошему ушел из конторы....а больше по "формам" специализируюсь - поэтому такие глупые вопросы.....а на дворе кризис...не хотим мы спеца брать!!! :st:

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 21:21:17

push server это хак на js
(для push server видел реализацию на AnyEvent и Loop Event с коробки на perl)

Передача данных по инициативе сервера, обзор COMET

в браузере Google Chrome, есть релизация веб-сокетов... (на других браузерах реализуется с помощью flash)

вот http://ru.wikipedia.org/wiki/WebSocket
http://habrahabr.ru/blogs/webdev/79038/

WebSocket я видел на перловом фреймворке и вот простейший скрипт http://kiev.pm.org/?q=node/395 можно переписать на Си
и на php там есть реализации...

или не это надо?
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 21:29:30

Гость писал(а):в целом да - таймаут обновления информации 5 секунд.
ну вот при использовании push server или веб-сокет - сервер сам будет иннициализировать соединения, тогда когда будут новые данные... и через каждые 5 сек. не нужно делать паразитные соединения
(это обычный чат так делается, еще)
такой сервер желательно написать на событийно-ориентированном программировании http://kiev.pm.org/?q=node/390 на event loop, any event, epoll, kqueue/kevent
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 21:35:39

Гость писал(а): ппока надо реализовать "устойчивый" коннект и пусть это будет статичная форма.
тогда cgi/fcgi
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-06-29 21:36:06

ProFTP писал(а):push server это хак на js
(для push server видел реализацию на AnyEvent и Loop Event с коробки на perl)

Передача данных по инициативе сервера, обзор COMET

да...тоже сейчас изучаю
ProFTP писал(а): в браузере Google Chrome, есть релизация веб-сокетов... (на других браузерах реализуется с помощью flash)

вот http://ru.wikipedia.org/wiki/WebSocket
http://habrahabr.ru/blogs/webdev/79038/

WebSocket я видел на перловом фреймворке и вот простейший скрипт http://kiev.pm.org/?q=node/395 можно переписать на Си
и на php там есть реализации...

или не это надо?
это даже очень хорошо...а кроме Google Chrome кто нибудь собирается реализовывать эту технологию? вообще смотрели в сторону firefox...и как планировалось веб-форма узнает состояние контента на сервере...и если есть измениения каждый элемент веб-формы обновляется индивидуально...как таковых хтмл-страниц нет. формирование идет динамически на сервере...т.е. страница формируется один раз...далее только изменяются данные на форме.

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: mod Apache?

Непрочитанное сообщение ProFTP » 2010-06-29 21:39:56

Гость писал(а):это даже очень хорошо...а кроме Google Chrome кто нибудь собирается реализовывать эту технологию?
(на других браузерах реализуется с помощью flash)

это тоже самое что и push-server без разницы, просто push-server через прокси не работает и некоторые другие проблемы (не помню)

а если веб-сокет реализовывать черех flash на других браузерах ( кроме Google Chrome), то получится, тоже, самое что и push-server... как я понял...
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Аватара пользователя
Fastman
ст. лейтенант
Сообщения: 1236
Зарегистрирован: 2006-07-07 10:20:38
Откуда: Минск. РБ

Re: mod Apache?

Непрочитанное сообщение Fastman » 2010-06-30 23:48:35

Не слушай ProFTP, людям которые пишут на перле - доверять нельзя :)
Главное в жизни здоровье и любовь, остальное я все куплю.

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-07-01 6:04:49

Fastman писал(а):Не слушай ProFTP, людям которые пишут на перле - доверять нельзя :)
Человек подкинул много информации для размышления....только за это его можно слушать :smile:

И все таки руководство мне не удается сломить и отказаться от мода....в пользу cgi....да и самому кажется что это не совсем то...

Поэтому остаются открытыми вопросы:

1. мод запускается на каждую сессию клиента? или он статичен и синхронно обрабатывает все соединения?
2. как(не могу понять) как внедрить свой С++ код в С код.(гуглил mix C++ C).

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-07-01 9:51:34

2. как(не могу понять) как внедрить свой С++ код в С код.(гуглил mix C++ C).
extern "C"
{

}

Гость
проходил мимо

Re: mod Apache?

Непрочитанное сообщение Гость » 2010-07-01 15:42:01

Гость писал(а):
2. как(не могу понять) как внедрить свой С++ код в С код.(гуглил mix C++ C).
extern "C"
{

}
бустовские инклюды тоже оборачивать?

и все таки мод запускается на каждую сессию клиента? или он статичен и синхронно обрабатывает все соединения?