《WCF服务编程 第4版》PDF下载

  • 购买积分:22 如何计算积分?
  • 作  者:(美)JUVAL LOWY & MICHAEL MONTGOMERY著;徐雷,徐扬译
  • 出 版 社:武汉:华中科技大学出版社
  • 出版年份:2017
  • ISBN:9787568026222
  • 页数:806 页
图书介绍:本书涵盖最新的WCF的想法和技巧,通过告诉读者如何使用WCF来精通WCF编程、成为一名出色的软件工程师。通过本书,读者可以了解WCF架构和基本构建。本书内容包括使用服务托管、实例和并发管理、实例和并发管理、事务、无连接队列调用等,通过使用相关的设计原则、提示和最佳实践,提高WCF服务开发的效率和质量,挖掘服务设计背后的原理。

第1章 WCF基础 1

什么是WCF 1

服务 2

服务的执行边界 3

WCF与位置透明度 4

地址 4

TCP地址 5

HTTP地址 6

IPC地址 6

MSMQ地址 6

WebSocket地址 7

UDP地址 7

契约 7

服务契约 8

托管 11

IIS托管 12

自托管 13

WAS托管 18

在IIS/WAS里自定义托管 18

选择宿主 19

绑定 20

常用绑定 21

选择绑定 22

其他绑定 23

使用绑定 25

终结点 25

以管理方式配置终结点 26

以编程方式配置终结点 30

默认终结点 31

Configure()方法 34

元数据交换 36

基于HTTP-GET的元数据 37

元数据交换终结点 40

元数据浏览器 46

行为配置的更多内容 48

客户端编程 49

生成代理 50

以管理方式配置客户端 54

以编程方式配置客户端 59

WCF提供的测试客户端 60

编程方式配置VS管理方式配置 62

配置策略 63

WCF体系结构 63

宿主体系结构 64

使用通道 65

InProcFactory类 67

传输会话层 70

传输会话与绑定 71

传输会话终止 71

可靠性 72

绑定、可靠性和有序消息 73

配置可靠性 73

必备有序传递 75

第2章 服务契约 77

操作重载 77

契约继承 79

客户端契约层级 80

服务契约分解与设计 84

契约分解 84

分解准则 86

契约查询 88

以编程方式处理元数据 88

第3章 数据契约 95

序列化 95

.NET序列化 96

WCF格式器 98

序列化的数据契约 100

数据契约特性 101

导入数据契约 104

数据契约与Serializable特性 106

推断数据契约 107

组合数据契约 109

数据契约事件 110

共享数据契约 112

数据契约层级 113

已知类型 114

服务已知类型 116

多个已知类型 117

配置已知类型 118

数据契约解析器 119

Objects与接口 129

数据契约等效性 131

序列化顺序 132

版本控制 134

新增成员 135

缺失成员 135

版本控制往返 139

数据契约分解与设计 141

数据契约设计 142

数据契约分解 142

操作分解 151

数据传输对象(DTO)模式 153

务实的模式使用 154

枚举 154

委托与数据契约 156

泛型 157

集合 160

具体集合类型 161

自定义集合 163

CollectionDataContract特性 163

引用集合 165

字典集合 165

第4章 实例管理 169

行为 169

单调服务 170

单调服务的优势 171

配置单调服务 172

单调服务与传输会话 173

设计单调服务 173

选择单调服务 176

会话服务 176

配置私有会话 176

会话与可靠性 181

会话ID 182

会话终止 183

单例服务 184

初始化单例服务 185

选择单例服务 188

操作分界 188

实例停止 190

配置为ReleaseInstanceMode.None 192

配置为ReleaseInstanceMode.BeforeCall 193

配置为ReleaseInstanceMode.AfterCall 193

配置为ReleaseInstanceMode.BeforeAndAfterCall 193

显式停止 194

使用实例停止 195

持久化服务 195

持久化服务与实例管理模式 196

实例ID与持久化存储区 196

显式实例ID 197

消息头里的实例ID 199

支持实例ID的上下文绑定 202

自动持久化行为 207

限流 213

配置限流 215

第5章 操作 221

请求/应答操作 221

单向操作 221

配置单向操作 222

单向操作与可靠性 223

单向操作与会话服务 223

单向操作和异常 224

回调操作 225

回调契约 226

客户端回调设置 227

服务端的回调调用 230

回调连接管理 233

双向代理与类型安全 235

双向通道工厂 238

回调契约层级 240

事件 241

流操作 245

I/O流 245

流操作与绑定 246

流操作与传输 247

第6章 错误 249

错误隔离和解耦 249

错误屏蔽 249

通道故障 250

错误传播 254

错误契约 256

错误调试 259

错误与回调 265

错误处理扩展 268

提供错误 269

处理错误 272

安装错误处理扩展 274

宿主与错误扩展 277

