我有一个计划的脚本执行,需要在两次运行之间保留一个值。每次运行都会更新。直到我遇到这个问题,使用gs.setProperty似乎是很自然的地方:
设置系统属性(sys_properties)时应注意 使用此方法,因为它会导致系统范围的缓存刷新。每次冲洗 重建缓存时可能会导致系统降级。如果必须 经常更新,因此不应将其存储为系统属性。在 通常,只应将值放在sys_properties表中, 不要经常更改。
创建一个单独的表来存储单个标量值似乎有点过头了。有没有更好的存储空间?
答案 0 :(得分:1)
如果实例中需要使用首选项,则可以设置。另一个地方可能是事件表。将事件与数据一起记录在parm1或parm2中,并在下次运行时查询最新事件。
我会避免制作一张桌子,因为这会对某些客户产生成本影响。我同意sys_properties
。
var encrypter = new GlideEncrypter();
var encrypted = encrypter.encrypt('Super Secret Phrase');
gs.info('encrypted: ' + encrypted);
var decrypted = encrypter.decrypt(encrypted);
gs.info('decrypted: ' + decrypted);
/**
*** Script: encrypted: g/bXLJHa7xNRMKZEo5q/YtLMEdse36ED
*** Script: decrypted: Super Secret Phrase
*/
这样,只有管理员才能真正读取此数据。同样,如果我没记错的话,7天后会清除sysevent表。您可以让作业在事件存储在内存中后立即将其删除。