Ну, господа, дрямки !!!
Есть типа два готовых решения, если можно, покритикуйте , поспорим давайте
что лучше , может и вам пригодится!
Есть цель, получать статистику о использовании нета с WEB, ну типа что бы
пользователь знал сколько мне торчит ... Считает IPFW сливает все в MySQL,
заходит ламер на веб, запускает CGI, я бы и на PERL , и на SHELL писал бы,
но вот только ламеров будет куча!!! Если человек 300 одновременно запустят
скрипт на PERL, то все ... все попадает к черту ... Вот и пришел я к двум
мыслям, что мне выбрать ????
1)
Могу написать своего демона .... Ну вобщем вот чертеж ....
+------------+ +---------+ +---------------+
| WEB запрос |---> | C++ CGI |--->| pipe / socket |----+
+------------+ +---------+ +---------------+ |
|
+-----------+ |
+---| my daemon |<------+
| +-----------+
+-----------+ +-----------------+
+--| mysqld |<----| /tmp/mysql.sock |
| +-----------+ +-----------------+
| +----------+
+--->| MySQL DB |
+----------+
2)
Зачем писать демона, когда и mysqld тоже ставит запросы в очередь ???
Может выехать на этом и увеличить производительность ???
+------------+ +---------+
| WEB запрос |--->| CGI C++ |--+
+------------+ +---------+ |
/+\ |
| +------+ /+\ +---------+
| | WAIT |<-/ \-->| CONNECT |-------+
| +------+ +---------+ |
| | /+\ \+/
+-----------+ | +-----------------+
--------------------| /tmp/mysql.sock |
+-----------------+
/+\ |
| \+/
+-----------+ +----------+
| MySQL DB |<-------| mysqld |
+-----------+ +----------+
| /+\
+---------------------|
Мне кажется, что во втором случае цепочка запросов меньше, да и програмить
меньше, писать CGI на С++ очень выгодно, можно вставить код Assembler...
Скорость возрастает в пару сотен раз по сравнению с SHELL / PERL,
плюсь это сильная защита ( перехват всех сигналов выхода ... Кроме
SIGKILL, управление всеми буферами, пишу на самом нижнем уровне ...
без всяких iostream.h или stdio.h ... string.h ! То - есть все
пучком!!! )
Ну типа если вы въехали, то COME ON !!!! Жду типа .....
Всем пасибки за внимание !!!!!