gpt4 book ai didi

php - 跟踪当前连接设备上的用户

转载 作者:行者123 更新时间:2023-11-30 00:34:52 25 4
gpt4 key购买 nike

我想找到一种方法让我的网站定期 ping 或向我的服务器报告,以便我可以更好地跟踪使用情况并进行自己的分析等。

我的网站不是标准网站,而是流媒体设备,我想在设备的 URL 中使用 GET 请求来报告用户 ID。

然后,PHP 脚本将在每个报告中更新 MySQL 表上的标志。我不清楚的部分是当用户设备不再报告时如何最好地清除或更改标志,以便我的数据库不会将用户显示为事件状态。

没有“注销”功能,因此当用户不使用设备时没有安全的方法来清除标志。

也许有一种我没有想到的更好的方法来做到这一点,所以我绝对愿意接受建议。我对 php/sql 很陌生,所以我仍在寻找自己的方法:)

TIA

最佳答案

对于像这样的简单“ping”数据,您:

  1. 不应将其提交到磁盘。是的,IO 可能很小,但是持续不断的小 IO 操作流可能会导致很大的开销问题。
  2. 不应关心此数据的持久性。

这就是为什么有 MEMORY tables 。只需确保您在其中存储了最低限度的数据,并经常清除过期的数据即可。

例如:

CREATE TABLE pings (
user_id INTEGER UNSIGNED,
timestamp INTEGER UNSIGNED,
PRIMARY KEY(user_id)
) Engine=MEMORY;

INSERT INTO pings (user_id, timestamp) VALUES (1,NOW()) ON DUPLICATE KEY UPDATE timestamp=NOW();

并清除超过一小时的签到:

DELETE FROM pings WHERE timestamp < NOW() - INTERVAL 1 HOUR;

关于php - 跟踪当前连接设备上的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22261187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com