surface pro4蓝牙鼠标integration service 是什么蓝牙设备

- 最好的系统光盘下载网站!
当前位置: >
> 详细页面
微软推送Surface Pro 4/Book三项驱动更新:修复CPU调节Bug
编辑:zhanghong
来源于:互联网
  8月31日消息,Surface Pro 4/Book今日迎来了三项驱动更新,现在拥有该设备的用户可以在设备上检查更新了,由于此次进行了三项更新,所以在更新的过程中要保持电量充足,更新完成后将修复CPU调节的Bug。
  更新内容摘要如下
  & Surface UEFI驱动更新
  & Surface Integration驱动更新
  & Surface Integration Service Device驱动更新
  UEFI,全称&统一的可扩展固件接口&(Unified Extensible Firmware Interface), 是一种详细描述类型接口的标准,这种接口用于操作系统自动从预启动的操作环境,加载到一种操作系统上,关于UEFI的更新一般比较重要。
  在更新的过程中,设备可能需要重启两次,所以碰到这种情况用户不必惊讶,也不要去强制开关机,还有就是设备的电量要保持在40%以上,如果在更新的过程中出现电量不足关机的情况,容易导致设备系统出问题。
频道热点资讯
本站发布的系统与软件仅为个人学习测试使用,请在下载后24小时内删除,不得用于任何商业用途,否则后果自负,请支持购买微软正版软件!如侵犯到您的权益,请及时通知我们,我们会及时处理。
Copyright&2011 系统之家(www.xitongzhijia.net) 版权所有 闽ICP备号-1使用 IBM BPM Advanced Integration Service 开发分布式 WS-A - 为程序员服务
使用 IBM BPM Advanced Integration Service 开发分布式 WS-A
凭证 IBM developerWorks 文章 ,IBM Business Process
Manager Standard
对该处置责罚情形的立场异常乐不雅观不雅观,是以未供应除夜量现成的功用来处剃头作的数据库事务成就。不外,侥幸的是,这些类型的初级功用已在 IBM Business
Process Manager Advanced(简称 IBM BPM)情形中获得处置,该情形供应了许多衔接功用,收受接管了一种加倍悲不雅观不雅观的立场对 IBM
Business Process Manager Standard 的加倍乐不雅观不雅观的立场供应弥补。本系列文章将展现 IBM BPM Advanced
若何行使一个 Advanced Integration Services (AIS) 完成,行使两种 Web 干事和 Web Services
Atomic Transaction (WS-AT) 和谈来治理两个不合数据库引擎(Microsoft SQL Server 和 IBM
DB2)之间的 ACID 全局散布式事务。该完成还展现了 BPM 中基于 SCA 的完成的自动提交和回滚功用,这些功用行使了
WS-AT。经由进程设置配备铺排事务中触及的 Web 干事(在本例中为 Charge 和 Credit Web
干事)的接口,可以完成这类治理类型,无需实行任何特殊的自界说代码完成。
本系列文章中供应的事务场景相反于 developerWorks 4 部份系列
中供应的场景,但在这个新场景中,这两个数据库未行使 BPEL 微流(microflow)中的 Java™
组件直接接见,而是经由进程两个事务 Web 干事来仲裁数据治理,一个干事行使 .NET 完成来接见 SQL Server,其他一个干事行使 Java
完成来接见 DB2。这些 Web 干事由一个企业干事总线 (ESB) 中介模块(在一个全局事务中)挪用,该模块被界说为一个 BPM Advanced
Integration Service 的完成。
本系列中供应的完成的焦点是一个事务 AIS。AIS 用于从一个 BPM 营业流程界说 (BPD) 挪用一个在 IBM Integration
Designer 中完成的干事。这类类型的集成方法已在 IBM developerWorks 文章: 中引见。
Web 干事可用于在一种自力于平台的方法下悍然功用和特色。具体来说,在这里描写的建议场景中,行使了两个(行使不合手艺完成的)Web 干事来 “仲裁”
对两个不合数据库的接见。
在与此地方描写的场景相反的场景中,一个团队(例如,精晓 Windows 和 .NET 的团队)可垦荒一个基于 Windows 的 Web 干事来接见
SQL Server 数据库,其他一个不合的团队(没需求然在不合时辰)可垦荒一个相反的 Web 干事来接见 DB2 数据库,但行使一种相反 JAX-WS
和 WebSphere Application Server 的 JEE
方法。这两个团队可在不合的组织中责任,并行使完整不合的手艺平台(正如我们将演示的那样)。
从手艺集成垦荒人员的角度讲,假定选择在 IBM Business Process Manager 中行使 SCA
编程模子的丁壮夜功用,那末不独一机遇重用优秀技巧手段,还无机遇行使 IBM Integration Designer 设计和垦荒的丁壮夜且靠得住的手艺
“根蒂根抵干事”,支持面向营业的干事的总体设计和垦荒。
请留意,本系列中行使的两个 Web 干事也可由 BPMN 流程在 IBM Process Designer
级别上直接挪用(禁用事务计策),但在这类情形下,两个干事(在各自的数据库上)实行的事务不会被视为位于不合个事务高下文中。要将两个干事(和触及的相关数据库)放在不合个全局事务高下文中,也可将它们完成为
IBM Integration Designer 所完成的基于 SCA 的 Advanced Integration Service
的一部份。具体来说,在这里描写的场景中,我们的选择是行使一个 ESB 中介模块,但您也可以行使 BPEL 微流(收受接管一种与之前的文章系列 “” 中供应的相反的体式格式)。
这个由 5 部份组成的系列文章将引见以下完成散布式事务场景的次要责任,并供应示例实行案例来演示该场景的功用:
树立数据库和设置配备铺排数据源(第 1 部份)
设置配备铺排事务支持并完成 2 个事务 Web 干事(第 2 部份)
在 Process Designer 中界说 BPMN 流程(第 3 部份)
在 Integration Designer 中,基于一个 SCA 中介 (ESB) 流,挪用两个事务 Web 干事来完成 AIS(第 4
剖析实行案例(第 5 部份)
本文残剩部份将概述该场景,并指点您实行初步设置,和数据库的树立和设置配备铺排。
场景完成细节
本文中描写的场景可运用在许多不合的案例和高下文中,但这里描写的完成是在以下产物和版本上实行的:
机械 A(一个名为 ADMINIB-PHG662G 的 Windows 7 竞赛争辩机),具有以下设置配备铺排:
操作零星:Microsoft Windows 7 Professional 64 位(带 Service Pack 1)。
数据库:Microsoft SQL Server 2008 Express Edition (X64)(带 Service Pack
3),10.0.5500.0 版。
在 SQL Server 上,一个 Bank1 数据库。
.NET Framework 4.0 版本 4.0.30319.1,用作运转时框架
Internet 信息干事 (IIS) 7.5,用作 Web 干事器和运用干事器(与 .NET Framework 连络行使)
一个 Charge .NET WCF (Windows Communication Foundation) Web 干事的完成,垦荒用于治理
Bank1 SQL Server 数据库上的扣费操作。
Visual Studio 2010,用作 C# (C-Sharp) 措辞中的 .NET Web 干事完成的集成垦荒情形
机械 B 是一个名为 IBMBPM 的 Windows Server 2008 干事器,具有以下设置配备铺排:
操作零星:Microsoft Windows Server
位(带 Service Pack 1)
数据库:IBM DB2 9.7 for Windows(DB2 v9.7.400.501、Fix pack 4、构建级别
s110330、IP23238)
BPM:IBM Business Process Manager Advanced Version 8.0.1.0
WebSphere Application Server Network Deployment
IBM Integration Designer 8.0.1.1
Process Designer 8.0.1.0
在 DB2 Server 上,一个 Bank2 数据库。
一个 Credit JAX-WS Web 干事的完成,用于治理 Bank2 DB2 数据库上的贷入操作。
备注:对本场景中行使的 BPM 8.0.1 Advanced,运用了截至 2013 年 5
月的最新的修复轨范系列。行使的准确的 IBM BPM 版本为 8.0.2_2136。
在 Windows 机械 A 上树立的基于 .NET 的 Web 干事将由 Windows Internet 信息干事 (IIS)
托管,外行使该干事之前,您必需先启用它。以下操作声名适用于 Windows 7 机械,但相反的步骤也可在其他 Windows 版本(好比 Vista
或 Windows Server 2008)上实行:
在 Windows 7 机械上,选择 Windows Start =& Control
选择 Programs and Features。
在左侧窗格中,单击 Turn Windows features on or off。
Windows features 对话框将会掀开。勾选 Internet Information
Services。
双击 Web Management Tools,然后双击 IIS 6 Management
Compatibility,接上去勾选 IIS 6 Metabase 和
IIS 6 Configuration Compatibility。
双击 World Wide Web Services,然后双击 Application
Development Features,接上去勾选 ASP.NET。
图 1 显示了一个启用了 IIS 的有用设置配备铺排。
图 1. 启用 Windows IIS
这里给出的完成的一个幽默方面是受支持的 Web 干事尺度的级别。具体来说,触及的两个 Web 干事支持 SOAP 1.1 和 WS-AT 1.1
尺度。 表 1 列出了这些尺度的命名空间。
表 1. 收受接管的 Web 干事版本和方法
此示例中收受接管的 1.1 版尺度
SOAP 1.1 命名空间
http://schemas.xmlsoap.org/soap/envelope/
WSDL 中的 SOAP 1.1 绑定
http://schemas.xmlsoap.org/wsdl/soap/
WS-AT 方法
http://docs.oasis-open.org/ws-tx/wsat/2006/06
WS-AT 尺度
http://docs.oasis-open.org/ws-tx/wstx-wsat-1.1-spec.pdf
选择为本示例收受接管这些尺度级别,是基于以下理论和理想斟酌成份:
最新的 Microsoft .NET 和 IBM WebSphere/IBM BPM 平台都为这些尺度级别供应了官方支持。
这些尺度的普及和普遍收受接管。
具体而言,从产物支持的角度讲,IBM BPM V8.0.1 Advanced 支持 SOAP 1.1 和 1.2,和 WS-AT 1.0、1.1 和
1.2。在 Windows 上,.NET WCF 4 支持 SOAP 1.1 和 1.2,和 WS-AT 1.0 和 1.1。
在与单个数据库治理零星 (DBMS) 交互的庞杂的 Java 运用轨范中,运用轨范可行使显式的 SQL
提交和回滚来划分事务界限。一种加倍庞杂的运用轨范情形(包括多个散布在悉数汇集中的事务成本)需求行使专门的组件来治理折衷事务的庞杂性。将一个事务治理器
与运用轨范和运用干事器连络行使,可供应用来掌握事务的局限和延续时辰的干事。事务治理器还匡助折衷跨多个事务成本治理器(例如本文中供应的示例中行使的数据库治理零星)的全局事务完成情形,供应对事务同步和恢复的支持,并供授与其他事务治理器实例通讯的能力。
全局事务散布在多个成本治理器上。要折衷全局事务,可折衷事务治理器和一切介入的成本治理器都理应完成一个多阶段完成和谈,好比两阶段提交 (2PC)
和谈。虽然此和谈有多种公用的完成,但 X/Open XA 是行业尺度。
两阶段提交和谈可确保要末一切介入者都提交更改,要末都不提交。BPM V8 Advanced 中的 SCA 完成行使根蒂根抵 IBM WebSphere
Application Server 的功用,为两阶段提交 ACID(原子性、不合性、隔离性和经久性)和谈的完成供应了支持。
相反的斟酌成份可运用到基于 Windows .NET 的情形中,斟酌 Microsoft Distributed Transaction
Coordinator (MSDTC) 和 .NET Enterprise Services (COM+) 等功用。具体来说,MSDTC 干事是古代
Microsoft Windows 版本的一个组件,担负折衷散布在多个成本治理器(好比数据库和队列治理器)上的事务。MSDTC
实行着组件的事务折衷职责,常日行使 COM 和 .NET 架构。
跟着面向干事的架构 (SOA) 设计绳尺的整合和普及,事务概念已经由进程 WS-AT 尺度运用到 SOAP Web 干事领域。有关 WS-Atomic
Transaction 和谈的超卓引见,请参阅 developerWorks 文章
WS-AT 是一种尺度,它将传统事务举动的局限延迟到了 Web 干事领域。它在 WS-Transaction 领域的相反尺度是 WS-Business
Activity (WS-BA),后者界说了原子性营业运动的赔偿机制。两种尺度都是 WS-Transaction (WS-Tx)
分组的一部份。
WS-AT 尺度同时受本系列供应的场景中行使的两种平台的支持:Microsoft .NET Framework 和 WebSphere
Application Server/IBM BPM Java, Enterprise Edition (JEE) 干事器。
基于这些概念和理论假定,我们来看一下本文中描写的事务场景。如之前所述,该场景行使两个不合的数据库 Bank1 和
Bank2,它们基于两个不合机械上的两个不合的数据库引擎。数据库 Bank1 是 Windows 机械 A 上的一个 SQL Server 2008
(Express) 数据库,而数据库 Bank2 是 Windows 机械 B 上的一个 DB2 UDB (v 9.7) 数据库。机械 B
还安装了一个带 Process Designer 和 Integration Designer 的 BPM V8 Advanced。
两个数据库上的数据经由进程两种 Web 干事来治理:
机械 A 上的 Charge Web 干事(行使 .NET WCF 垦荒)衔接并操作 SQL Server 数据库。
机械 B 上的 Credit Web 干事(行使 JAX-WS 垦荒)衔接并操作 DB2 数据库。
显著,可以在不合个机械下行使两个数据库(基于不合个引擎)来完成此演示场景。或,BPM 引擎(带 Process
Center)可安装在与两个数据库机械分隔隔离疏散的第三个机械上。其余,Web
干事也可以安装在不合的机械上。这里的重点是演示一种相反真实情形的场景,个中触及的数据源经常基于安装在不合的物理(或虚拟)机械上的不合数据库引擎。
在两个数据库上,有一个包括帐户称号(在 Description 字段中)和金额(在 Amount 字段中)的 Accounts 表。在 IBM BPM
中,有一个名为 KWSBPM 的流程运用轨范(KWS 是此演示中收受接管的全局前缀)。在这个流程运用轨范中,有一个名为 KWSBPM –
Process1 的营业流程界说 (BPD)。这个庞杂流程的目的是:
(由一个包括基于相关 Coach 的显示界面的人工干事)向用户讯问所要求事务的参数。例如,“将一笔 10 个价值单元的金额从 Bank1
上的 Karl 帐户转移到 Bank2 上的 Donald 帐户”。
行使(由一个 AIS 对)该事务的完成实行一个零星责任。稍后就会看到,AIS 由一个基于 SCA 的中介流完成,该中介盛行使 WS-AT
和谈挪用了两个 Web 干事。
一个 Coach 显示事务的积极实行效果,其他一个 Coach
显示事务丢失落败效果,和有关丢失落败启事的一些具体信息(向用户正文对该事务的后续回滚)。
经由进程对上面第一条中的参数行使不合的值,您可以测试不合的实行场景,好比:
Bank1 和 Bank2 上有两个现有的帐户,和一笔未背反
“扣费”(借方)帐户上的资金可用性的转账金额,将获得积极的生意营业提交效果。
“起原” (用于扣费)或 “目的”(用于贷方)帐户不存在,这会致使一个缺陷和事务回滚。
考试考试转移比 “扣费” 帐户上可用金额更除夜的金额,这会致使一个缺陷和事务回滚。
为了强调对我们在完成 BPM AOS 时收受接管的基于 SCA
的中介机制所供应的自动事务回滚的治理,在扣费操作之前,会在中介流中实行贷入操作,以便在发生发火扣费缺陷(例如因为金额缺少)之后借方帐户上的贷入操作的回滚是显著和邃晓的。AIS
中完成的手艺场景以下:
t1 时辰:行使 Web 干事 WSCreditBank2Svc 在 DB2 (Bank2) 上贷入资金
t2 时辰:行使 Web 干事 WSChargeBank1Svc 在 SQL Server (Bank1) 上借出资金
图 2 显示了此场景,本文后续章节将会供应更具体的引见。
图 2. 事务场景
建议的处置计划的构建块包括:
数据库和数据源设置配备铺排
BPM Process Designer 中的 BPMN 流程
Integration Designer 中的 AIS 完成,基于一种 SCA ESB 中介机制,分离为贷入和借出操作实行一个 Web
干事(一个基于 .NET WCF,其他一个基于 Java JAX-WS)。
此处置计划的一个幽默方面是显著的分层级别,从一个营业级流程到数据层(数据成本层)。其他一个要斟酌的主要元素是行使 Web 干事和 WS-AT
和谈引入的邃晓解耦,以便治理转账和事务高下文流传。
斟酌到 AIS 是在 BPM Advanced 干事器上完成的,本演示中行使的 “事务治理器” 是 WebSphere Application
Server,事务属性(稍后将引见)在 SCA 中介的 SCA 组装图上设置配备铺排。换句话说,WebSphere Application Server
将是 “事务折衷器”,SQL Server 和 DB2 都将是 “事务成本”,由 WebSphere Application Server
事务折衷器和 Microsoft Distributed Transaction Coordinator (MSDTC) 治理。
要理解处置计划的组件和完成本文中描写的步骤,您必需已安装了 IBM Business Process Manager Advanced
V8.0.1(包括 IBM Process Designer 和 IBM Integration Designer(我们在一个 Windows
位机械上中止了一切的测试)。对处置计划的基于 Windows 的部份,您必需已安装了 Visual
Studio 2010 和 SQL Server 2008。
您理应熟习 IBM Process Designer 和 IBM Integration Designer 创作对象,意见 AIS、基于 SCA
的完成、.NET 和基于 Java 的 Web 干事。
我们为本文供应了以下 4 个文件供您 。您可以下载并导入这些文件,行使它们作为参考,以实行完成本文中的示例场景的步骤。
KWSBPM.twx
一个用于 BPM V8.0.1 Advanced 的完整的 KWSBPM 流程运用轨范,您可以将它导入 Process Designer
KWSBPM_Main.zip
一个 KWSBPM AIS 完成的项目交流文件,您可以将它下载并导入 Integration Designer 中。这个 AIS
完成意见决计划的事务运动,从一个基于 ESB SCA 的中介流挪用了两个 Web 干事(在 WS-AT 中)。
WSChargeBank1Soln.zip
.NET Web 干事,包括针对 Microsoft Visual Studio 2010 IDE 的膨胀的处置计划和项目文件。
WSCreditBank2Project.zip
JAX-WS Web 干事,包括一个针对 IBM Integration Designer 的公用责任区或项目。
您需求将 SCA 完成(在 Integration Designer 中)与流程运用轨范(在 Process Designer)相联络关系。在
Integration Designer 中,掀开 Process Center 透视图,然后单击责任区中您想要与 SCA
干事联络关系的流程运用轨范旁边的 Open。对本文,该运用轨范为 KWSBPM 流程运用轨范。
要使事务 AIS 可以准确实行,您需求树立两个数据库(一个 Bank1 SQL Server 数据库位于机械 A 上,一个 Bank2 DB2
数据库位于机械 B 上),并为 IBM WebSphere Application Server(在 BPM 机械 B 上)上的 DB2 Bank2
数据库设置配备铺排一个数据源,以下各节将会对其中止引见。
树立数据库并设置配备铺排数据源
我们的场景触及一个散布式事务:两个(由不合银行托管且位于不合数据库上的)银行帐户之间的一次庞杂转账。这是一个很罕有的场景。
我们将行使一个 SQL Server 2008 (Express) 和一个 DB2 (V9.7) 数据库引擎。第一个数据库 Bank1 位于机械 A
上的 SQL Server 上,包括一个 Accounts 表,该表包括 Bank1 的帐户。第二个数据库 Bank2 位于机械 B 上的 DB2
上,包括其他一个 Accounts 表,以下所示。
清单 1. 机械 A 上的 SQL Server 上的 Bank1 数据库的 Accounts 表
Description
清单 2. 机械 B 上的 DB2 上的 Bank2 数据库的 Accounts 表
Description
本系列中引见的用例将收受接管这些值,所以在树立数据库、表、约束和触发器后,您可以将此信息拔出这两个数据库中,如以下各节所述。
Accounts 表在 ID 字段(一个 Identity 字段)上有一个主键,在 Description 字段上有一个 UNIQUE 约束。还在
Accounts 表上树立了一个 INSERT / UPDATE
触发器;它的目的是搜检一个帐户的余额,避免表中存在负值的金额:任何可致使使一个帐户的余额成为负值的 INSERT 或 UPDATE
操作都将被中止,回滚包装 INSERT 或 UPDATE 操作的隐式(外埠)事务。
这里描写的两个数据库是 developerWorks 4 部份系列
中描写的事务场景所行使的数据库。这两个数据库的设置已在之前的系列的第 1 部份
中引见。然则,为了内容的完整性,本文也供应了这些操作声名。假定您已完成这些数据库,那末可以跳过接上去的两节。
树立 Microsoft SQL Server
备注:假定已在
中完成了此数据库,那末可以跳过这一节。
后面已引见过,示例中两个数据库之一是 Microsoft SQL Server 2008 (Express) 数据库,安装在机械 A
上。在我们的示例中,SQL Server 数据库引擎被设置配备铺排用于夹杂身份验证方法,我们可行使显式的 SQL Server 登录名(例如,治理帐户
“sa” 或其他一个具有需求权限的帐户)衔接到该数据库。在
中可以看到,我们选择了
SQL Server and Windows Authentication
mode(也就是夹杂身份验证方法)。要将 SQL Server 2008 Express 设置为这类平安方法,可实行
中描写的进程。
请留意,假定在安装时期选择 Windows 身份验证方法,那末 sa 登录名将会被禁用。假定往后将身份验证方法更改成 SQL Server and
Windows Authentication 方法,sa 登录名仍会贯串衔接禁用。在这类情形下,要启用 sa 登录名,可行使 ALTER LOGIN
语句。sa 登录名仅能行使 SQL Server Authentication 衔接到干事器。在我们的示例中,为了粗笨起见,WebSphere
Application Server 和 BPM 中的 SQL Server 数据源行使 sa 登录名设置配备铺排了一个身份验证别名。图 4 显示了 SQL
Server 2008 下行使 SQL Server Management Studio 设置配备铺排的夹杂方法。
在我们的完成中, sa 登录名的密码被传递给该进程,然先行使衔接字符串传递到 AIS 和 Charge .NET Web 干事运用轨范,以治理 SQL
Server 数据库上的事务。在此完成中,此密码的值被假定为庞杂的 mypwd。显著,您需求将此值更改成您的 sa
密码,行使其他一个登录名,甚至可以行使其他一种方法将该密码传递给该干事,好比 Charge Web 干事运用轨范中的一个设置配备铺排文件,或行使一种
Windows 身份验证方法。
图 3. SQL Server 夹杂身份验证方法
SQL Server 数据库的称号为 Bank1。在此数据库中,有一个名为 Accounts 的表,它包括以下 3 个字段:
ID:帐户的数字 ID(int、身份(自动编号)、非空、主键)
Description:帐户的描写性称号(varchar、非空、独一)
Amount:帐户上的金额(int、非空)
请留意,Description 字段上有一个 “独一” 约束。
清单 1 给出了的 TSQL 剧本树立 Bank1 数据库、Accounts 表、该表上的一个触发器
Accounts_InsUpd,并在该表中填入了一些示例数据。
清单 3. 在 SQL Server 上树立 Bank1 数据库和相关的对象
-- *** BANK1 ***--
-- Create the Database (with default location, options and size)
CREATE DATABASE Bank1
-- Create the table Bank1.Accounts, with its trigger and its data
CREATE TABLE Accounts(
ID int IDENTITY(1,1) NOT NULL PRIMARY KEY,
Description varchar(50) NOT NULL UNIQUE,
Amount int NOT NULL
CREATE TRIGGER Accounts_InsUpd ON Accounts FOR INSERT, UPDATE AS
/* Check the remaining amount: it has to be non-negative */
/* If the INSERT/UPDATE makes the remaining amount negative, it is aborted */
/* Warning: this trigger is implemented as a one- it doesn't manage multi */
/* row INSERT/UPDATE */
DECLARE @remaining int -- Remaining amount
IF (SELECT COUNT(*) FROM inserted) = 1
SELECT @remaining = Amount FROM inserted
IF @remaining & 0
RAISERROR('Insufficient money.', 11, 1)
ROLLBACK TRANSACTION
INSERT Accounts VALUES('Karl',
INSERT Accounts VALUES('Albert', 200)
INSERT Accounts VALUES('Ricky',
在本系列文章的后续文章中,您会看到在 Accounts 表上的更新触发器检测到将金额设为负值的考试考试时,BPM AIS 完成中会泛起异常。
要从该表读取这些值,可以行使 SQL Server Management Studio 发出
select * from dbo.Accounts 敕令,如图 4 所示。
图 4. 读取 SQL Server 上的 Accounts 表
要读取未提交的值(例如在准备和提交或回滚阶段的距离时辰内发生发火的值),可行使 with (readuncommitted)
SQL Server 表提醒,以下所示:
select * from dbo.Accounts with (readuncommitted)
图 5 显示了
SQL Server Management Studio 中的这类查询。
图 5. 读取 SQL Server 上未提交的值
readuncommitted 表提醒指定准许
“脏读取”。假定没有发出同享锁来预防其他事务改削当前事务读取的数据,那末其他事务设置的独有锁不会阻拦当前事务读取锁定的数据。准许脏读取可以获得更高的并发性,但价值是读取的数据改削,这些改削随后由其他事务回滚。请留意,这可以为用户供应从未提交的数据,或致运用户两次看到沟通的记载(或完整看不到)。稍后您会看到,一个等效选项准许在
DB2 数据库上的一个 select 语句上实行脏读取。
可以下载 Microsoft SQL Server 2008 Express Edition with SP3,在
可以下载 Microsoft SQL Server 2008 Management Studio Express。
为了粗笨起见,我们将行使尺度的治理用户 “sa” 接见 SQL Server,表名将添加默许的 SQL Server 方法名 “dbo”
作为前缀,所以 Accounts 表的完整称号为:dbo.Accounts。
一定要斟酌到这样一个现实,SQL Server 的默许安装支持由 Microsoft Distributed Transaction
Coordinator (MSDTC) 治理的基于 XA 的事务,但在 JDBC 驱动轨范接见 SQL Server
引擎时,需求中止额定的设置配备铺排才华完成 XA 事务支持,如本例中所示。这类支持已在
和其他起原中引见,好比 。JDBC 散布式事务组件包括在 SQL
Server 安装的 Microsoft JDBC 驱动轨范的 xa 目录中。这些组件包括 xa_install.sql 和
sqljdbc_xa.dll 文件。完成以下步骤,以便在 SQL Server 安装上实行这类一次性设置配备铺排,经由进程 JDBC 完成 XA
事务支持(在我们的场景中,机械 A 上需求这些设置配备铺排,它运转的是 SQL Server 2008 Express)。
为了粗笨起见,我们将行使尺度的治理用户 “sa” 接见 SQL Server,表名将添加默许的 SQL Server 方法名 “dbo”
作为前缀,所以 Accounts 表的完整称号为:dbo.Accounts。
为 MSDTC 干事启用 XA 事务
MSDTC 干事必需在 Service Manager 中符号为 Automatic,以确保在启动 SQL
Server 干事时已在运转它。要为 MSDTC 启用 XA 事务,请实行以下步骤:
选择 Start =& Control Panel =& Administrative
Tools,然后掀开 Component Services。
睁开 Component Services 和
Computers,然后右键单击 My Computer 并选择
Properties。
单击 MSDTC 选项卡,然后单击 Security
Configuration。
勾选 Enable XA Transactions,然后单击
OK。这会从新启动 MSDTC 干事。
再次单击 OK 关闭 Properties 对话框,然后关闭 Component
Services。
住手侧从新启动 SQL Server,确保它同步了 MSDTC 更改。
图 6. 设置配备铺排 MSDTC 平安性和 XA 支持
设置配备铺排 JDBC 散布式事务组件
要设置配备铺排 JDBC 事务组件,可实行以下操作:
将 sqljdbc_xa.dll 从 JDBC 安装目录复制到将介入散布式事务的每一个 SQL Server 竞赛争辩机的 bin
备注:假定将 XA 事务用于 32 位 SQL Server,可行使 x86
文件夹内的 sqljdbc_xa.dll 文件,即便 SQL Server 安装在 x64 处置责罚器上。假定将 XA 事务用于 x64
处置责罚器上的 64 位 SQL Server,可行使 x64 文件夹中的 sqljdbc_xa.dll 文件。假定将 XA 事务用于
Itanium 处置责罚器上的 64 位 SQL Server,那末可以行使 IA64 文件夹中的 sqljdbc_xa.dll 文件。
在每一个将介入散布式事务的 SQL Server 实例上实行数据库剧本 xa_install.sql。该剧本会安装由
sqljdbc_xa.dll 挪用的扩展年夜的存储进程。这些扩展年夜的存储进程为 Microsoft SQL Server JDBC Driver
完成了散布式事务和 XA 支持。您需求以 SQL Server 实例的治理员身份运转此剧本。
要为将介入 JDBC 驱动轨范的散布式事务的特定用户授与呼应的权限,可将该用户添加到 SqlJDBCXAUser 脚色中。
树立 IBM DB2 数据库
备注:假定您已在
中完成了此数据库,那末可以跳过这一节。
机械 B(运转 DB2 V9.7)有一个 Bank2 数据库,个中包括一个 Accounts 表和两个触发器(针对 Insert 和
Update),以确保表中没有负金额,相反于 SQL Server Bank1 数据库。
清单 2 显示了在 Bank2 数据库上树立 Accounts 表的代码,和相关的约束和触发器。为了粗笨起见,这里行使的方法称号为
ADMINISTRATOR,但您也可以选择行使不合的称号。清单 2 的第一部份是一段初始安装一个空 Bank2
数据库的示例剧本。
清单 4. 在 DB2 上树立 Bank2 数据库和相关的对象
------------------------------------------------
-- Possible DDL Statement for Bank2 database creation
------------------------------------------------
CREATE DATABASE BANK2 AUTOMATIC STORAGE YES
ON 'C:/' DBPATH ON 'C:/' ALIAS BANK2
USING CODESET IBM-1252 TERRITORY US COLLATE USING SYSTEM PAGESIZE 4096 WITH 'BANK2';
------------------------------------------------
-- DDL Statements for table "ADMINISTRATOR"."ACCOUNTS"
-- Note: to be executed on BANK2 database
------------------------------------------------
CREATE TABLE "ADMINISTRATOR"."ACCOUNTS"
"ID" INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (
START WITH +0
INCREMENT BY +1
MINVALUE +0
MAXVALUE +
NO ORDER ) ,
"DESCRIPTION" VARCHAR(50) NOT NULL ,
"AMOUNT" INTEGER NOT NULL )
IN "USERSPACE1" ;
-- DDL Statements for indexes on Table "ADMINISTRATOR"."ACCOUNTS"
CREATE INDEX "ADMINISTRATOR"."CC7" ON "ADMINISTRATOR"."ACCOUNTS"
("ID" ASC)
COMPRESS NO ALLOW REVERSE SCANS;
-- DDL Statements for primary key on Table "ADMINISTRATOR"."ACCOUNTS"
ALTER TABLE "ADMINISTRATOR"."ACCOUNTS"
ADD CONSTRAINT "CC7" PRIMARY KEY
-- DDL Statements for unique constraints on Table "ADMINISTRATOR"."ACCOUNTS"
ALTER TABLE "ADMINISTRATOR"."ACCOUNTS"
ADD CONSTRAINT "CC7" UNIQUE
("DESCRIPTION");
-------------------------------
-- DDL Statements for Triggers
-------------------------------
SET CURRENT SCHEMA = "ADMINISTRATOR";
SET CURRENT PATH = "SYSIBM","SYSFUN","SYSPROC","SYSIBMADM","ADMINISTRATOR";
CREATE TRIGGER ADMINISTRATOR.ACCOUNTS_INS AFTER
ON ADMINISTRATOR.ACCOUNTS
REFERENCING
NEW AS new_row
NEW_TABLE AS new_table
FOR EACH ROW
BEGIN ATOMIC
DECLARE remaining INT;--
SET remaining
= new_row.A--
IF remaining & 0 THEN
SIGNAL SQLSTATE '70006' SET MESSAGE_TEXT = 'Insufficient money.';--
SET CURRENT SCHEMA = "ADMINISTRATOR";
SET CURRENT PATH = "SYSIBM","SYSFUN","SYSPROC","SYSIBMADM","ADMINISTRATOR";
CREATE TRIGGER ADMINISTRATOR.ACCOUNTS_UPD AFTER
UPDATE OF AMOUNT ON ADMINISTRATOR.ACCOUNTS
REFERENCING
OLD AS old_row
NEW AS new_row
OLD_TABLE AS old_table
AS new_table
FOR EACH ROW
MODE DB2SQL
BEGIN ATOMIC
DECLARE remaining INT;--
SET remaining
= new_row.A--
IF remaining & 0 THEN
SIGNAL SQLSTATE '70006' SET MESSAGE_TEXT = 'Insufficient money.';--
-------------------------------------------
-- Create some values in the Bank2 database
-------------------------------------------
INSERT INTO ADMINISTRATOR.Accounts (DESCRIPTION, AMOUNT) VALUES('Donald', 1000);
INSERT INTO ADMINISTRATOR.Accounts (DESCRIPTION, AMOUNT) VALUES('Mickey', 2000);
INSERT INTO ADMINISTRATOR.Accounts (DESCRIPTION, AMOUNT) VALUES('Minnie', 3000);
请留意,在 DB2 中,我们行使了 SQLSTATE &=70000 来界说
Insufficient money 的自界说缺陷代码。
要从 DB2 Control Center 读取该表的值,可掀开 Bank2 数据库,右键单击 Accounts 表并选择
Open,如图 7 所示。
图 7. 行使 Control Center 从 DB2 读取 Accounts
也可以行使 DB2 敕令行处置责罚器发出以下敕令,如图 8 所示:
connect to BANK2
SELECT * FROM ADMINISTRATOR.ACCOUNTS
图 8. 行使敕令行从 DB2 读取 Accounts 数据
可行使以下敕令从 Accounts
表读取未提交的值:
select * from administrator.accounts with ur
图 9. 从 DB2 读取未提交的值
select 语句上的 with ur 选项设置未提交的读取隔离级别。
为机械 B 上的 Bank2 设置配备铺排 DB2 数据源
备注:这里给出的设置配备铺排与
中的 “为机械 B 上的 Bank2 设置配备铺排 DB2 数据源”
一节中沟通。假定您已设置配备铺排了此数据源,那末可以跳过这一节。
为了支持(机械 B 上的)WebSphere Application Server 上的 Credit Web 干事对 Bank2 DB2
数据库中止接见,需求在 WebSphere Application Server 上设置配备铺排一个数据源。具体来说,要衔接到机械 B 上的 Bank2
DB2 数据库,需求一个针对 DB2 的 JDBC 驱动轨范、一个身份验证别名和一个数据源。WebSphere Application Server
for BPM 上已界说了您可以行使的 JDBC 驱动轨范(DB2 Using IBM JCC Driver (XA))。这个驱动轨范支持 XA
事务,该驱动轨范的完成类名为 com.ibm.db2.jcc.DB2XADataSource。
图 10. 针对 DB2 的 JDBC 供应轨范
图 15 显示了用于接见 DB2 上的 Bank2 数据库的身份验证别名,在我们的示例中,我们行使了
IBMBPMNode01/bpmadmin。主要的是,帐户必需具有需求的权益来接见和操作 DB2 Bank2
数据库,和在该数据库中界说的 Accounts 表上的数据。例如,因为我们将 Accounts 表的方法设置配备铺排为
ADMINISTRATOR,所以您可以行使治理帐户界说身份验证别名,或行使其他一个必需在 DB2
数据库上启用了准确受权的帐户(好比 bpmadmin)。
图 11. 接见 DB2 的身份验证别名
按以下体式格式设置配备铺排用于接识趣械 B 上的 Bank2 数据库的 jdbc/bank2db2 数据源(在本例中为 IBM BPM
干事器)(拜见图 12 和图 13)。
Scope:为您的供应轨范和数据源界说的局限;例如
cells:IBMBPMNode01Cell:nodes:IBMBPMNode01:servers:server
Provider:为 DB2 选择的 JDBC 供应轨范;例如您之前界说的
DB2 using IBM JCC Driver (XA)
Name:bank2db2
JNDI name:jdbc/bank2db2
勾选 Use this data source in container managed persistence
Description:任何描写性文本
图 12. 接见 DB2 的 JDBC 数据源(2 部份中的第 1 部份)
选择 Select a data store helper class,然后对 Data
store helper classes provided by WebSphere Application
Server,选择 DB2 Universal data store
Authentication alias for XA
recovery:IBMBPMNode01/bpmadmin
Component-managed authentication
alias:IBMBPMNode01/bpmadmin
Driver Type:4
Database name:BANK2
Server name:干事器称号,例如 IBMBPM
Port number:DB2 数据库的端口号;例如
图 13. 接见 DB2 的 JDBC 数据源(由两部份组成的系列文章的第 2 部份)
在图 13 所示的设置配备铺排中,请留意身份验证别名 IBMBPMNode01/bpmadmin 同时用于
Authentication alias for XA recovery 和
Component-managed authentication alias。
总之,为了接识趣械 B 上的 DB2 Bank2 数据库,我们界说了一个名为 bank2db2(jdbc
称号:jdbc/bank2db2)和一个 bpmadmin 身份验证别名。
在本系列文章的第 1 部份中,我们中止了除夜体归结综合,描写了本系列将要构建的散布式事务场景的组件。您进修了若何在 SQL Server 和 DB2
Server 上树立数据库,若何在 IBM BPM 运用干事器上设置配备铺排数据源。在第 2 部份中,您将进修若何设置配备铺排事务支持和完成两个事务 Web
干事(分离针对 Credit 和 Debit 操作)。
感谢打动同事 Giuseppe Bottura 和 Simone Chiucchi 审阅本文,感谢打动同事 Stefano Angrisano、Matteo
Franciolli 和 Daniele Rossi 对本文所做的供献。还要感谢打动 Andrew J. Howes、Billy Lo、Frank I.
Toth、Dave Screen、Callum Jackson、Konstantin Luttenberger 和 Oliver Rebmann
供应富有启示性、惹人寻思的 developerWorks 文章。
用于 IBM Process Designer 的流程运用轨范
AIS(用于 IBM Integration Designer)
.NET Web 干事(用于 Visual Studio)
JAX-WS Web 干事(用于 Integration Designer)
原文地址:, 感谢原作者分享。
您可能感兴趣的代码}

我要回帖

更多关于 integration service 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信