gpt4 book ai didi

c# - 迁移到 Redis session 状态时遇到问题

转载 作者:IT王子 更新时间:2023-10-29 06:09:58 25 4
gpt4 key购买 nike

我正在将 session 管理提供程序从 inproc 更改为 Redis session 状态,以解决 Web Garden 的共享 session 问题并提高我的 MVC 应用程序的性能。使用 Redis 的问题是在放入 session 之前必须对类进行序列化,这需要对我现有的解决方案进行大量修改。有什么办法可以克服这个问题吗?是否有任何提供程序可用于在运行时序列化对象?

最佳答案

我们经历了这样的改变,没有其他办法可以做到。它只是用一个属性标记你的类,所以这不是什么大事。当您发现一些根本不可序列化的类型时,可能会发生大问题——比如一个对象,然后您需要更改它。每当您在进程外进行 session 时,所有内容都必须是可序列化的,因为它们将通过网络传输。

顺便说一下,你不会有更好的性能,没有什么比保存过程中的数据更好的了。在我们这边,我们注意到每个请求大约需要 4-500 毫秒 - 只是将数据加载和保存到 Redis。但是还有其他很大的优势,比如自动缩放。

另请注意,如果您在 session 中保存非常大的内容,它可能会超时 - 检查 redis session 提供程序的 throwOnError 参数。实际上缓存大项(将它们直接存储在 redis 中)然后将它们保存在 Session 中实际上会更好,因此它们不会为每个请求加载和保存。

关于c# - 迁移到 Redis session 状态时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30457055/

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