自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(36)
  • 收藏
  • 关注

转载 19-EasyNetQ:用EasyNetQ.Hosepipe重新提交错误信息

EasyNetQ.Hosepipe是EasyNetQ队列管理工具。用来取回队列中的消息并重新发布这些消息。还可以用它来检测错误队列,并重试发布消息。用法EasyNetQ.Hosepipe.exe <command> [<option:value> ..]命令dump 转存队列中的所有消息到一个指定的目录中。 注意:这将为每一个消息创建...

2017-07-17 14:17:00 120

转载 18-EasyNetQ:发生错误的情况

这一篇文章让我们看看在消息系统中可能发生的各种错误的情况下,看下EasyNetQ如何处理它们。订阅服务挂了当你写了一个windows 服务,用来订阅一个NewCustomerMessage消息。如果这个服务失败时会发生什么呢?为了效率,EasyNetQ为订阅功能实现了一个基于内存的内部使用的队列。消息通过网络从RabbitMQ中接收到后,会把消息放到这个内存队列中。一个订阅者线程从...

2017-07-15 15:48:00 260

转载 17-EasyNetQ:非泛型的发布&订阅扩展方法

自从EasyNetQ第一个版本开始,它就可以发布/订阅特定类型的消息。bus.Subscribe<MyMessage>("subscriptionId", x => Console.WriteLine(x.Text));bus.Publish<MyMessage>(theMessage);但是,在运行期间,你怎么去发现消息类型?例如:...

2017-07-14 18:40:00 133

转载 16-EasyNetQ之自动订阅者

EasyNetQ v0.7.1.30版本有了一个简单AutoSubscriber。你能够使用它很容易的去扫描指定程序集中实现了IConsume 或 IConsumeAsync接口的类,然后这个自动订阅者让这些消费者订阅到你的事件总线中。IConsume的实现将使用事件总线的Subscribe方法,同时IConsumeAsync的实现使用事件总线的SubscribeAsync方法,详情参看...

2017-07-14 17:52:00 205

转载 15-EasyNetQ之对延迟消息插件的支持

RabbitMQ延迟消息插件仍然在实验阶段。你使用这个功能要自担风险。RabbitMQ延迟消息插件为RabbitMQ增加了新的交换机类型,允许延时消息投递。EasyNetQ为交换机通过定义一种新的日程类型:DelayedExchangeScheduler来支持这种能力。这样允许你使用之前同样的Future Publish接口,但是取消Future Message会抛出异常。因为...

2017-07-12 14:15:00 173

转载 14-EasyNetQ之用Future Publish发布预定中事件

很多商业流程需要事件在未来的时间按照预定时间发布。例如,在初次与客户接触后,可以在未来某个时间去电话回访客户。EasyNetQ可以用它的Future Publish功能帮你实现这个功能。举例:这里我们使用FuturePublish扩展方法去预定未来一个月后打销售回访电话。注意:FuturePublish使用UTC时间。var followUpCallMessage = new Foll...

2017-07-11 23:22:00 105

转载 13-EasyNetQ之发布者确认

AMQP发布消息默认情况下是非事务性的,不能确保你的消息真正送达代理。AMQP可以去指定事务性发布,但是RabbitMQ这样会非常慢,我们没有让EasyNetQ API去支持此功能。为了高效的确保投递成功,RabbitMQ推荐使用'Publish Confirms'。简单来讲,这是AMQP的一个扩展,当你的消息被代理成功接收以后,提供了一个回调支持。成功接收意味着什么呢?一个瞬态消...

2017-07-11 21:37:00 138

转载 12-EasyNetQ之消息版本控制

为了能够支持消息版本控制,你需要确保这个必要的组件已配置。最简单的实现是这样的:var bus = RabbitHutch.CreateBus("host=localhost", services => services.EnableMessageVersioning());一旦消息版本功能启动,你必须显示的选择你要版本化的消息加入版本控制。// 这个消息不是被版本...

2017-07-10 23:38:00 142

转载 11-EasyNetQ之多态发布和订阅

