首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >针对多个小请求的PHP资源优化

针对多个小请求的PHP资源优化
EN

Stack Overflow用户
提问于 2014-04-08 19:52:24
回答 1查看 263关注 0票数 0

MYSQL结构:多个数据库具有相同的表,每个数据库中的格式如下:

db1.a

db1.b

..。

db2.a

db2.b

..。

……

……诸若此类

PHP结构:

/包含/->包含常量的文件

./work/ ->用于与db交互的文件

main.php ->检查工作文件夹中文件中的请求和调用函数的类型

该系统将通过使用JSON的Android请求和响应查询进行访问,并以相同的方式从数据库返回数据。服务请求的代码将保持不变,只有db将根据用户更改。

问题的症结在于,成千上万的用户将从Android应用程序发送请求到任何一个功能,该功能在一个请求中只与特定db的表进行交互。基本上,每个请求中要执行的代码非常小,每个请求最多有2或3 db查询。

我有种感觉,我的解决方案在某种程度上是错误的。必须有一些方法来优化这么多请求。

  1. 我将包括包含每个请求的数组常量的多个包含文件。这会否导致回应的延误?我目前正在包括文件,创建包含常量的类的对象,并将其传递给所需的任何函数。在memcached中保持包含对象会更快吗?为所有请求将对象保存在内存中的任何其他方法。注意:如果我将包含常量保持为静态,代码就会变得更加复杂,因为我必须在每个函数中声明它们是全局的,这将是非常麻烦的。
  2. 我读到有人使用某种框架- zend,交响乐。使用这样一个框架有什么好处,我是否有必要使用其中任何一个?
  3. 是否有一种方法可以保持对象和db连接为会话,以便在给定的时间框架内,如果同一个具有相同会话id的用户发出请求,那么每个php资源都会被重用吗?

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-08 21:13:48

你看起来很困惑。为什么我们要知道,你有一个名为"work“的文件夹?试着尽可能的精确--也许你看到了解决方案,然后自己也看到了。

回答你的问题:

  1. 必须有一些方法来优化这么多请求。当有这么多的请求时,我想他们通常会得到同样的结果。这样你就可以缓存你的页面。
  2. 这只会造成极小的延迟。它是如此的小,你不会注意到它;)
  3. 项目越大,使用框架就越好。它简化了许多任务,并帮助您构建项目。它对性能有影响。
  4. 是的,有一种序列化对象的方法。但是,由于数据的编写和读取也可能很慢(并且引入了新的软件错误),所以您应该只为真正重要的事情编写和读取数据。您不能/不需要缓存mysql连接。当您使用PDO或mysqli时,它将自动为您完成。

如果你是初学者,你应该停止过多地担心性能,而应该更多地担心代码/架构的质量。从长远来看,这会更有帮助。如果你必须做出决定-总是喜欢可读性:)

祝你的项目顺利

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22946854

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档