在 laravel PHP 中实现last_login或last_active


Implementing a last_login or last_active in laravel PHP

我有一个在Laravel php 5.2上运行的网络应用程序为了检查我的用户的活动和返回的用户,我在用户表中实现了一个last_login字段和一个侦听器,该侦听器将在每次登录时更新它。

一切都很好,但发生的情况是我有一个"记住我"令牌,当用户已经登录并使用令牌返回到应用程序时,last_login不会更新。

我想在每个用户操作上更新此字段,但它似乎没有那么优化,并且会导致一些性能问题。关于我如何实现这个"last_active"的东西的任何想法,对性能几乎没有影响

正如您自己建议的那样,我会(并且确实)使用影响用户的每个页面加载/和 ajax 调用更新最后一个活动时间戳......您需要谈论数百万并发用户才能成为一个问题......但无论如何,您都会进入负载平衡 Web 和 DB serevrs 的领域。

如果您认为高负载是数百甚至数千个并发用户,则更新时间戳几乎没有影响,只需确保用户表保持简单且合理索引即可。

此外,保持良好状态(取决于您的架构)的另一种好方法是使用 2 个连接......一个用于只读查询,一个用于更新、插入等。