为 Laravel 会话创建 table 的目的是什么?
What is the purpose of creating table for Laravel Session?
我很困惑为什么它是先决条件 为基于 documentation 的会话创建数据库 table,而会话可以在没有它的情况下工作(db table).
有人可以解释我,
- 我可以直接
session(['key' => 'value']);
而不用table,为什么我们需要为会话创建一个数据库table(基于documentation)?
有个东西叫Redis
。目的是什么?以及如何使用(我已经 installed)?
user_id
、ip_address
、user_agent
、payload
、last_activity
等字段的用途是什么?这些有什么用?
数据库和redis只是用来存储session的驱动。默认情况下 laravel 使用 file
驱动程序,这意味着您仍然可以使用 session(['key' => 'value']);
并将其存储在文件中。
如果您选择使用数据库,那么您将需要创建表,Laravel 然后使用这些表来存储这些值。
Redis 也是一个完全独立的驱动程序,这里是它的 wiki:
Redis is an in-memory data structure project implementing a distributed, in-memory key-value database with optional durability.
所以总而言之,您应该根据自己的需要选择要使用的驱动程序。
我从来没有在数据库中使用过session
,所以我不能回答你所有的问题。我想每个人都会 see/use 这个 table 有不同的方法或用法。
- 数据库table
session
不是必需的。默认情况下,它使用 file
存储。使用数据库 table 允许您管理用户会话,(我想)在服务器之间共享它们...
Redis
就像一个数据库,但复杂性较低。它只是一堆 key => value
,所有内容都存储在内存中。它允许您的应用程序以极快的速度存储和检索数据。您还需要安装 redis-server
并在生产时启动 deamon
或在开发时启动 worker
以使其工作。
- 它们可能只不过是提供方便的工作信息(统计、日志等...)
除了最后一个以外的所有答案都在文档中。
我们需要将会话驱动程序更改为数据库或Redis。
它基于我们的要求,就像我使用 Heroku 服务器进行部署和每 30 分钟不活动后 Heroku 的免费测功机睡眠一样。而且 Heroku 不允许我们存储本地文件,它每天自动刷新一次构建。所以,在那种情况下,我们不能使用本地文件驱动来进行会话,我们必须将会话驱动更改为数据库或 Redis。
我正在使用 Redis 作为我的应用程序的会话驱动程序。
我很困惑为什么它是先决条件 为基于 documentation 的会话创建数据库 table,而会话可以在没有它的情况下工作(db table).
有人可以解释我,
- 我可以直接
session(['key' => 'value']);
而不用table,为什么我们需要为会话创建一个数据库table(基于documentation)? 有个东西叫
Redis
。目的是什么?以及如何使用(我已经 installed)?user_id
、ip_address
、user_agent
、payload
、last_activity
等字段的用途是什么?这些有什么用?
数据库和redis只是用来存储session的驱动。默认情况下 laravel 使用 file
驱动程序,这意味着您仍然可以使用 session(['key' => 'value']);
并将其存储在文件中。
如果您选择使用数据库,那么您将需要创建表,Laravel 然后使用这些表来存储这些值。
Redis 也是一个完全独立的驱动程序,这里是它的 wiki:
Redis is an in-memory data structure project implementing a distributed, in-memory key-value database with optional durability.
所以总而言之,您应该根据自己的需要选择要使用的驱动程序。
我从来没有在数据库中使用过session
,所以我不能回答你所有的问题。我想每个人都会 see/use 这个 table 有不同的方法或用法。
- 数据库table
session
不是必需的。默认情况下,它使用file
存储。使用数据库 table 允许您管理用户会话,(我想)在服务器之间共享它们... Redis
就像一个数据库,但复杂性较低。它只是一堆key => value
,所有内容都存储在内存中。它允许您的应用程序以极快的速度存储和检索数据。您还需要安装redis-server
并在生产时启动deamon
或在开发时启动worker
以使其工作。- 它们可能只不过是提供方便的工作信息(统计、日志等...)
除了最后一个以外的所有答案都在文档中。
我们需要将会话驱动程序更改为数据库或Redis。
它基于我们的要求,就像我使用 Heroku 服务器进行部署和每 30 分钟不活动后 Heroku 的免费测功机睡眠一样。而且 Heroku 不允许我们存储本地文件,它每天自动刷新一次构建。所以,在那种情况下,我们不能使用本地文件驱动来进行会话,我们必须将会话驱动更改为数据库或 Redis。
我正在使用 Redis 作为我的应用程序的会话驱动程序。