【问题标题】:spring security strategy MODE_INHERITABLETHREADLOCAL. Why?春季安全策略 MODE_INHERITABLETHREADLOCAL。为什么?
【发布时间】:2015-11-05 05:17:06
【问题描述】:

我了解当我们在 Spring 安全策略中使用 MODE_THREADLOCAL 和 MODE_INHERITABLETHREADLOCAL 时会发生什么以及发生了什么。我不明白的是,为什么有人会使用 MODE_THREADLOCAL 而不是 MODE_INHERITABLETHREADLOCAL。

  1. 使用其中一个是否会影响内存。如果有,是不是 足够重要吗?
  2. 使用 MODE_INHERITABLETHREADLOCAL 的典型业务/功能用例是什么?
  3. 使用其中一种性能有何不同?

【问题讨论】:

    标签: security spring-security thread-local


    【解决方案1】:
    1. 使用两者对内存的影响可以忽略不计

    2. 在某些环境中,通常会启动新线程来执行后台任务。有时开发人员不希望创建的 Thread 自动包含 SecurityContext。在这些情况下,最好使用 MODE_THREADLOCAL。如果您代表当前用户启动任务,则可能需要传播 SecurityContext。在这种情况下,最好使用 MODE_INHERITABLETHREADLOCAL。

    3. 两种策略之间的性能可以忽略不计

    【讨论】:

    猜你喜欢
    • 2015-12-01
    • 2013-12-22
    • 2014-02-02
    • 2012-12-13
    • 2017-11-30
    • 2021-05-12
    • 2019-03-31
    相关资源
    最近更新 更多