Slow with lots of data; How to improve


After the example is run, and resize the window, the browser is unresponsive for over 30 seconds. (the profiler says its mostly scripting and rendering). And not even all of the data is loaded (you can add room 6 till 9 to see the time increase dramatically).

How can I optimize this? And can the component be optimized by your team?

For us this is an important component but taking 30 seconds to render a page is unacceptable for a web application nowadays.

7 Replies

KK Karthigeyan Krishnamurthi Syncfusion Team January 10, 2018 05:01 PM UTC

 
Thank you for contacting Syncfusion support. 

In the provided sample, Schedule has 40 resources and 1378 appointments where 828 appointments are rendered in current view. Therefore, Schedule will take reasonable amount of time during initial rendering and view navigation. We have already logged the task for paging support (initially renders the current view time range appointments and will load other range appointments dynamically while scrolling) in Scheduler and it will be implemented in any one of our upcoming releases. 
 
Regards, 
Karthigeyan 




WO Wouter January 11, 2018 10:09 AM UTC

Thanks for the answer, and I'll look forward to the update.


NR Nevitha Ravi Syncfusion Team January 13, 2018 03:39 AM UTC

Hi Wouter, 

As mentioned earlier, the paging support will be implemented in any of our upcoming release. We would appreciate your patience until then. 

Regards, 
Nevitha. 



WO Wouter April 18, 2018 09:08 AM UTC

I migrated to the latest update, but its not much improved it seems. Is this something thats being worked on or is it something that would be fixed later on?

Updated example: http://jsplayground.syncfusion.com/tfo03ry3
(result on my pc in attachment)

Attachment: PerfResult_6a076195.7z


NR Nevitha Ravi Syncfusion Team April 20, 2018 05:30 PM UTC

Hi Wouter, 

The paging feature supporting to load both resources and appointments on demand is not implemented yet. We have previously conveyed that we will plan and implement it in any of our upcoming release.  

Giving priority to your requirement now, we have prepared a workaround solution to reduce the time load by loading pages with specific resource count on each page which can be viewed from the below link. 

            $('#pager').ejPager({ 
                pageSize: 1, 
                totalPages: 5, 
                totalRecordsCount: 5, 
                pageCount: 5, 
                change: "slideImages", 
                isResponsive: true, 
            });         
 
 
 
function slideImages(args) { 
            CurRoomData = []; 
            var CurResData = new ej.DataManager(resData).executeLocal(new ej.Query().where("groupId", ej.FilterOperators.equal, roomData[args.currentPage - 1].id));  
            CurRoomData.push(roomData[args.currentPage - 1]); 
            var curAppData = new ej.DataManager(appData).executeLocal(new ej.Query().where("roomId", ej.FilterOperators.equal, roomData[args.currentPage - 1].id));   //filter appointments for the selected page based on roomId 
            var SchObj = $("#Schedule1").ejSchedule("instance");   // creating scheduler object 
            SchObj.model.resources[0].resourceSettings.dataSource = CurRoomData;  
            SchObj.model.resources[1].resourceSettings.dataSource = CurResData; 
            SchObj.model.appointmentSettings.dataSource = curAppData; 
           SchObj.refresh(); 
        } 

Kindly check whether the above code example suits your requirement to overcome the performance issue with more number of resources. 

Regards, 
Nevitha.  



WO Wouter April 23, 2018 06:27 AM UTC

Hello Nevitha,

Thank you for your answer.

The paging for loading both resources and appointments I solved myself already another way. The issue is that we want to show a lot of data per month and that makes it slow. I already load only the data for one month and nothing else, but we need to display it on one screen. The paging solution is nice, but it doesn't fit our use case.


VS Velmurugan S Syncfusion Team April 25, 2018 01:11 PM UTC

Hi Wouter,   
  
Considering your requirement to display huge number of data on single screen and to avoid delay, we will work on it to improve the data loading time and it available in our upcoming main release Volume 2, 2018.   
  
We appreciate your patience until then.   
  
Regards,   
Velmurugan 


Loader.
Up arrow icon