Gelmiş geçmiş en büyük porno sitemiz olan 2pe de her zaman en kaliteli pornoları sunmayı hedefledik. Diğer video sitemiz olan vuam da ise hd porno ağırlıklı çalışmalara başladık.

Threaded View

  1. #1
    Ext JS Premium Member
    Join Date
    Jun 2011
    Location
    St. Louis
    Posts
    212
    Vote Rating
    9
    jimmylu98 will become famous soon enough

      0  

    Default [4.2.0 beta 2] a very simple/small remoter grid: performance compare to 3.4.x

    [4.2.0 beta 2] a very simple/small remoter grid: performance compare to 3.4.x


    I modified a sencha example remote grid (see attached files) to compare performance with 3.4.x. It is a very simple and small remote grid (6 columns and 27 rows data). I do following initial grid load measurements and tested with FF16 on same machine/same network.

    (1) Program start ( Ext.onReady) to grid render time.
    (2) Program start to grid view ready time.
    (3) Store before load to store load time.
    (4) Program start to store load time.

    All measured times with extjs4.2.0(beta2) and extjs 4.1.1a are at least 30%-50% slower than extjs 3.4.x. (#4 above item: .370 seconds vs .200 seconds ).

    Anyone has some kind of performance with extjs 4.1.x/4.2.x, or just me. Any methods to tune the performance to match 3.4.x? If this is a performance issue with extjs 4.1/4.2, I hope extjs 4.2.x release would at least pay an attention to improve the performance of simple grid.

    Most of my applications are similar to above remote grid, but with language translation, filter, column hide/show at initial load. They perform very well with extjs 3.4.x (less than .5 seconds with FF), but with extjs4.1.1a, users feel slowness (1-4 seconds with FF). Not sure how to use Ext.suspendLayouts() / Ext.resumeLayouts(), and/or store.suspendEvents() / store.resumeEvents() to improve performance for the grid initial load data.

    I am a Premium Member, but no sencha support answer my 4.1.1a question yet: http://www.sencha.com/forum/showthre...ch-extjs-3.4.x.

    4.2.0 test code: ( 3.4.x test code and remote data in zip file).
    PHP Code:
    Ext.onReady(function() {

        var 
    startTime = new Date().getTime();
        
    Ext.QuickTips.init();

        
    //Ext.suspendLayouts();
        
    Ext.define('Product', {
            
    extend'Ext.data.Model',
            
    fields: [{
                
    name'id',
                
    type'int'
            
    }, {
                
    name'company'
            
    }, {
                
    name'price',
                
    type'float'
            
    }, {
                
    name'date',
                
    type'date'
            
    }, {
                
    name'visible',
                
    type'boolean'
            
    }, {
                
    name'size'
            
    }]
        });

        var 
    beforeloadtime =''loadtime =''
        var 
    store Ext.create('Ext.data.JsonStore', {
            
    autoDestroytrue,
            
    model'Product',
            
    proxy: {
                
    type'ajax',
                
    url'grid-filter.json',
                
    reader: {
                    
    type'json',
                    
    root'data',
                    
    idProperty'id',
                    
    totalProperty'total'
                
    }
            },
            
    remoteSortfalse,
            
    sorters: [{
                
    property'company',
                
    direction'ASC'
            
    }],
        
    listeners: {    
            
    beforeload: {  
                
    fn: function() {
                    
    beforeloadtime = new Date().getTime();
                }
            },
            
    load: {  
                
    fn: function() {
                    
    loadtime = new Date().getTime();    
                    var 
    dt =  loadtime -  beforeloadtime;
                    var 
    dt2 =  loadtime startTime;
                    
    //store.resumeEvents()
                    
    console.info' extjs4.x total store load time (from store beforeload to load = 'dt);
                    
    console.info' extjs4.x total time (from start to store load = 'dt2);
                }
            },
            
    datachanged: {
                
    fn: function() {
                    var 
    headerCt grid.getComponent(0).headerCt,
                          
    headers headerCt.getGridColumns(),
                            
    index =  headerCt.items.findIndex('dataIndex''size'), 
                        
    myCol headers[index];
                    
    //myCol.setVisible( false ); 
                
    }

            }
        }
        });
      
        var 
    grid Ext.create('Ext.grid.Panel', {
            
    borderfalse,
            
    storestore,
            
    columns: {
                
    defaults: { sortabletrue }, 
            
    items: [{
                        
    dataIndex'id',
                        
    header'Id',
                
    flxe1,
                }, {
                        
    dataIndex'company',
                        
    header'Company',
                
    flxe1,
                        
    id'company'
                
    }, {
                        
    dataIndex'price',
                
    flxe1,
                        
    header'Price'
                
    }, {
                        
    dataIndex'size',
                
    flxe1,
                        
    header'Size'
                
    }, {
                        
    dataIndex'date',
                
    flxe1,
                
    header'Date',
                        
    rendererExt.util.Format.dateRenderer('m/d/Y')   
                }, {
                        
    dataIndex'visible',
                
    flxe1,
                        
    header'Visible'
                
    }]
        },
            
    loadMasktrue,
            
    dockedItems: [Ext.create('Ext.toolbar.Paging', {
                
    dock'bottom',
                
    storestore
            
    })],
            
    listeners: {
            
    afterlayout: {
                    
    fn: function(){         
               
    // console.info( '  afterlayout  =' );
                    
    }
                },
            
    viewready: {
                    
    fn: function(){
                var 
    endTime = new Date().getTime() - startTime;
                
    console.info'  extjs4.x total view ready time (from start to view ready )  = 'endTime);
                    }
                },
                
    render: {
                    
    fn: function(){
                var 
    endTime = new Date().getTime() - startTime;
                
    console.info'  extjs4.x total render time (from start to render ) = 'endTime);
               
    // store.suspendEvents();
                        
    store.load({
                            
    params: {
                                
    start0,
                                
    limit50
                            
    }
                        });
                    }
                }
            },
            
    emptyText'No Matching Records',
            
    title'Grid Filters Example',
            
    height400,
            
    width700,
            
    layout'fit',
        
    renderToExt.getBody(),
        });


    }); 
    Attached Files