r1 - 27 Apr 2006 - 02:05:54 - TanDunlinYou are here: TWiki >  Main Web  >  ElixirReport > ElixirReportServerCookbook > FineTuneERS

Fine Tunning Elixir Server

The time taken for report generation depends on various factors such as the report complexity, type of datasource, generation format and hardware configuration as well as the network traffic.

In another word, the response time of the report generation will be longer if the network traffic is high. Also, the very first report generation will take considerably longer time than the subsequent as this time utilize for initializing the ReportRuntime? object and to warm up the JVM hotspot engine.

For your information, below are some of the areas that you can work on to optimize the report response time:-

  1. Java Virtual Machine

    • Check with your JVM Vendor for the options that are available for
      optimizing the performance.

      For example, SUN JDK provide a "-server" option to improve the
      performance of the HotSpot? and java.awt.headless to reduce the heap
      size required for the JVM.

    • Ensure the right JVM is being used for the hardware platform. For
      example, if your hardware platform is of 64 bits you will have to
      use a 64 bit JVM.

  2. Optimizing of SQL statement

    • To optimize the query performance in your database while generating
      the reports, instead of using the complex SQL statements or joins
      on the client side. You can make use of the server side (database
      server) to manage these complexities to maximum the performance.

      Stored procedure is one of the few methods that can be used, Elixir
      Report allows you to pass stored procedure with parameter to the
      database server and receive a return result.

      For more information, please refer to the User Manual that is
      shipped together with the product.

      - Tune your SQL Statement

      - Instead of using "Select * from Table", you should only select the
        column that are required for the report.

      - Derivate the simple calculation field in the database level instead
        of report level.

      - Sorting and grouping is a resource-intensive process especially
        for large recordset.
        To improve the response time for the report generation, instead
        of doing the sorting and grouping in the report template level.
        You should try to sort the data in your database level and
        select "Already Sorted"while creating the grouping in the
        report template.

  3. Optimizing of Report Template

    • Avoid writing long length business logic in template level

    • For image, you should always try to store the local file system instead of loading the image through the network

    • Reduce the size of the image to be the actual size that is required for display in the report, instead of reading a large image.



-- TanDunlin - 27 Apr 2006

Edit | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r1 | More topic actions
 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback