NServiceBus教程-持久化

NServiceBus的各种特性需要持久性。其中有超时、传奇和订阅存储。

四个持久化技术在NServiceBus在使用:

读到安装Raven DB如何连接 .

使用NHibernate的持久性

从NServiceBus V3.0,支持NHibernate持久性位于一个单独的组装。的配置被进一步简化V4.0 +。

NHibernate的持久性v3 . x.

可用是什么?

下面的表总结了什么是可用的,如何配置每个特性。

类型

内存中

RavenDB

nHibernate

MSMQ

超时

X

X

X

v3.3.0不支持

订阅

X

X

X

X

传奇

X

X

X

- - - - - -

网关

X

X

X

- - - - - -

经销商

- - - - - -

- - - - - -

- - - - - -

X

存储你的订阅MSMQ不适合场景需要规模的端点。原因是,订阅队列不能在多个端点之间共享。

如果自我托管,您可以配置每个功能的持久性技术。例如,在RavenDB存储订阅内存和超时,使用这段代码:

static void Main()
{
    Configure.With()
    .Log4Net()
    .DefaultBuilder()
    .XmlSerializer()
    .MsmqTransport()
    .IsTransactional(true)
    .PurgeOnStartup(false)
    .InMemorySubscriptionStorage()
    .UnicastBus()
    .ImpersonateSender(false)
    .LoadMessageHandlers()
    .UseRavenTimeoutPersister()
    .CreateBus()
    .Start(() => Configure.Instance.ForInstallationOn<NServiceBus.Installation.Environments.Windows>().Install());
}

和NServiceBus v4.x

static void Main()
{
    Configure.Serialization.Xml();

    Configure.Transactions.Enable();

    Configure.With()
    .Log4Net()
    .DefaultBuilder()
    .UseTransport<Msmq>()
    .PurgeOnStartup(false)
    .InMemorySubscriptionStorage()
    .UnicastBus()
    .RunHandlersUnderIncomingPrincipal(false)
    .LoadMessageHandlers()
    .UseRavenTimeoutPersister()
    .CreateBus()
    .Start(() => Configure.Instance.ForInstallationOn<NServiceBus.Installation.Environments.Windows>().Install());
}

当你使用NServiceBus.Host。exe开箱即用的,您可以使用一个可用的配置文件。下面的表显示了持久性技术每个预构建配置文件默认配置。此外,您可以重写默认配置。阅读更多关于配置文件 ,这里太.

下表总结了不同的持久化技术被内置的配置文件。

配置持久性技术之前,为了避免覆盖你的配置,配置文件检查是否使用其他类型的存储。

- - - - - -

内存中

RavenDB

nHibernate

MSMQ

超时

lite

集成/生产

- - - - - -

保持队列管理

订阅

lite

集成/生产

- - - - - -

- - - - - -

传奇

lite

集成/生产

- - - - - -

- - - - - -

网关

lite

多站点

- - - - - -

- - - - - -

经销商

- - - - - -

- - - - - -

- - - - - -

经销商

默认的持久化技术

AsAServer角色激活超时经理。这个角色不明确地确定使用哪一个持久化技术。因此,默认超时持久化技术经理(RavenDB)。

类似于 AsAServer角色,不同的概要文件激活不同NServiceBus特性,没有显式配置持久化技术。

阅读更多关于不同的配置文件 .

时间: 2024-10-08 02:56:19

NServiceBus教程-持久化的相关文章

NServiceBus教程-持久化配置

当配置在NServiceBus v5持久性,秩序是非常重要的.最后赢得持久性配置选项.我们看看一些例子. 示例1 在本例中最后一个配置选项将会覆盖前面的所有选项. v5.2 v5.0 编辑 var config = new BusConfiguration(); config.UsePersistence<NHibernatePersistence, StorageType.Outbox>(); config.UsePersistence<InMemoryPersistence, Sto

NServiceBus教程-消息传递与处理