你能够订阅一个接口,然后发布基于这个接口的实现。让我们看下一个示例。我有一个接口IAnimal和两个实现Cat和Dog:public interface IAnimal{ string Name { get; set; }}public class Cat : IAnimal{ public string Name { get; set; } pub...

2017-07-09 23:34:00 116

转载 10-EasyNetQ之控制队列名称

EasyNetQ默认行为,当生成队列的名称时,使用消息类型名+subscription Id。例如:PartyInvitation 这个消息类型,命名空间为 EasyNetQ.Tests.Integration,生成的队列名称为: EasyNetQ.Tests.Integration.PartyInvitation:EasyNetQ.Tests_schedulingTest1,这里假设s...

2017-07-08 23:10:00 127

转载 9-EasyNetQ之基于主题的路由

RabbitMQ有一个很酷的功能,基于主题的路由,这个功能允许订阅者基于多个条件去过滤消息。一个主题是由点号分隔的单词列表,随消息一同发布。例如:“stock.usd.nyse” 或 "book.uk.london" 或 "a.b.c",这些可以是任何你喜欢的单词,但通常是一些消息的属性。主题字符串限制最多255个字符。去发布一个主题,简单的通过使用带主题参数的Publish重载方法"...

2017-07-07 01:08:00 126

转载 8-EasyNetQ之Send & Receive

鉴于Publish/Subsrcibe和Request/Response模式是位置透明的,在这个方面,你不需要去指定消息的消费者具体所处的位置,Send/Receive模式是特别针对通过命名队列来设计的。它也使得不用假定关于什么样的消息类型能发送到这个队列。这意味着,你能够发送不同类型的消息到相同的队列中。Send/Receive模式对于创建“命令管道”,在那种你想为单个命令处理器建立...

2017-07-07 00:08:00 215

转载 7-EasyNetQ之Request & Response

EasyNetQ也支持Request/Response这种方式的消息模式。这种方式很容易在client/Server应用中执行,客户端发送一个请求到服务器,服务器然后处理请求后返回一个响应。和传统的RPC机制不同,EasyNetQ request/response操作不需要有一个名字,仅仅需要简单的定义一对request/response消息类型。另外,不同于传统的RPC机制包括了众多...

2017-07-06 00:04:00 149

转载 6-EasyNetQ之订阅

一个EasyNetQ订阅者订阅一种消息类型(消息类为.NET 类型)。通过调用Subcribe方法一旦对一个类型设置了订阅,一个持久化队列就会在RabbitMQ broker上被创建,这个类型的任何消息都会被发送到这个队列上。订阅者无论什么时候连接上,RabbitMQ都将会将消息从队列中发送给订阅者。不管消息什么时候送达到,订阅这个消息的订阅者需要给RabbitMQ一个可执行的操作。我...

2017-07-06 00:01:00 268

转载 5-EasyNetQ之Publish(黄亮翻译)

EasyNetQ支持的最简单的消息模式是发布/订阅.这个模式是一个极好的方法用来解耦消息提供者和消费者。消息发布者只要简单的对世界说,“这里有些事发生” 或者 “我现在有一个信息”。它不关心有没有人监听,或者接收者是谁,或者接收者在那里。我们能够添加和移除特定类型的消息的订阅者,不需发布者做任何的重新配置。我们也能够有多个发布者发布相同的消息,添加和删除发布者也不用其他的发布者或者订阅者...

2017-07-05 01:05:00 87

转载 4-EasyNetQ之Logging(黄亮翻译)

EasyNetQ提供了一个Logger接口 IEasyNetQLogger:public interface IEasyNetQLogger{ void DebugWrite(string format,params object[] args); void InfoWrite(string format, params object[] args); voi...

2017-07-02 16:02:00 137

转载 2-用EasyNetQ连接RabbitMQ(黄亮翻译)

如果你连接过关系数据库,例如SQL Server。你会发现EasyNetQ处理connections有点奇怪。和关系数据库通讯一直都是通过client开始的。Client 打开一个连接, 发出一个SQL命令,如有必要时,处理结果,然后关闭连接。一般建议是你维持一个打开的连接,时间要尽可能短,通过API断开连接池。诸如与RabbitMQ这样的消息代理会话,是有些不同的,因为连接倾向于在应...

2017-07-02 12:23:00 165

转载 3-在EasyNetQ上使用SSL连接(黄亮翻译)

EasyNetQ可以通过SSL进行连接。这篇指南的作者Gordon Coulter最初为回应一个提问写的。首先,你必须仔细依据https://www.rabbitmq.com/ssl.html文章中的步骤。我花费了很多时间尝试让openssl这部分能运作起来,然后为了让他按我的需要去运作而不仅仅只是一个demo,我又花费了很多时间。第一次通过SSL让EasyNetQ运作时,在他们为了...

2017-07-02 12:23:00 84

转载 1-EasyNetQ介绍(黄亮翻译)

EasyNetQ 是一个容易使用,坚固的,针对RabbitMQ的 .NET API。假如你尽可能快的想去安装和运行RabbitMQ,请去看入门指南。EasyNetQ是为了提供一个尽可能简洁的适用与RabbitMQ的.NET类库。为了实现这些目标,EasyNetQ提供一种自认为你会在.NET下使用RabbitMQ的视图。为了保持使用灵活性,简单起见,EasyNetQ强制使用了一些简单的...

2017-07-02 12:21:00 185

转载 珍爱生命,远离肥胖,远离过劳死

珍爱生命,远离肥胖,远离过劳死 从初中,到高中,直到大学我一直热爱各种运动。各种与体育有关的荣誉也得过不少。 初中: 学校冬季长跑第一名,校乒乓球冠军。 高中:两届校篮球冠军、县足球队的主力前锋,参加过3届市足协杯,最好名次足协杯季军。球友无数。 高一时,就加入校篮球队,校篮球历...

2011-11-26 17:14:00 98

转载 第一章 架构

1.1概述一个(非常)高层的NHibernate 架构图。这个图显示了NHiberante使用数据库和配置数据来提供在应用程序中的持久化服务(和持久化对象)。我们跟愿意去展示一个更详细的运行时架构图。不幸的是,NHiberante是弹性的和支持多种方式。我们将显示两个极端。这个“lite”架构图已经有了为应用提供它自己的ADO.NET连接和管理他自己的事务。这个approach使用了N...

2007-04-17 15:53:00 49

转载 NHiberante 中文参考文档(翻译)序言

NHiberante 中文参考文档(初次翻译+英文很烂+字面直译+不怕鸡蛋板砖)序言: 在当前的企业级平台中,使用面向对象软件和关系数据库可能是笨重的和浪费时间的工作。NHibernate是提供在.NET平台上的对象/关系映射工具。这里提到的对象/关系映射(ORM)是指使用基于SQL架构从对象模型到关系数据模型映射的技术。...

2007-04-17 15:36:00 116

转载 NET访问MySQl数据库中文乱码解决

NET访问MySQl数据库中文乱码解决一.环境准备:1. 安装.NET FrameWork1.12. 安装MySQL 4.1.xwww.mysql.com3. 安装Mysql connector for .Net1.0 www.mysql.com二.问题描述:如题三.问题分析:Mysql从4.1以...

2007-03-21 09:35:00 77

转载 "IIS无法启动"问题解决方法

一大早来到公司,我打开电脑发现部署在我本机上Web程序无法打开。我第一个想到的是可能IIS没有启动。于是打开控制面板->管理工具->服务 ,查看列表发现:IIS Admin已经自动启动,但是World Wide Web Publishing 服务没有启动。于是我手动启动World Wide Web Publishing 服务,令人郁闷的是,系统提示:参数87...

2007-03-07 11:46:00 135

转载 Bcp 命令注意事项

1) Bcp In 时,是不允许插入主键重复数据的。假如需要Bcp方式更新数据库, 可以先新建一个与待更新的表同结构的临时表 去除临时表的外键约束 然后Bcp In 到临时表 最后与临时表的数据更新待更新的数据表。2)去除数据库所有表外键约束的SQL命令是: EXECsp_msforeachtable@command1=...

