【问题标题】:Codeigniter - session userdata sizeCodeigniter - 会话用户数据大小
【发布时间】:2019-06-12 06:26:12
【问题描述】:

我使用 Codeigniter 将我的会话存储在数据库中, 也许我的问题很愚蠢,但如果会话数据有大小限制,我不明白,如果达到该限制,我无法理解应用程序会发生什么?

谢谢

【问题讨论】:

    标签: codeigniter session size limit


    【解决方案1】:

    使用数据库保存会话没有限制。 CI 使用 serialize 序列化数据并将其保存到数据库。

    唯一的限制可能是数据库中的字段,情况不同:

    文本 65,535 字节 ~64kb
    MEDIUMTEXT 16,777,215 字节 ~16MB
    LONGTEXT 4,294,967,295 字节 ~4GB

    【讨论】:

    • 文字应该足够了。
    【解决方案2】:

    您可以将 user_data 存储在具有 TEXT 字段大小的数据库中,TEXT 字段可以存储 ~64kb。

    【讨论】:

    • 但是当达到 TEXT 限制时会发生什么?
    【解决方案3】:

    大家好,在数据库中使用 BLOB 字段大小设置 user_data 以确保它由 codeigniter 文档推荐

    CREATE TABLE IF NOT EXISTS `ci_sessions` (
            `id` varchar(128) NOT NULL,
            `ip_address` varchar(45) NOT NULL,
            `timestamp` int(10) unsigned DEFAULT 0 NOT NULL,
            `data` blob NOT NULL,
            KEY `ci_sessions_timestamp` (`timestamp`)
    );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多