nservicebus"的容错默认"设计的一部分,基础设施管理事务自动所以你不需要记住所有的线程和状态管理要素配置. 客户端和服务器 理想情况下,服务器代码处理消息事务,但它往往不是客户所需,特别是桌面应用程序.这是一个之间的差异asa_client和asa_server设置的通用主机在nservicebus. 指定交易代码 如果你不使用通用的主机,您可以指定当前端点应处理消息事务设置istransactional(真的).后msmqtransport().(版本3)或usetrans

NServiceBus教程-NServiceBus和WCF

WCF中缺少的最主要的事情是发布/订阅,但为什么你必须建立它自己吗?NServiceBus,你把它弄出来. 下一个重要的事情是容错.异常导致WCF代理休息,需要"刷新"的代码,但调用数据容易被丢失.NServiceBus提供完整的系统回滚.不仅您的数据库保持一致,但是你的消息返回队列和不丢失有价值的数据. 对纯MSMQ 无论你是看MSMQ绑定对MSMQ WCF或直接编程,在这两种情况下,你必须处理pub / sub和所需的事务和异常管理完整的容错.你也必须处理与MSMQ长时间运行的流程

nservicebus教程-目录

表的内容 开始 坚持NServiceBus 扩展 每天 举办 管理和监控 发布订阅 长时间运行的流程 定制 版本控制 常见问题解答 样品 开始 概述 NServiceBus一步一步向导 架构原则 事务消息处理 NServiceBus和WCF NServiceBus和WebSphere声波 NServiceBus和BizTalk 可靠的消息传递没有MSDTC 坚持NServiceBus 坚持NServiceBus 在NServiceBus安装使用RavenDB 在NServiceBus连接使用Ra

《物联网框架ServerSuperIO教程》-19.设备驱动和OPC Client支持mysql、oracle、sqlite、sqlserver的持久化。v3.6.4版本发布

19.设备驱动和OPC Client支持mysql.oracle.sqlite.sqlserver的持久化 19.1     概述 ServerSuperIO支持设备驱动和OPC Client采集的数据信息按标签集合写入mysql.oracle.sqlserver和sqlite数据库.现在还支持写入实时数据库,例如:edna.golden和corert等.同时支持实时数据库和关系数据库主要考虑项目环境和支撑的能力. 本质上还是统一继承IDataPersistence接口,然后扩展完成的操作.如果

Spring Cloud Alibaba基础教程:Nacos的数据持久化

前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式> <Spring Cloud Alibaba基础教程:使用Nacos作为配置中心> <Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解> <Spring Cloud Alibaba基础教程:Nacos配置的多环境管理> <Spring C

Redis教程(十):持久化详解

转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/137.html 一.Redis提供了哪些持久化机制: 1). RDB持久化:    该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘.        2). AOF持久化:    该机制将以日志的形式记录服务器所处理的每一个写操作,在Redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的.    3). 无持久化:    我们可以

可持久化线段树(主席树)新手向教程

嗯今天来讲讲一个高端玩意,叫可持久化线段树. 新手向,有点耐心是一定可以懂的 知识储备 首先你得知道线段树是什么,不然也不需要学这个东西 线段树 引入 现在呢我们来思考一个问题,如果题目有需要保存线段树更改前的各个历史版本(比如给一个数列的前n项各建一棵线段树),我们应该怎么存? 每个版本存一棵树吗? 不不不太多了会爆空间的QAQ 事实上,如果要存储前我们只需要修改少量点就可以,因为每两个版本间有很多的重复部分. 解析 圈里面是这个区间包含的数字在数列里出现的次数. 比如:现在我们有数列 2 1

NServiceBus开发

使用NServiceBus开发分布式应用 系列主题:基于消息的软件架构模型演变 NServiceBus 是一个.Net平台下开源的消息服务框架,这类产品有时也被称作ESB(Enterprise Service Bus)——企业服务总线.NServicebus官方地址:http://particular.net/git: https://github.com/Particular/NServiceBusNServiceBus原作者Udi Dahan,该产品最早于2006年发行了第一个版本,这是一个