我正在使用 Joomla 2.5.8 并安装了一个自定义组件,该组件从数据库中获取数据并使用 TCPDF 生成自定义 PDF 文件。
根据用户的请求,模型从数据库加载一堆数据,这没问题,没有超时,请求需要几秒钟,之后没有更多的查询发送到数据库。根据接收到的数据,进行处理以生成 PDF 文件,并将生成的 PDF 文件列表重新调整到要在布局中显示的视图。
一切似乎工作正常并且处理正确完成,但可能是由于模型中完成的长时间处理,菜单模块未加载并返回以下错误:
MySQL 服务器已经消失
SQL:
SELECT m.id, m.title, m.module, m.position, m.content,
m.showtitle, m.params, mm.menuid
FROM jos2_modules AS m LEFT JOIN
jos2_modules_menu AS mm ON mm.moduleid = m.id LEFT JOIN
jos2_extensions AS e ON e.element = m.module AND e.client_id = m.client_id
WHERE m.published = 1 AND e.enabled = 1 AND
(m.publish_up = '0000-00-00 00:00:00' OR m.publish_up <= '2013-10-31 15:42:00') AND
(m.publish_down = '0000-00-00 00:00:00' OR m.publish_down >= '2013-10-31 15:42:00') AND
m.access IN (1,1,2,3,4) AND m.client_id = 0 AND
(mm.menuid = 101 OR mm.menuid <= 0)
ORDER BY m.position, m.ordering
请注意,如果我删除 PDF 文件处理,则没有错误。我无法控制在此处理中花费的时间,但也许我没有在正确的地方进行。
我还从以前的帖子中了解到,MySQL 配置中有一些参数可以在 MySQL ini 文件中进行调整,但这不是我可以做的,因为 SQL 服务器由我的提供商托管。此外,发生错误时我无法访问数据库。
有没有人已经遇到过这种问题?