APGEN BENEFITSUse Active Page Generator™ (APGen™) to obtain these benefits: Benefits
Discussion Maximize Web site performance Use APGen to make your dynamic Web pages 2 to 200 times faster. We have found that APGen is consistently the easiest and most cost-effective way to obtain performance improvements of this magnitude.
APGen makes pages faster by reducing the amount of code that is executed per Web page request. From a performance perspective, APGen optimization is equivalent to eliminating much of the dynamic code in a Web page. All APGen optimization techniques eliminate script code, late-bound function calls, database calls, COM object invocation, and other costly operations from the code path of the dynamic Web page. Web server load equals Web page overhead multiplied by the number of requests for the page. By moving as much overhead as possible out of the page's request handler, and into a request-independent publishing phase, the page becomes much faster and Web site capacity dramatically increases. Improve Web site fault-tolerance APGen optimization techniques eliminate script code, high-overhead function calls, database calls, COM object invocation, and other operations from the request-time code path of the Web page. This shortens the page's code path, and reduces run-time dependencies on external resources. Consequently, the optimized page is both faster and less susceptible to failure. For example, consider a Web page that calls a COM component, which in turn connects to a database. In the absence of pre-rendering, any of the following can cause an error when the Web page is hit:
If the page is pre-rendered and calls to the COM component are moved into APG script blocks, then these errors can only affect the pre-rendering step, and not any Web page requests. Dependencies on the COM component and database are removed from the run-time Web page, so none of these errors will cause the request to fail. The error-prone code is still executed, but it is executed less often and in the pre-rendering phase. Since pre-rendering occurs before the request, errors are easier to catch and fix before they affect any users. If the error remains for an extended period of time, the normal worst-case scenario is that users will receive the last good version of the page. Another reliability benefit stems from the fact that pre-rendered pages are typically run serially, whereas Web page requests are run in parallel. APG scripts are usually run in a predictable sequence, whereas Web pages are run in a seemingly random and concurrent order. The benefit is that pre-rendering eliminates many of the concurrency issues that Web site software faces, which simplifies the test workload and further improves reliability. Another reason that APGen optimization yields such high performance and superior reliability is that APGen does not run during the Web page request. There is no added overhead in the Web server, and no added code to break. In contrast, dynamic caching products run within the Web server, intercepting every request, performing checks to see if cached content can be used, and if so feeding in the cached content. While using cached content is faster than executing the full request, the caching products do add overhead and additional vulnerability to every Web page request. While improved fault-tolerance is difficult to quantify, APGen customers frequently comment on the improved reliability of their Web sites. Improve user experience with faster, more data-rich Web pages Studies show that users will leave your Web site if they experience slow pages, if they can't find the information they're looking for, or if they are otherwise frustrated with their experience. Users will remain on your Web site only for as long as they have a rewarding experience; there is no barrier to leaving your site. On the web, offering your users a quality experience is of paramount importance. APGen improves your user's experience in two ways: Page response becomes faster, and pages can be written to display more useful content and navigation. For example, consider a product page on an e-commerce site. It is often desirable to add a feature list, specs, product options, user's reviews, and links to related products. This information is usually stored in a database, which means that each page view may execute 5 to 20 database queries. This adds considerable overhead and slows page response, unless APGen is used to pre-render the content. Using APGen, pages can be made faster and more useful. "From a design point of view, pre-generating content allowed us more flexibility. We were able to create content that would either be impossible or extremely costly if created in real-time on the Web server. ... APGen is a development environment designed specifically for programmatically generating content. ... APGen is a valuable and versatile development tool and in my opinion a must have for any professional Web developer." APGen includes two examples (Discussion Board and Outlook Contact List) which demonstrate speed and data-rich pages. Experienced ASP developers will recognize that the pages could not realistically be rendered in ASP. Decrease load on Web and database servers After applying APGen Optimization Techniques, Web server and database server CPU load typically decrease by a factor of 2 to 10. This can be viewed as insurance against usage spikes (a safety factor), or as a replacement for purchasing additional Web servers and/or larger servers, plus additional hosting costs. The decreased load can also be viewed as preserving the CPU so that high-priority, computationally intensive pages (like shopper checkout) can respond quickly. "Our Web CPUs are way down (<10% now) ... mem usage is down 200MB. I think we can comfortably handle 2.5 times our existing loads." Increase Web site capacity With APGen, your Web site will handle 2 to 200 times as many users as with standard dynamic pages. This graph displays common throughput gains:
Automate authoring and maintenance tasks APGen enables developers to increase the programmability of a Web site, without worrying about performance consequences. With APGen, every element of a Web site can be data driven, without adding any run-time overhead. By increasing automation and content re-use, Web site authoring and maintenance become easier, less expensive, and less error prone. APGen is ideal for automating tasks like:
Since APGen is a programming environment similar to ASP, these tasks can be performed in a completely flexible and customizeable way. See Automating Web Page Authoring for a technical discussion. Reduce the costs of hosting and maintenance When APGen is used on a Web site, Web site efficiency increases dramatically. This increase in efficiency can yield significant savings on Web site hardware and hosting. Web sites of all sizes (except perhaps the smallest sites) will see worthwhile savings from using APGen. The savings are significant for small Web sites on shared Web servers, all the way up to large sites using Web farms. Our APGen ROI page shows typical hardware and hosting savings for Web sites of different sizes. APGen can also reduce maintenance costs by increasing the level of automation used during Web site construction and updates. With APGen, more of the site can be data-driven and automatically generated. Savings from reduced maintenance vary greatly for different Web sites. Re-use existing programming skills, components, tools, and source code APGen programming is very similar to ASP (Active Server Pages) programming. ASP has become the de facto standard for dynamic Web pages on Microsoft platforms because it is powerful enough for any Web site, easy to understand and to program, and has excellent tool and component support. APGen emulates many of ASPs successful characteristics, including power and flexibility, intuitive programming model, ease of use, and tool and component support. APGen lets developers program with their choice of industry standard VBScript, JScript, PerlScript, and Python. APG script syntax is similar to ASP file syntax, and the differences are consistent and intuitive. All the tools that developers use for programming and debugging ASP are also supported for APGen programming - including Visual Studio, Visual Studio.NET, Visual InterDev, HomeSite, Microsoft Script Debugger, and others. Well-known COM components can be used in APG scripts, including ADO, MSXML, Scripting.Dictionary, CDO, and the FileSystemObject. Custom COM components can also be used in APG scripts. In addition, script routines that developers have written for ASP are easily used in APG scripts. Increase utilization of caches and content delivery networks Network caches and content delivery networks store copies of Web files closer to the end user, so the files can be served up faster and with less bandwidth cost. The closer the cached file is to the end user, the faster and cheaper the response. Static files can be cached by proxy servers, edge caches, network caches, content distribution networks, and browser caches. Dynamic pages cannot be cached on the network, and are always retrieved from the origin server. When APGen is used to generate static pages, the static pages automatically benefit from proxy server caching, edge caching, network caching, content distribution networks, and browser caching. These caches are all highly optimized to cache static pages and static files. Just by using APGen to generate static pages, your Web site automatically benefits from distributed caching, with no additional configuration or effort. If you are using network caching products or content distribution services like Inktomi, Akamai, CacheFlow, Network Appliance (or many others), use APGen to maximize use of your investment. If you use these products, making a single page static with APGen can result in hundreds or thousands fewer hits against your Web server, resulting in less server load and less bandwidth cost. Even if you have not set up caching appliances or a content distribution network, using APGen will let you benefit from the network caches, proxy servers, and browser caches that are always present on the network. Generate offline content for CDs and HTML Help APGen is valuable for generating offline content, including Web pages for CD distribution, HTML help, and source code files. While APGen was originally designed for Web page optimization, it was generalized to be used for all content generation tasks. In addition to its intended uses, APGen has proven valuable for:
Increase coverage from search engines Many search engine spiders don't index pages with query strings. APGen lets you generate individual pages from
database data, which can eliminate query strings from the URL. For example, a page with URL Easier Web site optimization Optimization with APGen is less expensive and easier to implement than normal Web site optimization. Typically Web sites are optimized by testing for bottlenecks, and then tweaking slow code and/or moving suspected slow code into C++. This is a lot of work, can be error prone, requires highly skilled (expensive) developers, and can make the Web site more difficult to maintain. After all the work, such optimization often ends up making a small or negligible difference. APGen provides proven optimization techniques that are comparitively easy to implement. They can be implemented by intermediate ASP developers, and results are consistently exceptional. Even if the APG script and the components it uses are poorly written and inefficient, the APG script runs independently of the Web page request, and does not add any overhead to the Web site. The result is that developers can code in the easiest and most maintainable way, and not worry about code optimization. | |||