资源介绍
第 1 章引言 1
1.1 引言 1
1.2 Internet Communications Engine (Ice) 3
1.3 本书的篇章结 4
1.4 排字约定 4
1.5 源码示例 5
1.6 联系作者 5
1.7 Ice 支持 5
第 Ice 综述 7
第 2 章 Ice 综述 9
2.1 本章综 9
2.2 Ice 架构 9
2.3 Ice 服务 21
2.4 Ice 在架构上提供的好处 23
2.5 与 CORBA 的对比 25
第 3 章 Hello World 应用 33
3.1 本章综 33
3.2 编写 Slice 定义 33
3.3 编写使用 C++ 的 Ice应用 34
3.4 编写使用 Java的 Ice 应用 41
3.5 总结 48
第 Ice 核心概念 51
第 4 章 Slice 语言 53
4.1 本章综 53
4.2 引言 53
4.3 编译 54
4.4 源文件 57
4.5 词法规则 59
4.6 基本的 Slice 类型 62
4.7 用户定义的类型 63
4.8 接口、操作,以及异常 70
4.9 类 92
4.10 提前声明 106
4.11 模块 107
4.12 类型 ID 109
4.13 Object 上的操作 110
4.14 本地类 111
4.15 Ice 模块 112
4.16 名字与作用域 113
4.17 元数据 117
4.18 使用 Slice 编译器 118
4.19 Slice 与 CORBA IDL 的对比 119
4.20 总结 127
第 5 章 一个简单文件系统的 Slice 定义 137
5.1 本章综 137
5.2 文件系统应用 137
5.3 文件系统的 Slice 定义 138
5.4 完整的定义 140
第 6 章 客户端的 Slice-to-C++ 映射 143
6.1 本章综 143
6.2 引言 143
6.3 标识符的映射 144
6.4 模块的映射 144
6.5 Ice 名字空间 145
6.6 简单内建类型的映射 146
6.7 用户定义类型的映射 146
6.8 常量的映射 150
6.9 异常的映射 151
6.10 运行时异常的映射 154
6.11 接口的映射 154
6.12 操作的映射 161
6.13 异常处理 167
6.14 类的映射 169
6.15 slice2cpp 命令行选项 183
6.16 与 CORBA C++映射比较 184
第 7 章开发 C++ 文件系统客户 189
7.1 本章综 189
7.2 C++ 客户 189
7.3 总结 194
第 8 章 客户端的 Slice-to-Java 映射 197
8.1 本章综 197
8.2 引言 197
8.3 标识符的映射 198
8.4 模块的映射 198
8.5 Ice Package 199
8.6 简单内建类型的映射 200
8.7 用户定义类型的映射 200
8.8 常量的映射 204
8.9 异常的映射 205
8.10 运行时异常的映射 206
8.11 接口的映射 207
8.12 操作的映射 213
8.13 异常处理 219
8.14 类的映射 220
8.15 Package 224
8.16 slice2java 命令行选项 225
第 9 章开发 Java 文件系统客户 229
9.1 本章综 229
9.2 Java 客户 229
9.3 总结 233
第 10 章 服务器端的 Slice-to-C++ 映射 235
10.1 本章综 235
10.2 引言 235
10.3 服务器端 main函数 236
10.4 接口的映射 247
10.5 参数传递 249
10.6 引发异常 251
10.7 对象体现 252
10.8 总结 257
第 11 章开发 C++ 文件系统服务器 261
11.1 本章综 261
11.2 实现文件系统服务器 261
11.3 总结 276
第 12 章 服务器端的 Slice-to-Java 映射 279
12.1 Chapter Overview 279
12.2 引言 279
12.3 服务器端 main函数 280
12.4 接口的映射 285
12.5 参数传递 287
12.6 引发异常 288
12.7 Tie 类 289
12.8 对象体现 292
12.9 总结 296
第 13 章开发 Java 文件系统服务器 297
13.1 本章综 297
13.2 实现文件系统服务器 297
13.3 总结 306
第 14 章 Ice 属性与配置 307
14.1 本章综 307
14.2 属性 307
14.3 配置文件 309
14.4 在命令行上设置属性 309
14.5 Ice.Config 属性 310
14.6 命令行解析与初始化 311
14.7 Ice.ProgramName 属性 312
14.8 在程序中使用属性 313
14.9 总结 323
第 15 章 C++ 线程与并发 325
15.1 本章综 325
15.2 引言 325
15.3 Ice 线程模型 326
15.4 线程库综述 326
15.5 互斥体 327
15.6 递归互斥体 332
15.7 读写递归互斥体 335
15.8 定时锁 338
15.9 监控器 341
15.10 线程 350
15.11 可移植的信号处理 357
15.12 总结 358
第 高级 Ice 363
第 16 章 Ice Run Time 详解 365
16.1 引言 365
16.2 通信器 365
16.3 对象适配器 369
16.4 对象标识 375
16.5
Ice::Current 对象 376
16.6 Servant 定位器 377
16.7 服务器实现技术 391
16.8
Ice::Context 413
16.9 调用超时 418
16.10 单向调用 419
16.11 数据报调用 423
16.12 成批的调用 424
16.13 测试代理的分派类型 426
16.14
Ice::Logger 接口 426
Ice::Stats 428
16.15
16.16 位置透明性 429
16.17 对比 Ice 与 CORBA Run Time 430
16.18 总结 432
第 17 章 异步程序设计 443
17.1 本章综 443
17.2 引言 443
17.3 使用 AMI 446
17.4 使用 AMD 452
17.5 总结 459
第 18 章 Ice 协议 463
18.1 本章综 463
18.2 数据编码 463
18.3 协议消息 486
18.4 压缩 494
18.5 协议和编码版本 496
18.6 与 IIOP 的对比 498
第 19 章 Ice 的 PHP 扩展 511
19.1 本章综 511
19.2 引言 511
19.3 配置 513
19.4 客户端的 Slice-to-PHP映射 515
第 Ice 服务 533
第 20 章 IcePack 535
20.1 本章综 535
20.2 介绍 535
20.3 概念 536
20.4 Ice 定位器设施 537
20.5 IcePack 注册表 541
20.6 IcePack 节点 545
20.7 IcePack 管理工具 548
20.8 部署 551
20.9 描述符参考资料 557
20.10 排除故障 565
20.11 总结 568
第 21 章 Freeze 569
21.1 本章综 569
21.2 引言 570
21.3 Freeze 映射表 570
21.4 在文件系统服务器中使用 Freeze映射表 578
21.5 Freeze 逐出器 603
21.6 在文件服务器中使用 Freeze 逐出器 608
21.7 总结 627
第 22 章 FreezeScript 629
22.1 本章综 629
22.2 引言 629
22.3 数据库迁移 630
22.4 转换描述符 635
22.5 使用
transformdb 647
22.6 数据库审查 652
22.7 使用
dumpdb 662
22.8 描述符表达式语言 665
22.9 总结 668
第 23 章 IceSSL 669
23.1 本章综 669
23.2 引言 669
23.3 配置 IceSSL 671
23.4 配置应用 674
23.5 配置参考资料 676
23.6 IceSSL 编程 684
23.7 总结 685
第 24 章 Glacier 687
24.1 本章综 687
24.2 引言 687
24.3 使用 Glacier 691
24.4 回调 692
24.5 Glacier 启动器 696
24.6 Glacier 的安全性 701
24.7 总结 706
第 25 章 IceBox 707
25.1 本章综 707
25.2 引言 707
25.3 服务管理器 708
25.4 开发服务 709
25.5 启动 IceBox 715
25.6 总结 716
第 26 章 IceStorm 719
26.1 本章综 719
26.2 引言 720
26.3 概念 721
26.4 IceStorm 接口综述 723
26.5 使用 IceStorm 725
26.6 IceStorm 的管理 734
26.7 主题联盟 735
26.8 服务质量 742
26.9 配置 IceStorm 743
26.10 总结 744
附录 745
附录 ASlice 关键字 747