问题标签 [akka.net-persistence]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
73 浏览

akka.net - Akka.net - 每次创建新对象时加载所有日志数据

每次我在 Akka.NET 中创建一个类型的新对象时。该类型的整个 Journal 被加载到构造函数中

我的测试:

这是不断受到打击的构造函数,日志中的每个条目一次

如果我截断日志,我的测试会立即通过。如果日志中有数据,它会为每个项目命中类型的构造函数......

0 投票
1 回答
55 浏览

.net - 如何为演员的商店对象创建共享列表?

我想计算商店中货物挑选的平均完成时间。拣货模块将在拣货完成时向 Actor A 发送一条消息,其中包含完成时间和商店名称。就像希望每次在不同商店中完成拣货操作时,它都会发送一条消息,说明完成时间和商店名称到 Actor A。Actor 将这些消息存储在一个共享列表中。有时,另一个演员 B 会问演员 A 在商店 X 完成挑选所需的平均时间是多少。我的问题是如何将消息存储在 SHARED LIST 中,这将是演员 A 类型的任何演员?

0 投票
1 回答
685 浏览

akka.net - Akka.net 集群分片:无法注册协调器

我正在尝试通过创建一个简单的项目来设置 akka.net 集群分片。

项目布局:

Actors - 定义一个actor和消息的类库。被其他项目引用

Inbound - 启动 ShardedRegion 并且是唯一参与集群分片的节点。并且也应该是主持协调员的人。

MessageProducer - 将仅托管 shardedregion 代理以将消息发送到 ProcessorActor。

灯塔- 种子节点

上传的图像显示协调器单例未初始化,通过共享区域代理发送的消息未传递。

根据 petabridge 的博客文章petabridge.com/blog/cluster-sharding-technical-overview-akkadotnet/,我通过设置 akka.cluster.sharding.role 将灯塔排除在参与集群分片之外,因此协调员不参与在其上创建。

不知道我错过了什么才能让它工作。

0 投票
1 回答
190 浏览

akka.net - 使用 Akka.Persistence 配置时出现 System.Format 异常

我正在努力解决解析我的Akka.Net配置文件导致的System.Format异常。

我知道异常源于配置的持久性块:

反映异常的输出如下:

我的整个配置如下:

以下行导致我描述的异常:

总之,我是 Akka.Net 的新手,并且正在努力解决为什么会发生此异常。

0 投票
2 回答
102 浏览

akka.net - 为什么 akka.persistence 仍然有 beta 版本?稳定吗?

为什么 akka.persistence 仍然在 nuget 包上发布 beta 版本。这是否意味着它仍然不稳定并且不适合用于生产应用程序?

0 投票
1 回答
735 浏览

c# - 如何从后面的 C# 代码为 akka.net 持久性参与者设置连接字符串

我使用了配置为 sql server 插件的持久性actor。下面是我的 hocon 配置。

这里数据源连接字符串设置为我的本地主机。

是否可以在演员系统初始化之前从 C# 代码中设置此连接字符串?

0 投票
1 回答
379 浏览

sql-server - Akka .NET 连接池超时问题

我们正在使用 Akka.NET 创建一个新系统,并有一个带有分片和持久性的基本集群设置。

我们使用了官方文档以及一些 Petabridge 博客文章来让分片正常工作。但是,我们遇到了一个问题,即分片超出了 SQL Server 连接池允许的最大连接数。因此,我们收到以下消息...

2017-04-20 14:04:31.433 +01:00 [警告]“超时。在从池中获取连接之前已经过了超时时间。这可能是因为所有池连接都在使用中,并且最大池大小为到达。”

我们相信当分片更新分片日志时会发生这种情况。

为什么分片模块不能正确管理其 SQL 连接?这里有配置问题吗?

发生这种错误时是否可以重试?就目前而言,我们会丢失此错误的每个实例的消息。

这是相关的HOCON

0 投票
1 回答
523 浏览

c# - 使用 C# 反序列化 akka.net 持久性消息

我使用 akka.net 持久性将一些消息类型存储在 sql server 数据库中。在那个业务场景中它是有效的。在其他情况下,我只想使用 C# .net 反序列化消息并查看没有 akka.net 的消息属性。怎么可能?

0 投票
1 回答
519 浏览

.net - Akka.net 持久性 Actor 恢复失败,消息更改为新属性

0 投票
1 回答
518 浏览

c# - Akka.NET 持久性如何处理包含 IActorRef 的重播消息?

如果我向 Akka.NET Actor 发送一条消息,该消息是一个包含 IActorRef 的对象,然后持久保存该消息,写入日志表的 JSON 如下所示:

如果我理解这一点,这只是对演员实例的引用;创建它所需的“道具”未存储在此消息中。

奇怪的是,我重新启动应用程序后看到了一个对象。但是,正如预期的那样,它并没有像重启之前那样构建。这个演员是哪里来的?Akka Persistence 是否找到了一个“足够相似”的演员并使用它来代替?

以下 C# 测试应用程序创建一个对象并将其绑定到其他三个对象之一的消息。在处理了参与者系统之后,从持久性(SQL Server)中重新创建该对象并检查引用。

我的预期行为是以下任何一种(我不确定什么是最合适的):

  • 无法创建参与者,因为它的一条消息包含无法解析的引用。
  • Actor 引用为空,因为它无法解析。
  • 演员参考指向死信或类似的东西。

控制台输出:

C#:

霍康:

有人可以评论这里的行为吗?谢谢你。