|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
“对于MySQL数据库,无论是在开发方面,还是支持方面,现在有大量强大的MySQL学习教程可以选择。每一个新手开发者可以轻松地使用MySQL数据库进行开发。 本文概述了怎样使用SQLServer2005中新增的ServiceBroker功效,加速并简化基于异步列队操纵的SQLServer使用程序的开辟历程。(请注重,在示例文件中,程序员的正文利用的是英文,本文中将其译为中文是为了便于读者了解。)
1、弁言
SQLServer2005的一个次要成绩是能够完成牢靠、可扩大且功效完美的数据库使用程序。与.NETFramework2.0大众言语运转库(CLR)的集成使开辟职员能够将主要的营业逻辑与存储历程兼并,而T-SQL和XML中的新增功效扩大了数据操纵的可用局限和开辟职员可用的存储功效。另外一个主要功效是SQLServerServiceBroker,它为数据库使用程序增添了牢靠、可扩大、散布式异步功效。
2、为何要编写异步列队操纵?
在开辟SQLServer2005时,我们与乐成开辟过年夜型可扩大数据库使用程序的职员举行了扳谈。了局发明他们几近一切的使用程序中都有一个或多个操纵是以异步列队体例实行的。股票买卖体系中的结算举动是列队的,如许能够在背景举行结算,在前端处置其他买卖。定单输出体系中的发货信息放在一个列队中,稍后将由另外一台服务器(一般位于其他地位)上运转的发货体系读取。游览预订体系在客户填写完线路后再举行实践的预订,并在预订完成后发送确认电子邮件。在一切这些示例中,很多事情都是经由过程异步体例完成的,从而进步了体系的呼应速率,因而用户不必守候事情完成绩能够收到呼应。
在年夜多半年夜型体系中,经由细心剖析后都能够发明,很多处置都能够经由过程异步体例完成。固然使用程序中的列队义务不必当即完成,但体系必需确保这些义务可以牢靠地完成。ServiceBroker使异步列队义务的实行牢靠而且易于完成。
使使用程序中的部分义务异步实行的另外一个上风是这些义务的处置事情能够在资本可用时完成。假如定单输出体系中的发货义务能够从行列中实行,发货体系就无需具有处置峰值定单负载的才能。在很多定单输出体系中,峰值定单率多是均匀定单率的两倍或三倍。因为定单输出体系必需具有处置峰值负载的才能,因而大批处置才能在很年夜一部分工夫内都处于闲置形态。假如在呈现峰值时对异步义务举行列队并在余暇时实行,将明显进步体系的使用率。
表里面的记录数量越多,这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引,MySQL无需扫描任何记录即可迅速得到目标记录所在的位置。 |
|