【发布时间】:2016-10-03 03:34:04
【问题描述】:
Asterisk 服务器需要运行一个查询 MySQL 数据库的外部脚本(如果你必须知道的话,一个“AGI”)。这个脚本会经常运行,大概每分钟 50-100 次,而且它做的不多(大约 10-15 次 SELECTS,对结果进行一些计算并将结果回显给 Asterisk)。
如果脚本是 PHP shell 脚本,在负载测试期间它会占用大量 CPU(大概是因为它每次运行时都会加载和加载整个 php 库)。
另一方面,如果脚本是 bash shell 脚本,则需要很长时间才能运行,因为 bash 无法(轻松)维护单个 MySQL 连接并使用 SSL 与远程服务器进行 10-15 次连接/断开连接每次协商需要十分之几秒,因此整个脚本可能需要 3-4 秒。
对于这项任务,有哪些更好的语言选择?开销低但易于 MySQL 支持的东西,最好是解释而不是编译。
【问题讨论】:
-
每分钟 60 到 100 个同步吗?
-
有时脚本的一个实例仍将运行,而脚本的第二个实例必须启动,如果这是您所要求的。
-
我的意思是它会阻塞。最后,尝试与社区分享你的想法和分析