Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Reduce HTTP Requests

    The SC homepage has nearly 60 HTTP Requests on load. This makes page loading slow.

    It seems that for the client-side JS, it is quite modular. Which is good for maintainability but poor for pageload performance.

    Of course you know about minifying and gzipping. It might also be nice to include a super js file that would be a pre-minified and combined version of:

    Code:
    <script src="smartclientSDK/isomorphic/system/modules/ISC_Core.js"></script>
    <script src="smartclientSDK/isomorphic/system/modules/ISC_Foundation.js"></script>
    <script src="smartclientSDK/isomorphic/system/modules/ISC_Containers.js"></script>
    <script src="smartclientSDK/isomorphic/system/modules/ISC_Grids.js"></script>
    <script src="smartclientSDK/isomorphic/system/modules/ISC_Forms.js"></script>
    <script src="smartclientSDK/isomorphic/system/modules/ISC_DataBinding.js"></script>
    which could end up being:

    Code:
    <script src="smartclientSDK/isomorphic/system/modules/ISC_All.js"></script>
    Then just add your skin and you're done.

    But the JS is by far not the worst offender...it's the skin images. Perhaps as a compile-time step, you could spritify the skin images down to 1 request per widget instead of 42 for the button alone. This might also be added to a compile-time step.

    #2
    Hi tfarrell,

    There are actually very bad performance consequences for combining the JS files for some browsers (mostly older Firefox). However you can use the FileAssembler to combine the files if you don't care about older browsers (and we highly recommend using it for your application .js files, which can proliferate quickly if you factor well).

    On the images, we do plan to switch to CSS Sprites (so button would be one image for example). If you need that completed on a deadline (or just want to see the feature added) consider Feature Sponsorship.

    Comment


      #3
      I have just found the following GWT-based approach:
      - ImageBundleDesign - google-web-toolkit - ImageBundle Generator ...
      - http://www.google.de/url?sa=t&source...JaRhuNFzxChOeQ

      Perhaps SmartClient could leverage the same approach ?

      Comment


        #4
        The SC Skins still need a lot of small image files ! Has SC 8+ something in the making for "Image Bundling" ? Flash and SilverLight, for instance, can unzip ZIP archives on the client-side, if I'm not in error ... Zip Archives can already come in handy when uploading SC Skins to one's host; of course it would be even finer when those uploaded ZIP Archives would NOT have to be unzipped on the server/host side in the first place; but instead could be transported as ZIP archives to the clients over the wire; and then unzipped on the client-side ...

        Comment

        Working...
        X