Rocket Modern Experience (formerly LegaSuite)

 View Only

Performance Considerations – Application Design

  • 1.  Performance Considerations – Application Design

    ROCKETEER
    Posted 08-27-2021 10:29
    Edited by Sarah Gilbert 08-27-2021 10:34
    When implementing a Web based solution there are a number of factors to consider to assure optimum performance.  This topic provides high-level suggestions and recommendations regarding Application Design.

    Application Design

    Making tweaks to your project can also help your solution perform more efficiently.  These are examples to consider:
    • Evaluate browser rendering: The complexity of the objects and the number of objects on a page affect browser rendering. To evaluate browser rendering, use the performance tools that are available in your Web browser.


    • Additionally, the network tab in the Chrome Performance tools can yield information regarding any potential network bottlenecks that could impact the performance of your application.


    • Optimize script processing: All script processing occurs on the Web engine. Scripts that replace repetitive user actions increase processor activity because the Web engine performs these actions faster than a user can. For example, if an application uses a script that collects function keys, every screen calls the script. If you optimize the script, you reduce CPU usage and enable more clients to run concurrently. If an application uses script windows, which contain JavaScript, processing occurs on the Web client within the browser.
    • Use Unicode-identified screens: Web engine performance is better when project (.lwr) files use Unicode-identified screens rather than ANSI-identified screens.
    • Build custom pages for your screens: Using the dynamic UI feature, you can quickly develop an application. However, because the screen on which each page is based is analyzed and the page is built dynamically at run time, the resulting application consumes additional processor time and increases the memory footprint.
    • Profile your pages to determine the performance weight of widgets on specific pages. This will allow you to assess impact for the rendering of widgets on pages and determine if a modification to the page design can improve this.

     


    For example:

    • Replace tabs with pages: If a page uses tabs, the number of objects on the page might quickly grow. Although not all objects are visible, they are still sent and calculated for the Web client. If the page loads slowly, replace the tabs with multiple pages.
    • Optimize pages that contain grids: A grid provides a significant amount of functionality – for example, users can sort data, reorder columns, and display more data than is visible on the host screen. However, rendering a grid requires additional time. If a page uses multiple grids, page performance might be slow. Re-evaluate the amount of data that you are trying to display and optimize the page.
    • Disable automatic scrollbars in containers: You can use containers to create a responsive Web design, in which the layout of the page and the size of the widgets on the page change when the available space changes. If a page has a fixed size or if a container is not designed to change size, set the value of the Scrollbars property for the container to Never, instead of Auto. This change reduces processing time on the Web client side.
    • Use Exclude instead of Hide: Instead of hiding a widget based on an action, exclude the widget. This change results in faster Web rendering.
    • Delete unused project (.lwr) files: The Web engine always loads all project files. To conserve processing time, keep the number of project files as low as possible. Delete unused project files from the working directory. Pages from a web application are stored in a project's generated package files. When displaying pages, the engine retrieves the pages from the package files in the working directory. Switching between multiple package files consumes a significant amount of processing time.

      

    Please also see the related forum topics:


    Further documentation for Rocket Modern Experience Web Edition can be found on our docs portal: https://docs.rocketsoftware.com/



    ------------------------------
    Sarah Gerards-Gilbert
    Principal Technical Support Engineer
    Rocket Software
    ------------------------------