دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: 1
نویسندگان: Chris Hay. Brian Prince
سری:
ISBN (شابک) : 193518248X, 9781935182481
ناشر:
سال نشر: 2010
تعداد صفحات: 490
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 14 مگابایت
در صورت تبدیل فایل کتاب Azure in Action به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب لاجوردی در عمل نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Azure in Action یک آموزش سریع برای معماران و توسعه دهندگانی است که به دنبال توسعه برنامه های کاربردی مبتنی بر ابر در پلتفرم Windows Azure هستند. نوشته شده توسط دو تن از مبشرین پیشرو Azure مایکروسافت، هم برای خوانندگانی که با مفاهیم ابری آشنا هستند و هم برای کسانی که با توسعه ابر آشنا هستند اما با Azure جدید هستند طراحی شده است. این کتاب که با مفاهیم اصلی شروع میشود، طراحی و مقیاسبندی سرویسهای front-end و back-end که در فضای ابری اجرا میشوند و سناریوهای پیشرفتهتر در Windows Azure را بررسی میکند. فصل های بعدی بقیه پلتفرم خدمات Azure را با تمرکز ویژه بر پایگاه داده SQL Azure معرفی می کند.
Azure in Action is a fast-paced tutorial intended for architects and developers looking to develop cloud-based applications on the Windows Azure Platform. Written by two of Microsoft's leading Azure evangelists, it's designed both for readers new to cloud concepts and for those familiar with cloud development but new to Azure. Starting with core concepts, the book explores designing and scaling front-end and back-end services that run in the cloud, and more advanced scenarios in Windows Azure. Later chapters introduce the rest of the Azure Services Platform with a particular focus on SQL Azure Database.
Azure-front......Page 1
brief contents......Page 6
contents......Page 8
preface......Page 20
acknowledgments......Page 22
Roadmap......Page 25
About the source code......Page 26
Author Online......Page 27
about the authors......Page 28
about the cover illustration......Page 30
Part 1 Welcome to the cloud......Page 32
1 Getting to know Windows Azure......Page 34
1.1 What’s the Windows Azure platform?......Page 35
1.1.1 Windows is in the title, so it must be an operating system......Page 36
1.1.2 Hosting and running applications the Azure way......Page 37
1.2.1 Setting up your environment......Page 40
1.2.2 Creating a new project......Page 41
1.2.4 Running the web page......Page 43
1.3.1 How the load balancer works......Page 44
1.3.3 How the fabric and the Fabric Controller work......Page 45
1.4 Storing data in the cloud with Azure......Page 46
1.4.2 Storing and accessing BLOB data......Page 47
1.4.3 Messaging via queues......Page 48
1.5 Why run in the cloud?......Page 49
1.5.1 Treating computing power as a utility service......Page 50
1.5.2 Simplified data-center management......Page 52
1.6.1 SQL Server capability in the cloud......Page 54
1.6.2 Enterprise services in the cloud......Page 56
1.7 Summary......Page 57
2 Getting to know Windows Azure......Page 58
2.1 Getting around the Azure SDK......Page 59
2.1.2 Using the Cloud Service project templates......Page 60
2.1.3 Running the cloud locally......Page 62
2.1.4 How the local and cloud environments differ......Page 63
2.2.1 Creating the project......Page 64
2.2.2 Laying down some markup with XHTML and a CSS......Page 65
2.2.3 Binding your data in the code-behind......Page 67
2.2.5 Configuring the Azure service model......Page 68
2.2.6 Running the website in the local development fabric......Page 69
2.3.1 Signing up for Azure......Page 70
2.3.2 The Azure portal......Page 71
2.3.3 Setting up your service online......Page 72
2.3.5 Setting up your storage environment......Page 74
2.3.6 Packaging and deploying your application......Page 76
2.4 Summary......Page 78
Part 2 Understanding the Azure service model......Page 80
3.1 The big shift......Page 82
3.1.1 The data centers of yore......Page 83
3.1.2 The latest Azure data centers......Page 84
3.1.3 How many administrators do you need?......Page 85
3.1.4 Data center: the next generation......Page 86
3.2 Windows Azure, an operating system for the cloud......Page 87
3.3 The Fabric Controller......Page 88
3.3.2 Resource allocation......Page 89
3.4.1 Defining configuration......Page 90
3.4.2 Adding a custom configuration element......Page 91
3.4.3 Centralizing file-reading code......Page 92
3.4.4 The many sizes of roles......Page 93
3.5.2 Update domains......Page 94
3.6 Rolling out new code......Page 95
3.6.1 Static upgrades......Page 96
3.6.2 Rolling upgrades......Page 97
3.7.1 Free parking......Page 99
3.7.3 Creating instances on the fly......Page 100
3.7.4 Image is everything......Page 102
3.8.1 Exploring the VM details......Page 103
3.8.2 The process list......Page 105
3.8.3 The hosting process of your website (WaWebHost)......Page 106
3.9 Summary......Page 107
4.1 Using the Windows Azure Service Management API......Page 109
4.1.1 Adding the ServiceRuntime assembly to your application......Page 110
4.1.2 Is your application running in Windows Azure?......Page 111
4.2.1 The format of the service definition file......Page 112
4.2.2 Configuring the endpoint of your web role......Page 113
4.2.3 Configuring trust level, instances, and startup action......Page 117
4.2.4 Configuring local storage......Page 118
4.3.1 Generating a certificate......Page 121
4.3.2 Adding certificates......Page 122
4.3.3 Configuring your HTTPS endpoint to use the certificate......Page 123
4.4 Summary......Page 124
5.1 Working with the service configuration file......Page 125
5.1.1 The format of the service configuration file......Page 126
5.1.2 Configuring standard settings......Page 127
5.1.3 Configuring runtime settings......Page 129
5.2.1 Modifying configuration settings in the Azure portal......Page 133
5.2.2 Tracking service configuration changes......Page 134
5.3.3 Tweakable configuration......Page 135
5.4 Developing a common code base......Page 136
5.4.1 Using the RoleEnvironment.IsAvailable property......Page 137
5.4.2 Pluggable configuration settings using inversion of control......Page 138
5.5 The RoleEnvironment class and callbacks......Page 140
5.6 Summary......Page 141
Part 3 Running your site with web roles......Page 142
6.1 What happens to your web server under extreme load?......Page 144
6.1.1 Web server under normal load......Page 145
6.1.2 Simulating extreme load......Page 146
6.1.3 How the web server responds under extreme load......Page 147
6.1.4 Handling increased requests by scaling up or out......Page 148
6.2 How the load balancer distributes requests......Page 149
6.2.1 Multi-instance sample application......Page 150
6.2.2 The development fabric load balancer......Page 151
6.2.3 Load balancing in the live environment......Page 155
6.3.1 How do sessions work?......Page 158
6.3.2 Sample session application......Page 159
6.3.3 In-process session management......Page 161
6.3.4 Table-storage session state sample provider......Page 163
6.4.1 In-process caching with the ASP.NET cache......Page 166
6.4.2 Distributed caching with Memcached......Page 167
6.4.3 Cache extensibility in ASP.NET 4.0......Page 168
6.5 Summary......Page 169
7 Running full-trust, native, and other code......Page 170
7.1 Enabling full-trust support......Page 171
7.2 FastCGI in Windows Azure......Page 172
7.2.2 Configuring Azure for FastCGI and PHP......Page 173
7.2.3 Setting up HelloAzureWorld.php......Page 174
7.3 External processes in Windows Azure......Page 177
7.3.1 Spawning a sample process......Page 178
7.3.2 Using BLOB storage......Page 179
7.4 Calling native libraries with P/Invoke......Page 180
7.4.1 Getting started......Page 181
7.4.2 Calling into the method......Page 182
7.5 Summary......Page 183
8 The basics of BLOBs......Page 186
8.1 Storing files in a scaled-out fashion is a pain in the NAS......Page 187
8.1.1 Traditional approaches to BLOB management......Page 188
8.1.2 The BLOB service approach to file management......Page 191
8.2.1 Accessing the BLOB (file)......Page 194
8.2.3 Registering custom domain names......Page 195
8.2.4 Using containers to store BLOBs......Page 197
8.3 Getting started with development storage......Page 198
8.3.2 Getting around in the development storage UI......Page 199
8.4 Developing against containers......Page 200
8.4.1 Accessing the StorageClient library......Page 201
8.4.2 Accessing development storage......Page 202
8.4.3 Creating a container......Page 204
8.4.4 Listing containers......Page 206
8.4.5 Deleting a container......Page 208
8.5.1 Switching to the live storage account......Page 209
8.5.2 Configuring the access key......Page 210
8.6 Summary......Page 211
Part 4 Working with BLOB storage......Page 184
9.1 Using the REST API......Page 212
9.1.1 Listing BLOBs in a public container using REST......Page 213
9.1.2 Authenticating private requests......Page 216
9.2 Managing BLOBs using the StorageClient library......Page 219
9.2.1 Listing BLOBs using the storage client......Page 220
9.2.2 Uploading BLOBs......Page 222
9.2.3 Deleting BLOBs......Page 223
9.3.2 Downloading BLOBs from a private container using the storage client......Page 224
9.4.1 Integrating ASP.NET websites with table-driven BLOB content......Page 226
9.4.2 Integrating protected, private content......Page 227
9.5.2 Defining and accessing local storage......Page 230
9.5.3 Updating your HTTP handler to use local storage......Page 231
9.5.4 Checking properties of a BLOB without downloading it......Page 232
9.5.5 Improving your handler to check the last modified time......Page 233
9.5.6 Adding and returning custom metadata......Page 234
9.6 Copying BLOBs......Page 235
9.7 Setting shared access permissions......Page 237
9.7.1 Setting shared access permissions on a container......Page 238
9.8 Summary......Page 239
10.1 Hosting static HTML websites......Page 240
10.1.1 Creating a static HTML website......Page 241
10.1.2 Publishing your website to BLOB services......Page 243
10.2.1 Hosting the Silverlight Spectrum emulator......Page 246
10.2.2 Communicating with third-party sites......Page 248
10.3 Using BLOB storage as a media server......Page 254
10.3.1 Building a Silverlight or WPF video player......Page 255
10.3.2 A WPF-based adaptive-streaming video player......Page 256
10.3.3 A Silverlight-based chunking media player......Page 259
10.4.1 What’s a CDN?......Page 263
10.4.2 CDN performance advantages......Page 264
10.4.3 Using the Windows Azure CDN......Page 265
10.5 Summary......Page 267
11 The Table service, a whole different entity......Page 270
11.1 A brief overview of the Table service......Page 271
11.2.1 How we’d normally represent an entity in C#......Page 272
11.2.2 How we’d normally store an entity in SQL Server......Page 273
11.2.3 Mapping an entity to a SQL Server database......Page 274
11.3.1 Modifying an entity definition......Page 275
11.3.2 Table service representation of products......Page 276
11.3.3 Storing completely different entities......Page 278
11.4.1 Partitioning the storage account......Page 280
11.4.2 Partitioning tables......Page 281
11.5.1 Creating a project......Page 283
11.5.3 Creating a table......Page 284
11.6 Doing CRUDy stuff with the Table service......Page 287
11.6.1 Creating a context class......Page 288
11.6.2 Adding entities......Page 289
11.6.3 Listing entities......Page 291
11.6.4 Deleting entities......Page 292
11.6.5 Updating entities......Page 294
11.7 Summary......Page 295
Part 5 Working with structured data......Page 268
12 Working with the Table service REST API......Page 296
12.1.1 Listing tables in the development storage account using the REST API......Page 297
12.1.2 Deleting tables using the REST API......Page 300
12.1.3 WCF Data Services and AtomPub......Page 301
12.1.4 Creating a table using the REST API......Page 302
12.2.1 Shared Key authentication......Page 304
12.2.2 Shared Key Lite authentication......Page 305
12.3.1 Inserting entities......Page 306
12.3.2 Deleting entities......Page 308
12.3.3 Updating entities......Page 310
12.4 Batching data......Page 312
12.4.1 Entity group transactions......Page 313
12.5 Querying data......Page 315
12.5.1 Retrieving all entities in a table using the REST API......Page 316
12.5.3 Filtering data with the REST API......Page 319
12.5.4 Filtering data with LINQ......Page 321
12.5.5 Selecting data using the LINQ syntax......Page 323
12.5.6 Paging data......Page 325
12.6 Summary......Page 326
13 SQL Azure and relational data......Page 327
13.2 Setting up SQL Azure......Page 328
13.2.1 Creating your database......Page 329
13.2.2 Connecting to your database......Page 330
13.3 Size matters......Page 331
13.3.1 Partitioning your data......Page 332
13.3.2 Sharding your data for easier scale......Page 333
13.4 How SQL Azure works......Page 334
13.4.2 SQL Azure from a physical viewpoint......Page 335
13.5.1 Moving your data......Page 336
13.5.2 Controlling access to your data with the firewall......Page 338
13.5.3 Creating user accounts......Page 339
13.6.1 Migrating the traditional way......Page 340
13.6.2 Migrating with the wizard......Page 341
13.7 Limitations of SQL Azure......Page 342
13.8.1 Far-data scenarios......Page 343
13.8.3 SQL Azure versus Azure Tables......Page 344
13.9 Summary......Page 345
14 Working with different types of data......Page 346
14.1.1 Representing simple static data in SQL Azure......Page 347
14.1.2 Representing simple static data in the Table service......Page 349
14.1.3 Performance disadvantages of a chatty interface......Page 351
14.1.4 Caching static data......Page 352
14.2.1 Representing the shopping cart in SQL Azure......Page 354
14.2.2 Partitioning the SQL Azure shopping cart......Page 355
14.2.3 Representing the shopping cart’s static data in the Table service......Page 357
14.3.1 Duplicating data instead of joining......Page 360
14.3.2 Client-side joining of uncached data......Page 361
14.4 Summary......Page 362
Part 6 Doing work with messages......Page 364
15 Processing with worker roles......Page 366
15.1 A simple worker role service......Page 367
15.1.1 No more Hello World......Page 368
15.2 Communicating with a worker role......Page 369
15.2.1 Consuming messages from a queue......Page 370
15.2.2 Exposing a service to the outside world......Page 371
15.2.3 Inter-role communication......Page 375
15.3.1 Offloading work from the frontend......Page 376
15.3.3 Simulating worker roles in a web role......Page 378
15.3.4 State-directed workers......Page 380
15.4.1 Setting up local storage......Page 384
15.4.2 Working with local storage......Page 385
15.5 Summary......Page 386
16 Messaging with the queue......Page 388
16.1.1 How messaging works......Page 389
16.1.2 What is a message?......Page 391
16.1.3 What is a queue?......Page 392
16.1.4 StorageClient and the REST API......Page 393
16.2 Working with basic queue operations......Page 394
16.2.1 Get a list of queues......Page 395
16.2.3 Attaching metadata......Page 396
16.3 Working with messages......Page 397
16.3.2 Peeking at messages......Page 398
16.3.4 Deleting messages......Page 399
16.4.1 About message visibility and invisibility......Page 400
16.4.4 Use idempotent processing code......Page 401
16.5.1 Shared counters......Page 402
16.5.3 Asymmetric queues versus symmetric queues......Page 404
16.5.4 Truncated exponential backoff......Page 405
16.5.7 Ordered delivery......Page 407
16.5.9 Dynamically scaling to meet queue demand......Page 408
16.6 Summary......Page 409
17 Connecting in the cloud with AppFabric......Page 410
17.1.2 Two key AppFabric services......Page 411
17.2.1 Identity in the cloud......Page 412
17.2.2 Working with actors......Page 413
17.2.3 Tokens communicate authorization......Page 414
17.2.4 Making claims about who you are......Page 415
17.3.1 Putting ACS in place......Page 416
17.3.2 Reviewing the string-reversal service......Page 418
17.3.3 Accepting tokens from ACS......Page 419
17.3.4 Checking the token......Page 420
17.3.5 Sending a token as a client......Page 421
17.3.7 Configuring the ACS namespace......Page 423
17.3.8 Putting it all together......Page 427
17.4.1 What is a Service Bus?......Page 428
17.4.2 Why an ESB is a good idea in the cloud......Page 429
17.5.1 Connecting the service to the bus......Page 431
17.5.2 Connecting to the service......Page 432
17.7 Summary......Page 433
18 Running a healthy service in the cloud......Page 435
18.1.1 Using Azure Diagnostics to find what’s wrong......Page 436
18.2 Diagnostics in the cloud is just like normal (almost)......Page 437
18.2.1 Managing event sources......Page 438
18.2.2 It’s not just for diagnostics......Page 439
18.3 Configuring the diagnostic agent......Page 440
18.3.2 Diagnostic host configuration......Page 442
18.3.3 The other data sources......Page 447
18.3.4 Arbitrary diagnostic sources......Page 449
18.4.1 Scheduled transfer......Page 450
18.4.2 On-demand transfer......Page 451
18.5 Using the service management API......Page 452
18.5.2 Setting up the management credentials......Page 453
18.5.3 Listing your services and containers......Page 455
18.5.4 Automating a deployment......Page 457
18.5.5 Changing configuration and dynamically scaling your application......Page 461
18.6 Better together for scaling......Page 463
18.6.1 The thermostat......Page 464
18.6.3 Risks and managing them......Page 465
18.6.4 Managing service health......Page 466
18.7 Summary......Page 467
A......Page 468
C......Page 470
D......Page 473
E......Page 474
F......Page 475
I......Page 476
M......Page 477
N......Page 478
P......Page 479
R......Page 480
S......Page 481
T......Page 485
W......Page 486
X......Page 488
Azure-back......Page 490