请选择 进入手机版 | 继续访问电脑版

科研迷论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7|回复: 1

Robust Communications Software Extreme Availability, Reliability and Scalability for Carrier-Grade Systems-[1]-[2005]-[pdf]-[Greg Utas]

[复制链接]

该用户从未签到

0

主题

0

小红花

125

学币

管理员

Rank: 9

积分
0
发表于 2020-2-9 22:46:06 | 显示全部楼层 |阅读模式
★★★闹不够看这里★★★1、每个同学都有一个独一无二的推广链接,请点击这里来获取
2、把你的推广链接告诉你的同学、同事、朋友,让他们注册,或者分享到你的微博,微信朋友圈、博客或者其他的论坛,让更多人的通过你的链接进来注册,那么你会获得非常可观的学币
3、每一个用户,通过你的链接来到论坛进行注册后,你都会获得10个学币!即便用户没有注册,他只要点击了你给的链接,浏览了科研迷论坛,你也能获得1个学币
4、通过分享资料,资料上传分享成功会获得5~10个学币!其他用户下载还会获得额外的学币哦!


免费下载30页预览文件

书籍信息:
书名: Robust Communications Software: Extreme Availability, Reliability and Scalability for Carrier-Grade Systems
语言: English
格式: pdf
大小: 2.4M
页数: 352
年份: 2005
作者: Greg Utas
版次: 1
出版社: Wiley

简介

Learn how to design scalable, robust software for cutting-edge communications products???  Carrier-grade software must satisfy the stringent quality requirements of network operators whose systems provide mission-critical communications services. This book describes proven carrier-grade software techniques used in flagship products designed by industry leaders such as Lucent, Nortel, and Ericsson.In the age of 24/7,  software robustness is a competitive advantage. This authoritative guide for software engineers, managers, and testers of products that face carrier-grade requirements helps you to develop state-of-the-art software that will give you an edge in today???s marketplace. Robust Communications Software: Extreme Availability, Reliability and Scalability for Carrier-Grade Systems <ul><li>offers advice on choosing the right technologies for building reliable software<li>incorporates real-world examples and design rationales when describing how to construct robust, embedded software for communications systems<li>presents a comprehensive set of carrier-grade design patterns that help you to meet extreme availability, reliability, scalability, and capacity requirements<li>gives advice on how to protect against and recover from software faults<li>discusses system installation, operability, maintenance, and on-site debugging</ul>


