- Shopping Bag ( 0 items )
Want a NOOK? Explore Now
Microsoft SQL Server 2005 Notification Services covers the basic problems of notification applications, describes the SQL Notification Services platform and describes how to use it to build rich, scalable notification applications. Written by Shyam Pather, the Technical Lead for the SQL Notification Services Team, this book is based on his three years of experience teaching SQL Notification Services to new customers. This book is your complete resource for learning SQL Notification Services application development and the underlying architectural concepts.
IntroductionIntroduction
A business traveler's cell phone beeps; he's received a text message informing him that his flight's departure gate has been changed. A system administrator receives a message on her pager alerting her that a critical server has gone down. An inventory manager at a grocery store gets an email telling him that the stock level for a popular product has dropped below the threshold for reordering.
These are examples of personalized notifications reaching people when the information is most relevant, on whatever device they have available. In today's information-driven world, notifications such as these have real business value. Timely information can attract customers, make employees more productive, and enable agile decision making. The software systems that generate and deliver these notifications extend the reach of information beyond the corporate desktop.
Building notification software presents several challenges. Every day, people are bombarded with an overload of irrelevant information. For a notification system to add value, it must deliver only targeted, focused information based on the needs and preferences of each user. Doing this correctly requires sophisticated matching and filtering capabilities.
Also, notification systems must be reliable because they're often used to deliver mission-critical alerts. They must be scalable so that they can support millions of users and high volumes of data, without requiring excessive hardware. They must be manageable and fit seamlessly into an existing IT infrastructure—they must not burden the operators who maintain them. Most importantly, notification systems must besecure.
Microsoft SQL Server 2005 Notification Services is a platform for building notification applications that meet all these requirements. It provides a reliable, manageable, secure base for your applications, with a rich, scalable matching engine that can filter an information stream based on the subscriptions of millions of users.
Notification Services offers a simple, declarative programming model that lets you build your application with much less development effort than would be required if you were building it from scratch. Using this programming model, you can get a working prototype of a typical application running in just a single day. Furthermore, the platform offers a number of sophisticated features, such as support for multiple languages and device types, scheduled subscriptions, user-defined matching logic, and multicast delivery, that you can incorporate into your applications by setting a few options. These kinds of beyond-the-obvious features set the most advanced notification applications apart from the rest.
This book is about building notification applications with Microsoft SQL Server 2005 Notification Services. It covers general Notification Services concepts, describes specific coding techniques used to build applications, and walks you through the process of developing a sample application, from the initial design and prototype to final deployment and administration. In addition to the basics, it covers more advanced concepts for developers who want to get the most out of the Notification Services functionality. Who Should Read This Book
This book is aimed primarily at developers wanting to learn notification application development with Microsoft SQL Server Notification Services. It assumes some familiarity with SQL and
Chapters 710 and Chapters 1618 describe using managed code to build subscription-management interfaces, custom components that extend the Notification Services framework, and applications that embed Notification Services functionality. C# is used in the examples, but all .NET languages are supported. The material in these chapters assumes some familiarity with C#, the .NET Framework, and object-oriented programming.Teaching Approach
I'm a firm believer that the best way to teach is by example. In this book, I generally explain new concepts in high-level terms first and then go into practical code examples that show those concepts in use. In all cases, the examples form part of a working application you can run.
This book is designed to complement, rather than replace, the Notification Services Books Online (the electronic documentation that comes with the product). Books Online provides a thorough reference to every Notification Services command, programming construct, and configuration option. This book does not attempt to duplicate this reference information. Instead, this book is a guide that shows you how, when, and why to use the various aspects of Notification Services in real scenarios. My expectation is that you will use this book to learn the concepts and work through practical examples, but refer to the Books Online for exact syntax details, usage restrictions, and other detailed reference information.
When providing instructions throughout this book, I've chosen to err on the side of being too specific, rather than not specific enough. In many cases, I explicitly state steps or commands, even though I know most readers will already be familiar with them. My purpose in doing this is to leave no room for ambiguity. I realize that calling out what may seem like obvious instructions can come across as pedantic, but doing this eliminates potential confusion and misinterpretation. I want every reader to get the most out of this book, and to that end I've tried to be as clear as possible at every step. I consider my readers to be capable software engineering professionals, and the tone of the instructions is never intended to contradict that.Organization of This Book
This book is divided into five parts:
Part I, "Notification Services Concepts," (Chapters 1 to 4) provides basic background information on notification applications and the Notification Services platform. It provides instructions for getting your development system set up to work with Notification Services and includes a walkthrough of a sample Notification Services application.
Part II, "Notification Services Application Development," (Chapters 5 to 11) covers the specific techniques and tools used to build applications with Notification Services. It describes the development process and the parts of the application that are built at each stage, before taking you through this process with a sample application. In working through the sample application, you learn about the features of the Notification Services platform and how to use them in your own applications.
Part III, "Optimization, Deployment, and Administration," (Chapters 12 to 15) covers the steps you perform after the basic development work is completed, to bring a Notification Services application online in a live production environment. It describes performance-tuning tools and techniques, deployment on various hardware configurations, and the administration and maintenance of a running application. It also includes a troubleshooting guide that provides diagnostic information and suggested solutions for the most common problems encountered in running Notification Services applications.
Part IV, "Advanced Notification Services Concepts," (Chapters 16 to 18) describes some of the more advanced features of the platform, including many of the new features added in the SQL Server 2005 release. It covers the new programming APIs used to perform Notification Services management tasks programmatically and host the Notification Services engine as a component within another application. It also covers the extensions to the programming model for supporting user-defined matching logic in Notification Services applications.
Part V, "Appendix," explains how to set up a development environment for building your own Notification Services applications using the tools and techniques introduced in this book's samples. By following the instructions in the appendix, you can quickly begin developing your own Notification Services applications in a familiar environment.
The first three parts of this book (Chapters 1 to 15) are ordered and organized to match the development process typically followed when creating an application using Notification Services. I expect new readers will generally work through these chapters in order, but this is not a strict requirement. Although each chapter builds on the material in previous chapters, after you have a basic understanding of Notification Services, you should be able to refer to the chapters in any order you choose. The instructions and examples in each chapter are self-contained, allowing you to use them without having to complete all the instructions in previous chapters.
The chapters in the fourth part of the book present three advanced topics. These chapters can be read in any order after you become familiar with the fundamentals of Notification Services application development. These chapters shouldn't be considered required reading unless you specifically want to take advantage of the features they describe. Fully functional Notification Services applications can be built and deployed based only on the material in the first three parts of this book.
About the CD-ROMNote - You can refer to the book's appendix whenever you're ready to begin creating your own Notification Services applications. If you're unfamiliar with Notification Services, I recommend that you do this only after reading through Parts I and II. The material in the appendix assumes you've become familiar with the development environment used in the samples in Chapters 3 through 10.
The CD-ROM contains the source code and build scripts for all the examples in this book, as well as several tools that aid development and testing. In some places, the chapter text describing the examples shows only code fragments, but all source files on the CD-ROM contain complete code that you can compile and run.
To work with the code and tools on the CD-ROM, you will have to install them on your local hard drive. You cannot work directly off the CD-ROM. Chapter 2, "Getting Set Up," provides instructions for copying the code and tools from the CD-ROM and getting your development system set up to work with them.
ConventionsNote - Errata information for this book, including updates to the source code, may be periodically posted on the Sams Publishing website. To view this information, visit http://www.samspublishing.com, enter this book's ISBN—0672327791 (note that the hyphens are removed)—into the Search dialog box, select ISBN as the search term, and click Search to access the book's page.
The following typographic conventions are used in this book:
Code lines, commands, statements, variables, and any text you see onscreen appears in a monospace typeface. Bold monospace typeface is often used to highlight elements that deserve particular attention in the context of the topic being described. In the case of commands, bold monospace is used to indicate text that you type.
In code listings, an ellipsis (...) is used to indicate places where code that isn't shown in the text would belong in a complete source file. This is used in code fragments where parts of the code that are not relevant to the topic being described are omitted for brevity and clarity.
Italics highlight technical terms when they're being defined.
If a line of code is too long to fit as a single line on the printed page, it is broken into multiple lines. The ¬ character appears at the beginning of any printed line of code that is really a continuation of the line immediately preceding it.
When not used in the names of
<>) are used to denote tokens that are substituted with some other value. For example, the name of the Windows service used to run a Notification Services instance is given as NS$<InstanceName>. The <InstanceName> part is replaced with the actual name of the instance. If the instance name was Instance2, the service name would be NS$Instance2.
Caution - Cautions alert you to common pitfalls you should avoid. The cautionary information in this book ranges from general descriptions of restrictions, constraints, or limitations you should be aware of, to more serious warnings about effects that could result in data loss or corruption.
Tip - Tips are used to highlight shortcuts, convenient techniques, or tools that can make a task easier. Tips also sometimes provide recommendations on best practices you should follow.
Note - Notes provide additional background information about a topic being described, beyond what is given in the chapter text. Often, notes are used to provide references to places you can find more information about a particular topic.
Sidebars - Sidebars provide coverage of related topics in a particular area that don't fit within the main organization of a chapter. These topics are usually considered somewhat tangential to the main discussion but provide interesting, useful information nonetheless.
© Copyright Pearson Education. All rights reserved.
1 | An overview of notification applications | 9 |
2 | Getting set up | 21 |
3 | The simplest notification application : stock quotes | 41 |
4 | Working with SQL-NS instances | 77 |
5 | Designing and prototyping an application | 117 |
6 | Completing the application prototype : scheduled subscriptions and application state | 161 |
7 | The SQL-NS subscription management API | 183 |
8 | Event providers | 231 |
9 | Content formatters | 307 |
10 | Delivery protocols | 347 |
11 | Debugging notification generation | 393 |
12 | Performance tuning | 417 |
13 | Deploying a SQL-NS instance | 449 |
14 | Administering a SQL-NS instance | 483 |
15 | Troubleshooting SQL-NS applications | 505 |
16 | Using notification services management objects | 529 |
17 | Hosting the SQL-NS execution engine | 567 |
18 | User-defined matching logic in SQL-NS applications | 581 |
App. A | Creating a development environment for your own SQL-NS applications | 649 |
Anonymous
Posted Sat Apr 28 00:00:00 EDT 2012
Hey! Im Glimmerstar. Im a silver shecat with white paws. Im in golenclan. (Located at gold mines all results). I am an expectant queen but my mate ditched me so my unborn kiys need a father.
Was this review helpful? Yes NoThank you for your feedback. Report this reviewThank you, this review has been flagged.
Overview
Microsoft SQL Server 2005 Notification Services covers the basic problems of notification applications, describes the SQL Notification Services platform and describes how to use it to build rich, scalable notification applications. Written by Shyam Pather, the Technical Lead for the SQL Notification Services Team, this book is based on his three years of experience teaching SQL Notification Services to new customers. This book is your complete resource for learning SQL Notification Services application ...