2007-01-08 15:28:00 171

转载 在Java程序中,通过JDBC访问数据库

在java程序中,通过JDBC访问数据库有如下步骤:(1)装载并注册数据库的JDBC驱动程序: 以下是四种jdbc驱动装载方法:1) 装载 JDBC-ODBC Driver :Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//jdk中自带,默认已经注册,不用再注册2)装载并注册OracleDri...

2006-07-10 16:11:00 95

转载 Sun完整发布Java API文档中文版

Sun 中国技术社区经过10月的努力,目前已经将Java SE 5.0的全部API文档中文化。转载于:https://www.cnblogs.com/HuangLiang/archive/2006/06/02/JavaAPI.html

2006-06-02 11:21:00 83

转载 HTML学习笔记

Html学习笔记想系统学习一下web开发,那就不能不先从Html开始学起:一 什么是HTML?网络浏览器可以识别并解释的一种编码,被成为Html代码。1)标识符一个Html页必须要有的标识符是:<html> <body></body></html>其中网页的内容都在<body></body...

2006-05-16 17:28:00 62

转载 CommandWrapper VB.Net代码 生成器

我们在使用MS Enterprise Library Data Block 对Oracle数据库表做增、删、改。通常使用Database对象 的UpdateDataSet()方法。例如:数据库有一个表Test_01,此表包括两个字段分别是 :idchar(2)notnull,namechar(6)对数据集的进行增删改(略)后,通过UpdateDataSet()方法更新...

