WebGecko Home
Authoring and caching solutions for a better Web experience
SEARCHStart search

APGEN BENEFITS

Use Active Page Generator™ (APGen™) to obtain these benefits:

Benefits
  1. Maximize Web site performance
  2. Improve Web site fault-tolerance
  3. Improve user experience with faster, more data-rich Web pages
  4. Decrease load on Web and database servers
  5. Increase Web site capacity
  6. Automate authoring and maintenance tasks
  7. Reduce the costs of hosting and maintenance
  8. Re-use existing programming skills, components, tools, and source code
  9. Increase utilization of caches and content delivery networks
  10. Generate offline content for CDs and HTML Help
  11. Increase coverage from search engines
  12. Easier Web site optimization
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.

Figure 1: Improved Web Page Performance

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:

  • An error in the Web page
  • A crash in the COM component
  • The database is down
  • A needed database record is locked

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."
Read the complete testimonial
This customer uses APGen to generate and maintain 50,000 pages for an e-commerce site.

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."
Kaushik Pushpavanam
Development Lead
AskMe.com

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:

Figure 2: Higher Capacity and Faster Web Page Response Under Load

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:

  • Generating page content from database data
  • Merging page content and logic with template content and logic
  • Generating appropriate navigation links for each page
  • Inserting meta tags in pages
  • Generating localized pages from XML or database data

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:

  • Generating static Web pages for CDs
  • Generating static Web pages for product documentation and HTML help
  • Generating personalized email (HTML or text) from a database
  • Generating static pages for hosting on servers that don't support ASP
  • Generating XML from any type of data
  • Generating static pages locally for placement on a remote Web server.  The pages are generated locally because the data is local and not accessible from the Web server.
  • Generating C++ (and other language) source code files.
  • Generating batch files.

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 product.asp?id=27 can be changed to product_27.asp.  With APGen, all your company information can be accessed from the major search engines.

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.




Home  |  Products  |  Community  |  Sales  |  Support  |  Company
Mailing List  |  Services  |  Press  |  Search  |  Privacy  |  Contact Us