美文网首页NETSUITE开发者实战培训
【缓存/误区/解读】关于N/cache两到三个小时就会被重置的解

【缓存/误区/解读】关于N/cache两到三个小时就会被重置的解

作者: e85a69573d55 | 来源:发表于2019-12-01 11:02 被阅读0次

    背景

    N/cache在很多场景中会使用到,比如优化重复查询、比较长时间间隔的身份验证、Token令牌获取等。

    然而在实际使用过程中可以发现,这个cache虽然API有设置存活时长,而且默认是永远有效,但是压根不是那么回事,一般两到三个小时就会翘辫子。

    解读

    我们看看cache.GetOptions的第三个参数ttl的解释:

    The duration, in seconds, that a value retrieved by the loader should remain in the cache. The default time to live, or TTL, is no limit. The minimum value is 300 (five minutes).

    这个没毛病,按照文档的理解应该是我如果给定了值应该就可以存留多久。

    然鹅,这个并不是承诺。

    1、默认是永久存活,但是我们账号的instance不可能永远在线啊,服务重启缓存肯定是翘辫子两的;

    2、基于第一点,我在这里设置时长有点自我催眠或自作多情,因为系统只承诺存活期不会超过你设置的值,但并没有承诺缓存会存活这么久;

    3、我推测这个时长会跟我们账号负责这一块资源调配的硬件有关,比如Tiers、cloud plus个数等。目前我看到的所有时间都不会超过两小时;

    原文

    Applies To

    Product:NetSuite 2019.2

    Scenario

    Time To Live for cache object from N/Cache

    Solution

    SuiteScript 2.0's cache object has an option to set the Time To Life (TTL) of a value. This determines how long the value will remain in the cache.

    Although there is not maximum limit as to how long can you set the value to stay in the cache using this option, it was found that through a couple of tests that the value generally only stays up to 2 to 3 hours regardless of the value set on the property even the value that was set is greater than 3 hours.

    相关文章

      网友评论

        本文标题:【缓存/误区/解读】关于N/cache两到三个小时就会被重置的解

        本文链接:https://www.haomeiwen.com/subject/aplzwctx.html