我有一个 Centos 6.5,并且在 Tomcat 上运行 Vaadin,该应用程序对报告和其他内容的查询非常繁重。
我的问题是,当我从 PHP 连接到 MYSQL 时,当我进行一个小查询时,来自 PHP 的查询总是等待在 Tomcat 上请求 Vaadin 的重查询。
我尽力解决这个问题。
我认为这可能是 Apache 的问题,我安装并配置了 nginx 和 Apache,尝试在 nginx 上进行 php 查询(当然端口更改在 81 上),并将 Apache 单独留给 Vaadin。
有任何想法吗 ???
答案1
这就是MySQL
工作原理。DBMS 应保证所谓的数据“完整性”(ACID 性),因此大多数操作都锁定了对特定表的访问。在操作完成之前,任何情况下都不应启动其他操作。所有查询都排队并按顺序逐一执行。一些 DB 引擎允许锁定不是整个表而是仅锁定相关行,但在现实生活中,这没什么用。
有一些技巧可以帮助避免此类锁定,但如果您不是 Vaadin 的开发人员之一,您就无法使用它们。