Kev*_*vin 5 mysql database sqldatatypes jwt laravel-5.2
我正在使用以下技术堆栈
为了安全起见,我正在使用JWT(JSON Web令牌)
我能够使用JWT保护我的应用程序.
我想将JWT令牌存储在mysql数据库中.
问题以下哪种数据类型最适合在MySQL DB中存储JWT令牌?
与其他任何事情一样,答案是"它取决于".
首先,您需要确定存储完全编码的JWT是否是正确的解决方案.我倾向于不存储JWT字符串,而是存储用于构建JWT的声明,这将在数据库中节省大量空间.
如果您认为存储JWT是正确的方法,那么我们可以查看您的选项.
TEXT和LONGTEXT只是CLOB的类型,所以我们可以忽略它.
TEXT和VARCHAR都有64kb的限制,所以高于此值的任何东西都需要LONGTEXT(或MEDIUMTEXT,你没有提到但是可以选择).
TEXT和VARCHAR之间的区别在于VARCHAR存储在行中,但TEXT基本上是一个指针.如果您要经常阅读JWT,VARCHAR会更快,但是更大的字符串将导致每个单独的行更大,这将是性能损失.
与JWT一样大,我会说TEXT是将JWT存储在数据库中的不错选择.如果你绝对相信JWT会保持很小,那么VARCHAR可能会产生更好的读取性能,但你最好用真实世界的数据进行测试.
如果你需要一个大于TEXT能够提供的字段,那么我会重申我的建议,以避免存储编码的JWT,但LONGTEXT是一个选项.
| 归档时间: |
|
| 查看次数: |
4064 次 |
| 最近记录: |