目录
Robust Communications Software......Page 3
Contents......Page 9
About the Author......Page 15
Preface......Page 17
Acknowledgments......Page 21
1 Introduction......Page 23
1.1.1 Availability......Page 24
1.1.2 Reliability......Page 25
1.1.3 Scalability......Page 26
1.1.5 Productivity......Page 27
1.2 Becoming Carrier Grade......Page 29
1.3.2 Reactive......Page 31
1.3.3 Stateful......Page 32
1.3.5 Distributed......Page 34
1.4 Summary......Page 35
2.1 Basic Terminology......Page 37
2.2 Extreme System Reference Model......Page 38
2.3 Programming Models......Page 40
2.4 A Pattern Language for Carrier-Grade Software......Page 41
2.6 Summary......Page 48
3.1 Basic Principles......Page 49
3.2 Choosing a Language......Page 51
3.3 Other Considerations......Page 52
3.4 Distractions and Myths......Page 53
3.5 Summary......Page 55
4 Using Objects Effectively......Page 57
4.1 The Object Class......Page 58
4.2.1 Singleton......Page 62
4.2.3 Registry......Page 63
4.2.4 Polymorphic Factory......Page 64
4.3.1 Object Pool......Page 68
4.3.3 Implementing Object Pools......Page 73
4.4.1 Embedded Object......Page 79
4.4.2 Object Template......Page 82
4.4.3 Quasi-Singleton......Page 83
4.4.4 Object Morphing......Page 85
4.4.5 Implementing the Techniques for Pooled Objects......Page 87
4.5 Summary......Page 97
5.1 Standard Scheduling Policies......Page 99
5.2 Critical Regions......Page 100
5.3.1 p() and v() Considered Harmful......Page 101
5.4 Cooperative Scheduling......Page 102
5.4.1 Implementing Thread Locking......Page 103
5.4.2 I/O Threads and Invoker Threads......Page 104
5.4.3 Run-to-Completion Timeout......Page 105
5.5 Dealing with Blocking Operations......Page 108
5.5.1 Supporting Blocking Operations by Locked Threads......Page 109
5.5.2 Preventing Blocking Operations by Locked Threads......Page 110
5.5.3 Prohibiting Synchronous Messaging......Page 111
5.6 The Thread Class......Page 113
5.7 Proportional Scheduling......Page 117
5.7.1 Benefits of Proportional Scheduling......Page 118
5.7.2 Implementing Proportional Scheduling......Page 119
5.7.3 Approximating Proportional Scheduling......Page 122
5.8 How Many Threads Do You Need?......Page 123
5.9 Summary......Page 125
6.1.1 Increasing Capacity......Page 127
6.1.3 Separating Programming Models......Page 128
6.2.2 Transient States......Page 129
6.2.4 Protocol Backward Compatibility......Page 130
6.3.1 Heterogeneous Distribution......Page 131
6.3.2 Homogeneous Distribution......Page 135
6.3.3 Hierarchical Distribution......Page 136
6.3.4 Symmetric Multi-Processing......Page 137
6.3.5 Half-Object Plus Protocol......Page 138
6.4 Summary......Page 139
7.1 Defensive Coding......Page 141
7.2 Protecting Against Tramplers......Page 142
7.2.1 Stack Overflow Protection......Page 143
7.2.2 Low-Order Page Protection......Page 144
7.2.4 User Spaces......Page 145
7.2.6 Write-Protected Memory......Page 146
7.2.7 Protecting Objects......Page 149
7.2.8 When Are User Spaces Appropriate?......Page 150
7.3 Summary......Page 152
8.1 Safety Net......Page 153
8.1.1 Catching Exceptions......Page 154
8.1.2 Catching Signals......Page 155
8.1.4 Recovering Resources......Page 156
8.1.5 Implementing the Thread Class......Page 158
8.2 Leaky Bucket Counter......Page 177
8.3 Audit......Page 179
8.3.1 Resource Pool Audit......Page 180
8.3.3 Queue Corruption......Page 181
8.3.4 Traps in Callbacks......Page 183
8.4 Watchdog......Page 185
8.6 Escalating Restarts......Page 186
8.7.1 Registering Modules......Page 188
8.7.2 Initializing a Node......Page 189
8.7.4 Restarting a Node......Page 190
8.7.5 Ensuring that Initialization Succeeds......Page 191
8.7.7 Binary Database......Page 192
8.8 Summary......Page 194
9.1 Reliable Delivery......Page 197
9.3 TLV Message......Page 200
9.3.1 Parameter Typing......Page 202
9.3.3 Parameter Template......Page 204
9.4.1 In-Place Encapsulation......Page 209
9.4.2 Stack Short-Circuiting......Page 210
9.4.3 Message Cascading......Page 212
9.4.4 Message Relaying......Page 213
9.4.5 Eliminating I/O Stages......Page 215
9.5.1 Prefer Push to Pull......Page 218
9.5.2 No Empty Acks......Page 219
9.5.4 Callback......Page 220
9.5.5 Shared Memory......Page 222
9.6 Summary......Page 223
10 Overload Controls......Page 225
10.1 Finish What You Start......Page 226
10.2 Discard New Work......Page 228
10.3 Ignore Babbling Idiots......Page 231
10.4 Throttle New Work......Page 232
10.5 Summary......Page 234
11.1 Redundancy Techniques......Page 235
11.1.1 Load Sharing......Page 236
11.1.2 Cold Standby......Page 237
11.1.3 Warm Standby......Page 238
11.2 Checkpointing Techniques......Page 239
11.2.2 Object Checkpointing......Page 240
11.2.4 Virtual Synchrony......Page 241
11.3 Addressing Processors......Page 243
11.4 Interacting with Escalating Restarts......Page 244
11.5 Summary......Page 245
12 Software Installation......Page 247
12.1.1 Function Patching......Page 248
12.1.2 Class Patching......Page 249
12.1.3 Managing Patches......Page 251
12.2 Hitless Upgrade......Page 252
12.3 Rolling Upgrade......Page 253
12.4 How Hitless Do You Need To Be?......Page 254
12.5 Summary......Page 255
13 System Operability......Page 257
13.1.1 Configuration Parameters......Page 258
13.1.2 Provisioning......Page 259
13.2.1 Logs......Page 260
13.2.3 Operational Measurements......Page 263
13.3 Maintenance......Page 264
13.3.1 Handling Faults......Page 265
13.3.2 High-Level Design......Page 266
13.3.3 Commands......Page 267
13.3.5 Detecting Outages......Page 269
13.5 Summary......Page 271
14 Software Optionality......Page 275
14.1 Conditional Compilation......Page 276
14.2 Software Targeting......Page 277
14.4 Summary......Page 278
15 Debugging in the Field......Page 279
15.1 Software Logs......Page 280
15.1.1 Software Error Log......Page 281
15.1.2 Software Warning Log......Page 283
15.2 Flight Recorder......Page 284
15.3.1 Function Tracer......Page 285
15.3.2 Message Tracer......Page 289
15.4 Summary......Page 290
16.1 Set the Capacity Benchmark......Page 293
16.2.1 Transaction Profiler......Page 294
16.2.2 Thread Profiler......Page 297
16.3 Summary......Page 298
17.1 Selecting an Infrastructure......Page 301
17.1.2 Compiler......Page 302
17.1.4 Debugging......Page 303
17.2.1 Techniques for Release 1.0......Page 304
17.2.2 Techniques for Release 2.0 and Beyond......Page 307
18 Assessing Carrier-Grade Software......Page 309
18.1 Language......Page 310
18.5 Scheduling......Page 311
18.8 Fault Containment......Page 312
18.10 Overload......Page 313
18.13 Software Installation......Page 314
18.15 Summary......Page 316
Glossary......Page 317
References......Page 331
Index......Page 337

电子书下载地址(Ebook download address)回复可见:
游客,如果您要查看本帖隐藏内容请回复

回复

使用道具 举报

  • TA的每日心情
    郁闷
    3 小时前
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    2

    主题

    0

    小红花

    9861

    学币

    VIP学者

    Rank: 9

    积分
    188
    发表于 2020-6-24 15:34:59 | 显示全部楼层
    每天进步一点点
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    Archiver|手机版|小黑屋|科研迷论坛 ( 闽ICP备17033831号-3 ) hello xym!!

    GMT+8, 2020-7-4 11:03 , Processed in 0.032541 second(s), 10 queries , Redis On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表