0

django.db モデルを使用して、dialplan 内でいくつかの python スクリプトを使用して freeswitch を実行すると、問題が発生します。起動するたびにエラーが発生します:

freeswitch@ubuntu> 2013-08-15 06:56:08.094348 [ERR] mod_python.c:231 Error importing module
2013-08-15 06:56:08.094348 [ERR] mod_python.c:164 Python Error by calling script   "fs_scripts.ringback": <type 'exceptions.IOError'>
Message: [Errno 10] No child processes
Exception: None

Traceback (most recent call last)
File: "/home/piotrek/lettel/fs_scripts/ringback.py", line 19, in <module>
File: "/home/piotrek/lettel/api/call.py", line 3, in <module>
File: "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 11, in <module>
File: "/usr/local/lib/python2.7/dist-packages/django/utils/functional.py", line 184, in inner
File: "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 42, in _setup
File: "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 93, in __init__
File: "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module
File: "/home/piotrek/lettel/lettel/settings.py", line 13, in <module>
File: "/usr/local/lib/python2.7/dist-packages/djcelery/__init__.py", line 25, in <module>
File: "/usr/local/lib/python2.7/dist-packages/celery/__compat__.py", line 135, in __getattr__
File: "/usr/local/lib/python2.7/dist-packages/celery/_state.py", line 19, in <module>
File: "/usr/local/lib/python2.7/dist-packages/celery/utils/__init__.py", line 22, in <module>
File: "/usr/local/lib/python2.7/dist-packages/kombu/entity.py", line 10, in <module>
File: "/usr/local/lib/python2.7/dist-packages/kombu/abstract.py", line 12, in <module>
File: "/usr/local/lib/python2.7/dist-packages/kombu/connection.py", line 24, in <module>
File: "/usr/local/lib/python2.7/dist-packages/kombu/log.py", line 8, in <module>
File: "/usr/local/lib/python2.7/dist-packages/kombu/utils/compat.py", line 68, in <module>
File: "/usr/lib/python2.7/platform.py", line 1337, in system
File: "/usr/lib/python2.7/platform.py", line 1304, in uname
File: "/usr/lib/python2.7/platform.py", line 1039, in _syscmd_uname

編集: エラーが発生する行は、django.db からの単純なインポートです:
from django.db import models

このセットアップ全体は、私がアクセスできないサーバーですでに実行されているため、djangoアプリまたはスクリプトに問題はないようです...

この問題を解決する方法のアイデアが不足しているため、どんな助けもいただければ幸いです...

4

1 に答える 1

0

ソフトスイッチには rtp ストリームとシグナリングを実行するためのリアルタイム要件があるにもかかわらず、パフォーマンスとスケーラビリティの要件はわかりません。そのため、mod_python で django アプリケーションを実行するのは良い解決策ではありません。さらに、それは直接pythonインタープリターと同じではなく、何かが機能しません。ここで mod_python の問題を確認できます: mod_python issues

Python ソリューションをクライアント/サーバー アーキテクチャに分割することをお勧めします。mod_python の下で実行されるスクリプトは、Django アプリケーションへのクエリを作成します。そうすれば、Freeswitch 側の複雑さが解消され、スケーラブルになり、パフォーマンスが向上し、おそらくすべてが正常に機能するようになります。

于 2013-08-16T01:54:40.083 に答える