.net - .Net中如何跨进程共享对象?

标签 .net distribution

我正在尝试跨单独的进程“共享”.net 对象。我有一种类型的进程,它是操纵一组域实体的 Web 服务。另一种类型的进程是窗口服务,它对同一组对象执行一些自动批处理。

除了将数据库作为两种类型的进程读取/写入对象的共享空间的典型解决方案之外,还有什么更好、更分布式的架构来让这些不同的进程查看并处理相同的对象?

我考虑过使用分布式缓存作为对象的共享存储,但这并不完全支持对象及其关系。插入分布式缓存的对象图被展平,对象最终存储在多个断开连接的副本中。

让进程相互发送对象的更新副本,“消息总线”是正确的方法吗?

或者还有其他解决方案需要考虑吗?

最佳答案

我建议使用 WCF 服务。对于本地使用(从 Windows 服务调用),您可以使用 netNamedPipeBinding。这允许您将来在物理上分离这两个过程。

关于.net - .Net中如何跨进程共享对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/763821/

相关文章:

c# - 接口(interface)和部分类

.net - Backgroundworker runworkercompleted 不开火

c# - 正则表达式按最后一个索引拆分

c++ - 像 discrete_distribution<float> 这样的随机分布

c# - 超时立即取消阻塞操作

C# 按钮不重新定位自己

java - Maven3排除从父pom继承的不必要的依赖项进行分发?

algorithm - 存储概率分布而不保存单个值

c++ - boost::math::erf的算法

r - R中正态分布函数的逆/逆