【发布时间】:2013-07-28 08:18:51
【问题描述】:
我想知道是否可以在 PHP 中的不同会话之间进行交互?我问这个是因为我想限制 MySQL 查询的数量,因为很多事情都是动态的,我想找到方法来减少用户之间的交互对 MySQL 的痛苦。
一个例子是聊天。在用户自己的会话中以某种方式共享聊天会非常有用,而不必轮询 MySQL 以获取新消息等。如果用户 A 写了一条消息并将其插入到用户 B 会话中,我可以立即在我的长轮询循环中获取它,而无需尽可能频繁地骚扰 MySQL。
【问题讨论】:
-
“我可以立即在我的长轮询循环中获取它,而无需尽可能频繁地骚扰 MySQL” --- “骚扰” mysql 通常“便宜”,并且会话尽可能轻可能
-
真的吗?我一直认为会话本身就可以工作并且不会对系统施加太大压力。我已将所有当前用户数据以及翻译等放入每个会话,大小为 40KB - 我认为这不是很多?..
-
会话必须对每个请求进行序列化/反序列化,而对于其他数据源,您可以实施一些缓存策略等。40kb 是很多
-
OK.. 那么您对翻译有何建议?他们占据了大部分会话,但我在哪里存储它?..还有关于问题本身 - 是否可以读/写其他会话?
-
对于聊天,有一些选项可用于流式传输而无需任何数据库参与。
标签: php session long-polling