2006-04-20 19:15:00 84

转载 利用Windows消息循环,使窗体不能改变大小

作者:Christoph Herold 这篇文章介绍如何使窗体仅能被最大化,最小化!介绍 你是否曾经用.NET 创建一个窗体,使窗体仅能被最大化、最小化?使用标准可用的选项实现是十分困难的.但是...

2006-04-07 19:06:00 71

转载 郁闷,VS2005调试运行报错!!!

今天重新安装了VS2005.在一切安装完毕后,打开VS2005,新建一个WinForm Application ,按F5运行,我期待的窗体没有出现,VS2005提示如下错误信息:我做了如下尝试,试图解决此问题,很不幸,问题依旧未能解决1)修复安装VS20052)卸载vs2005,重新安装3)重新安装全新的Winxp,安装vs2005另:此前我用第3种办法安装VS2005一直能正常使用。哪...

2006-03-23 00:57:00 63

转载 澡堂里的“智猪博弈”理论(转载)

今天看到一篇文章挺有意思,故转载之!发布者:孟鑫 发表日期:2006-03-17 16:26:00.263如果有一只猪去踩踏板,另一只猪就有机会抢先吃到另一边落下的食物。   博弈理论(game theroy)是现代经济学的基础理论之一,它所研究的是人们的决策选择以及相应的均衡问题。举一个经典的博弈案例有助于我们了解什么是博弈,这就是著名的“智猪博弈”。  这个例子讲...

2006-03-20 14:05:00 224

转载 关于Oracle中访问不同用户数据库对象

在Oracle中,同一数据库中,数据库用户都可以拥有属于自已的数据库对象,如表,存储过程,包等。属于自己的数据库对象,可以与其它用户的数据库对象名称相同。访问其它用户的数据库对象时,要在数据库对象前加待访问用户的用户名.例如:A用户访问B用户中的表tableA,应该这样写:select*fromB.tableA;转载于:https://www....

2006-01-06 00:40:00 156

转载 DotNet中的集合对象(2): Hashtable

Hashtable(哈希表)也是一个可变长的数组,表中的每个项目可以通过关键字Key值来访问.关键字一般是某个字符串,也可以是其它类型的对象.每个元素本身不是唯一的,但每个元素本身必需有一个惟一的关键字.usingSystem;usingSystem.Collections;classMyClass{privatestringm_String;publi...

2005-08-18 11:08:00 50

转载 DotNet中的集合对象(1): ArrayList

让我们来看看DotNet中System.Collections名字空间包含的可变数组对象.1)ArrayList(数组列表) 本质上ArrayList对象就是一个可变长的数组,可以根据需要添加元素.使用ArrayList的方法可以向数组列表中添加元素,或取出,修改某个元素. .Add()方法 usingSystem;usingSystem....

2005-08-16 18:08:00 62

转载 新博客开张喽!

我虽然一直享受着来自网上无数程序员写成的各类技术文章带来的乐趣,但是自己很少能写出点有意思的文章出来与大家共享.每当敲打键盘时,我总觉得自己积累的知识还不足以支撑起一篇技术性文章,所以很少动手写。希望自己加入博客园后,也能写出一些有意义文章来,帮助自己提高开发水平和语言组织能力,也作为今后的成长的见证.转载于:https://www.cnblogs.com/Huang...

2005-07-29 16:25:00 98

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除