Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Запуск одного скрипта разными процессами

1

Не знаю правильно ли сформулировал, вообщем астериск вызывает через AGI питоновский скрипт и передает ему несколько переменных которые скрипт пишет в базу. Вопрос такой, допустим пришло два звонка абсолютно одновременно, по сути я так понимаю это два разных процесса астериск, но дергают то они физически один и тот же файл на диске. Каков исход этого процесса? Могут N скриптов получить доступ к одному и тому же скрипту и граммотно это обработать или какой то звонок в базе не появится?

удалить закрыть спам изменить тег редактировать

спросил 2012-04-18 10:56:00 +0400

godlike Gravatar godlike flag of Ukraine
814 ● 92 ● 24 ● 62

Comments

запускается два процесса python. заметьте, каждый запуск требует очень много ресурсов. используйте fastagi. тем более что для питона такие фреймворки етсь.

meral ( 2012-04-22 12:26:33 +0400 )редактировать

Не фреймворка , а библиотеки. Да и в любом случае будет запускаться интерпретатор со своим адресным пространством и занимаемой памятью. И актуально это для любых языков, тут нет разницы питон это или пхп.

zzuz ( 2012-04-22 18:38:19 +0400 )редактировать

если запускать fastagi скрипт разница очень даже есть. и кстати для agi питон скомпиленный быстрее запускается. раз в 5-6 обычно.

meral ( 2012-04-22 21:49:08 +0400 )редактировать

Так речь не о скорости , а о том что каждый процесс запускает свой интрепритатор. И я предлагаю закончить дисскусию , потому как я помню Ваше недовольство языком Python и налицо незнание предмета.

zzuz ( 2012-04-22 22:26:19 +0400 )редактировать

2 Ответа

0

Могут, AGI на это и расчитан. Плюс важно , что написано в самом скрипте. Каждый канал разговора - это отдельный поток выполнения инструкций сервера. Ньюансы многократного подключения к БД или чтения/записи файлов учитываются разработчиком программы , которая используется среду выполнения астериска.

ссылка удалить спам редактировать

ответил 2012-04-18 11:08:39 +0400

zzuz Gravatar zzuz flag of Russian Federation
7174 ● 2 ● 6 ● 75
http://line24.ru/

Comments

скрипт просто создает в базе данных строку и пишет туда эти переменые, причем два звонка создают две записи, то есть по идее конфликта записи в бд быть не должно

godlike ( 2012-04-18 11:20:12 +0400 )редактировать

Да, по такой схеме конфликта не будет.

zzuz ( 2012-04-18 11:23:49 +0400 )редактировать

не факт. если например два скрипта обновляют одну запись,может быть неправильное обновление. но это уже дело базы а не скрипта. можно блокировку делать перед обновлением. и вообще,лучше использовать fastagi

meral ( 2012-04-22 12:25:19 +0400 )редактировать
0

Представьте, у Вас веб-сервер, index.php(xml,asp,exe,html не важно) - это один файл, который пытаются прочитать и запустить N (при этом у кого-то N>1000) клиентов одновременно.. Вопрос: почему ресурс яндекс/гугл/одноглазники всегда доступен?

ссылка удалить спам редактировать

ответил 2012-04-21 23:40:17 +0400

um2010 Gravatar um2010
2056 ● 70 ● 13 ● 55

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2012-04-18 10:56:00 +0400

Просмотрен: 414 раз

Обновлен: Apr 21 '12

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.