2

在某些情况下,我们需要在两个 Service Fabric 服务之间传递大量数据。

让我们调用第一个服务监视器和第二个搜索。

Monitor 实现了一个 Actor,它定期调用 Search 并对结果进行处理。

Monitor actor 接口和 Search 远程服务接口都具有以下属性:

[assembly: FabricTransportActorRemotingProvider(RemotingListener = RemotingListener.V2Listener, RemotingClient = RemotingClient.V2Client, MaxMessageSize = 1073741824)]

根据我对这个问题这个 API 文档这个讨论的理解,这应该可以工作。然而,事实并非如此。

对 Search 的调用有效,但 Monitoring 在调用返回时抛出“Fabric Message is too large”。

任何人都可以帮忙吗?我要去找一份挖沟的工作。

4

1 回答 1

1

感谢 Hans Passant 提出了 Remy 在此链接中建议的替代方案。

我最初驳回了这个建议,因为在第一次回复该建议后,有人直接表示他们正在使用 Actors,因此答案无法使用。

原来,只是添加

<Section Name="TransportSettings">
    <Parameter Name="MaxMessageSize" Value="1073741824" />
</Section>

到 Monitor Actor 项目的 Settings.xml 文件解决了这个问题。

于 2018-06-06T18:23:25.003 回答