我有几组用 CakePHP 编写的 API,我们希望将其迁移到 Amazon AWS。
目前情况如下:
网站托管在 GoDaddy 上,作为域共享托管,例如:democompany.com
后端数据库是MySQL,我们通过PhpMyAdmin访问。它有几个表,例如用户、计划、购买等。
所有 API 都是用 CakePHP 编写的,我们通过基本 URL 访问: democompany.com/cake
例如,为了在用户表中添加条目,我们创建一个 JSON 并通过 REST API 发送它。下图显示了 JSON:
现在,由于我们的用户不断增长,我们的 API 响应时间已经变慢。发送 POST 或 GET 需要一些时间才能返回响应。
我们正在考虑将 API 和数据库迁移到 Amazon AWS 或任何其他解决方案。我对AWS不太了解,所以不知道哪种产品最好。 哪一个是最好的解决方案,能够立即响应并且具有成本效益?
最佳答案
使用 PHP 后端的 MySQL 数据库速度变慢可能有多种原因。试试这些:
最重要的事情之一是考虑您的索引。您可能在 ID 上有一个带有 auto_increment 的主索引。但是,如果您在另一列上查询很多(例如
SELECT * FROM users WHERE email LIKE '%john%'
),那么在电子邮件列上设置索引也很重要。如果您想要高性能数据库,索引的工作方式至关重要。请参阅这篇文章以了解其工作原理:How do MySQL indexes work?另一件事是查询的数量和复杂性。您在一页加载中使用许多查询还是只使用几个查询?尝试从一次查询中获取尽可能多的信息。
对数据进行排序也可能非常昂贵。是否删除
SORT BY whatever
速度加快很多?看看这个:MYSQL, very slow order by如果您查看了所有这些内容并确定所有查询都运行顺利,您可以查看持久连接(例如在一页加载中重复使用连接)、更大的服务器等。
关于mysql - CakePHP响应慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42432088/