The Active Server Pages (ASP) runtime was designed to provide an easy way to create dynamically generated HTTP response packets. On this count, the designers of ASP get an A.
Most of the day-to-day use of ASP is also this easy. Many times, developers feel the need to push the envelope of what a particular technology was designed to do. Whether just for fun or based upon a real application requirement, pushing that envelope can be frustrating. In order to push the envelope with ASP, you need to understand how it works, how each piece is put together.
If you are interested in learning what ASP is or how to program ASP in general, this is not the book for you. You should read this book once you have a solid understanding of ASP programming in general. This book is meant to peel back the cover on ASP and look inside. I will peer into the plumbing and show how ASP does what it does. My goal is that, after reading this book, you will be a better ASP and COM programmer by understanding how the pieces fit together, not because I showed you the best way to write a loop in VBScript.
It would be helpful to us as developers to have the source code for ASP, even if only to help us debug our own code. Until Microsoft completely embraces the Open Source movement (don't hold your breath), we have no real way of knowing what the internals of ASP really look like. I can guess based on what I know about how ASP works. In this book, I will implement a "clone" of ASP. I have decided to name this clone "Active COM Pages" (or "ACP" for short). Instead of showing you the source code of ASP, I will show you the source code of ACP. ACP in most ways will behave exactly as ASP does (and when it doesn't or can't, I will point that out).
A few caveats about my implementation. First, it does not act like ASP in all ways. It isn't meant to be a replacement for ASP, only a reference to help understand ASP itself. Second, the ACP implementation isn't production code that I recommend using in a real system. Again, it is the bare minimum needed to replicate the important functionality of ASP.
I hope that seeing what ASP does under the covers (approximately, at least) will help you better understand how to put together your own ASP applications. Intended Audience
This book is written for anyone who wants to know more about the internal workings of ASP (hence the title). You should be a seasoned ASP developer who has a firm grasp of COM (Microsoft's Component Object Model). (For two good books on COM, see Don Box, Essential COM, Addison-Wesley, 1998, and Ted Pattison, Programming Distributed Applications with COM+ and Microsoft Visual Basic 6.0, Microsoft Press, 2000.)
All of the ASP code in this book is written in VBScript. The code implementing ACP (my ASP clone) uses C++ (including some classes from the Standard Template Library-STL). This is necessary because of the underlying architecture. ATL (Microsoft's Active Template Library) is used to implement the COM classes used inside of ACP. Even if you are not familiar with C++ or ATL, the code comments and explanations will help you understand how ASP works. What to Expect
Each chapter of this book covers a particular aspect of the ASP runtime. Chapter 1, "Introduction," provides an introduction to the Hypertext Transfer Protocol (HTTP). In the end, everything in ASP is translated to and from HTTP. This chapter includes a brief description of how HTTP works.
Chapter 2, "IIS and ISAPI," explains how IIS (Internet Information Server, which hosts ASP) is put together and how ASP uses ISAPI (Internet Server Application Programming Interface) to do the majority of its work.
Chapter 3, "Active Scripting," focuses on hosting the Active Script Engine interfaces, which ASP uses to do the majority of its heavy lifting, and on adding named objects to running scripts.
Chapter 4, "Wrapping HTTP," discusses ASP's IResponse and IRequest interfaces and how they interact with the HTTP protocol through ISAPI.
ASP provides built-in state management at both the session and application level. Chapter 5, "State Management," discusses the interfaces used to provide state management and how to avoid performance problems that can arise if the interfaces are not used judiciously.
ASP's and the scripting engines' integration with COM is one of the best features of the runtime. How COM objects are created and how they interact with ASP are the subjects of Chapter 6, "IServer and Components."
ASP also integrates with the COM+ transactional services. Chapter 7, "Transactions," shows how ASP achieves this integration.
The Internet has made global distributed applications a reality. ASP has built-in features that enable you to write internationalized applications as Chapter 8, "Internationalization," will show. Jon Flanders
September 2000
0201616181P04062001
Because the source code for ASP is not openly available, author Jon Flanders has created an ASP clone, Active COM Pages (ACP). In revealing its source code, he provides a view under the hood of ASP so developers can finally see and understand how it works and how they can most effectively work with it.
ASP Internals covers each aspect of the ASP runtime. It demonstrates ASP integration with COM+ transactional services. And, most important, it shows readers how COM objects are created and interact with ASP. Other important topics include:
Numerous code examples, written in VBScript, demonstrate best practices for performing vital programming tasks.
Written for Web developers who are familiar with ASP and COM, ASP Internals shows readers how to make the best of both technologies in the creation of dynamic, high-quality, database-driven Web applications.
Product Details
Would you like to update product info or give feedback on images?
|
|
Share your thoughts with other customers:
|
||||||||||||||||||||||
|
Most Helpful Customer Reviews
13 of 15 people found the following review helpful:
4.0 out of 5 stars
The view of ASPs from underneath,
By Charles Ashbacher (Marion, Iowa United States) - See all my reviews (TOP 500 REVIEWER) (VINE VOICE) (HALL OF FAME REVIEWER)
This review is from: ASP Internals (Paperback)
A few years ago, I started an introductory course in Active Server Pages and wrote my own instructional material. Although it has always gone well, until now, I had never made the attempt to get deep under the hood and examine what is happening behind the scenes. It always seemed that delving into the C++ code would be a low Return On Investment (ROI) operation. When I first received this book, I read the blurbs and was somewhat skeptical. However, once I started, the reading was completed in less than a day, and the ROI was rather high.It was gratifying to learn that some of the implementations were as I had always suspected. The basics of underlying data transfer are thoroughly introduced and several of the points made in the book will be incorporated into the next rewrite of my ASP material. While it does help to understand C++, particularly Visual C++, it is not an absolute requirement. I learned more about the underlying mechanics of IIS and ASPs in the reading of this book than I have in over six sessions of a class where students and I always tinker with the code. If you have more than a passing interest in coding ASPs, then this is a book that will be of enormous value in learning how things are executed. The knowledge will also help you understand some of those infuriatingly cryptic errors.
8 of 9 people found the following review helpful:
2.0 out of 5 stars
A disappointment,
Amazon Verified Purchase(What's this?)
This review is from: ASP Internals (Paperback)
I was very disappointed with this book. As a heavy-duty ASP programmer, the subject seemed very interesting and relevant, but the book was quite a let down. There was nothing terribly deep here. I was hoping that we might learn about how ASP works as a very high bandwidth service, but all we learn is very straightforward info that is more or less obvious to anyone with COM and IIS experience. True, there was some discussion of Microsoft's continued use of undocumented interfaces (!) that is probably not findable anywhere else, but these tended to be minutiae of how ASP works. Since the theme of the book is the ASP clone that Flanders wrote, you'd think the source code would be available somehow. There are lots of excerpts in the text, but it would be nice to be able to see the whole thing somewhere - and perhaps even try to run it. But if this code is available somewhere, I couldn't find it. The book is advertised as 212 pages, but in fact the text is a grand total of 123 whole pages - the font is large, and big margins.... The level of discourse was also very uneven. The first chapter was a first-level cut at how HTTP works, which I would hope would be blindingly obvious to the target audience for this book. So kudos are in order for taking on a new and important topic - at least it wasn't yet another copy of publicly available documentation. But I wanted more.
9 of 12 people found the following review helpful:
1.0 out of 5 stars
A Very Big Disappointment,
By A Customer
This review is from: ASP Internals (Paperback)
This book is not worth the paper it's printed on. It does not describe the INTERNAL of ASP. This book does not bring any value to any ASP programmer, novice or experienced. I have had high hope on this book since it came from DevelopMentor, which I have attended many of its classes and been very happy with its instructors. A very big disppointment on this book.
Share your thoughts with other customers: Create your own review
|
|
Tag this product(What's this?)Think of a tag as a keyword or label you consider is strongly related to this product.
Tags will help all customers organize and find favorite items. |
|
This product's forum
Active discussions in related forums
Search Customer Discussions
|
Related forums
|