出于 GDPR 的原因,我需要确保不存储不再需要的客户数据。在查看 Service Fabric Actors 时,我不确定“垃圾收集”的真正含义。
[StatePersistence(StatePersistence.Persisted)]
internal class Actor1 : Actor, IActor1
{
public Actor1(ActorService actorService, ActorId actorId)
: base(actorService, actorId)
{
}
public Task PingAsync(CancellationToken cancellationToken)
{
return Task.CompletedTask;
}
}
IActorService actorServiceProxy = ActorServiceProxy.Create(
new Uri("fabric:/MyApp/MyActorService"), partitionKey);
// ...
do
{
PagedResult<ActorInformation> page = await actorServiceProxy.GetActorsAsync(continuationToken, cancellationToken);
// ...
在测试环境中枚举参与者实例时,在我看来,参与者信息至少保留了 2 个月,即使参与者没有任何存储状态。
我发现多篇文章提到如果演员有剩余状态,我将需要手动删除他们,但在我的情况下,唯一的“状态”将是 actorId“存在”的事实。如果我将用户电子邮件地址之类的敏感信息用作 actorId,Service Fabric 是否会自行删除有关 actorId 的信息?