回调与错误扩展 280

第7章 事务 283

恢复的挑战 283

事务 284

事务资源 284

事务属性 285

事务管理 286

资源管理器 289

事务传播 289

事务流与绑定 289

事务流与操作契约 290

单调 292

事务协议与管理器 293

协议与绑定 293

事务管理器 294

事务管理器提升 296

Transaction类 297

环境事务 298

本地事务VS分布式事务 298

服务事务编程 299

设置环境事务 299

事务传播模式 301

投票与提交 308

事务隔离 311

事务超时 313

明确使用事务编程 314

TransactionScope类 314

事务流管理 316

非服务客户端 323

服务状态管理 324

事务边界 325

实例管理与事务 325

单调事务服务 326

会话事务服务 329

事务持久化服务 342

事务行为 344

事务单例服务 349

实例模式与事务 352

回调 353

回调事务模式 354

回调投票 356

使用事务型回调 356

第8章 并发管理 359

实例管理与并发 359

服务并发模式 360

ConcurrencyMode.Single 360

ConcurrencyMode.Multiple 361

ConcurrencyMode.Reentrant 364

实例与并发访问 366

单调服务 366

会话与单例服务 367

资源与服务 368

访问死锁 368

避免死锁 369

资源同步上下文 370

.NET同步上下文 370

UI同步上下文 373

服务同步上下文 378

托管在UI线程上 379

作为服务 384

UI线程与并发管理 387

自定义服务同步上下文 389

线程池同步化器 389

替换I/O完成线程池 394

线程关联性 395

优先级处理 397

回调与客户端安全 400

使用ConcurrencyMode.Single回调 401

使用ConcurrencyMode.Multiple回调 402

使用ConcurrencyMode.Reentrant回调 402

回调与同步上下文 403

回调与UI同步上下文 403

回调自定义上下文 406

异步调用 410

异步机制的需求 410

基于代理的异步调用 411

异步调用 413

轮询或等待完成 415

延续 417

单向异步调用 426

异步错误处理 430

异步调用与事务 433

同步与异步调用 433

异步服务操作 434

第9章 队列服务 455

无连接的服务与客户端 455

队列调用 456

队列调用架构 456

队列契约 457

配置与安装 458

事务 464

传递与回放 464

事务配置 466

非事务性队列 469

实例管理 469

单调队列服务 470

会话队列服务 471

单例服务 475

并发管理 476

限流 476

传送失败 477

死信队列 478

生存时间 478

配置死信队列 479

处理死信队列 480

回放失败 484

有害消息 485

有害消息处理 486

队列调用与连接调用 490

要求队列化 491

应答服务 492

设计应答服务契约 493

客户端编程 496

队列服务端编程 499

应答服务端编程 501

事务 502

HTTP桥 505

设计桥 505

事务配置 506

服务端配置 506

客户端配置 508

第10章 安全 511

验证 511

授权 512

传输安全 512

传输安全模式 513

传输安全模式配置 514

Transport安全和凭据 517

Message安全和凭据 517

身份标识管理 518

整体策略 518

场景驱动方法 519

Intranet应用场景 520

安全Intranet绑定 520

约束消息保护 526

身份验证 528

身份标识 530

安全调用上下文 531

模拟 533

授权 540

身份标识管理 545

回调 546

Internet应用场景 547

安全Internet绑定 547

消息保护 549

验证 553

使用Windows凭据 555

使用ASP.NET提供者 556

标识管理 564

B2B应用场景 565

保护B2B绑定 565

验证 566

授权 568

身份标识管理 569

宿主安全配置 570

匿名应用场景 570

确保匿名绑定的安全 571

验证 571

授权 571

标识管理 571

回调 572

无安全场景 572

无安全的绑定 572

验证 573

授权 573

标识管理 573

回调 573

场景总结 574

声明式安全框架 574

SecurityBehaviorAttribute 575

宿主端的声明式安全 582

客户端的声明式安全 583

安全审计 590

配置安全审计 591

声明式安全审计 593

第11章 Azure Service Fabric微服务平台 595

为什么需要Azure Service Fabric 595

集成平台 596

设计一致性 596

编程模型一致性 596

未来兼容 596

为Service Fabric作准备 598

ServiceModelEx.ServiceFabric 598

配置Service Fabric 599

IT运维 599

开发 600

两者兼备 601

编写Service Fabric 606

服务编程模型 606

可靠服务 607

可靠角色 614

状态管理 617

托管 623

客户端编程模型 624

建模Service Fabric 633

建模方法 633

建模可靠服务 635

建模可靠角色 637

建模托管宿主 645

测试 646

附录A 面向服务概述 653

附录B 消息头与上下文 665

附录C 服务发现 687

附录D 发布-订阅服务 741

附录E 通用拦截器 765

附录F WCF编码规范 781

附录G ServiceModelEx分类 793