Welcome Guest Search | Active Topics | Sign In | Register

EO.WebBrowser slow loading Options
Scott T
Posted: Tuesday, February 18, 2014 11:16:33 AM
Rank: Member
Groups: Member

Joined: 11/7/2008
Posts: 16
I am testing EO.WebBrowser with VS2010 Windows Forms Project and noticed that when first loading there is like a 5 second pause before the website opens. Does this have anything to do with the trial version? Or is this common?

Thanks!
eo_support
Posted: Tuesday, February 18, 2014 11:23:56 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,196
Hi,

That would depends on your machine and it is common that it loads slower on the first run, but it should load faster if you are not debugging it. In any case, it should not have anything to do with the trial version. The trial version does not have any feature restrictions or performance throttling.

Thanks!
Scott T
Posted: Tuesday, February 18, 2014 2:21:08 PM
Rank: Member
Groups: Member

Joined: 11/7/2008
Posts: 16
I am comparing EO.WebBrowser to Awesomium. EO.WebBrowser supports our dropdown boxes, Awesomium does not work with our combo boxes.

EO.WebBrowser takes 16 seconds first load and then 8 seconds everytime after.

Awesomium takes 8 seconds first load and then 2 seconds everytime after.

Do you know if there are any performance enhancements in the works?


Thanks!

Scott
eo_support
Posted: Tuesday, February 18, 2014 3:24:57 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,196
Hi,

That doesn't make much sense to us. Both EO.WebBrowser nad Awesomium are based on Chrome so once the Url is handed off to the Chrome side, it should pretty much the same. The main difference between our product and other product is our product is much easier to use. For example, we pack everything inside the same DLL so you don't have to deal with multiple files, but that shouldn't have such a great impact on performance.

There are a few more things that are different in our product:

1. We deliberately route a lot of notification through the UI thread so that you can handle those events easily without worry about synchronization issues. So if your UI thread is too busy, then that can have a negative impact on the performance;
2. For security reasons, the browser engine creates "security walls" around pages between different domains. So if you use the same WebView to load Urls from different domains, then you will be tearing down and rebuilding that security wall every time. To verify if this is the problem, try to load several Urls from the same domain and see if you see a big difference on the speed;
3. Our waiting mechanism is much more reliable so when functions like LoadUrlAndWait returns, it really means the page has completly loaded. For example, if you have a JavaScript that is triggered during load (for example, an alert call directly in the page), that code will be run before LoadUrlAnWait returns. If user waits for 10 seconds before closing that alert box, then LoadUrlAndWait will be delayed for 10 seconds. I am not sure if that's what you use to measure the load time;
4. Our engine is based on the latest Chrome code base, which I believe is much newer than what Awesomium uses;

In fact because the engine is based on Chrome, during our test the load time is pretty much the same as Chrome browser. You can try to start our TabbedBrowser sample and try to load some popular sites with the sample app and with Chrome browser, you will see both are almost always instant. Taking 8 seconds to load a page is very rare. So you may want to use the sample app to load your page and see if you see any significant difference "visually", if not much difference visually, then maybe the difference is only when we consider a load has completed.

Thanks
Scott T
Posted: Wednesday, February 19, 2014 9:08:57 AM
Rank: Member
Groups: Member

Joined: 11/7/2008
Posts: 16
When I use the TabbedBrowser sample everything renders and loads very fast.

Using your 'Getting Started'... 'With Windows Forms Project', and setting the url to www.microsoft.com, you will see the performance issue I am talking about.

I'm not sure what pieces of the TabbedBrowser are needed to increase performance. Can you suggest anything?

Thanks!

Scott
PhilipT
Posted: Wednesday, February 19, 2014 9:49:19 AM
Rank: Advanced Member
Groups: Member

Joined: 2/15/2014
Posts: 52
I agree with Scott here.

The EO.WebBrowser does seem slower. I'm already running on high-speced Macbook and good internet connection. Comparing to running the Google Chrome vs WinForm using WebView class (a very simple project at that), i can see the performance difference. Not sure if this is a fair comparison.

Regards,
Philip

eo_support
Posted: Wednesday, February 19, 2014 12:44:45 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,196
Hi,

Please try to set EO.WebBrowser.Runtime.CachePath. The TabbedBrowser sample has this property in App.xaml.cs set and a regular browser like Chrome would also have a physical cache location. However since EO.WebBrowser is a runtime library, it does not have cache directory set by default. This is the only significant difference that we can think of between the TabbedBrowser app and your app (TabbedBrowser is based on WPF instead of Windows Forms but that should not matter). Once we set the cache path, we tested EO.WebBrowser in a Windows Forms application and it seems to have the same performance as the TabbedBrowser sample.

Thanks!

PhilipT
Posted: Thursday, February 20, 2014 9:23:34 AM
Rank: Advanced Member
Groups: Member

Joined: 2/15/2014
Posts: 52
Following your advise, there is indeed an improvement but definitely not on par with Google Chrome during start up. But loading from page to page, it's comparable to Chrome.

Is there a way to change the background color while loading the initial page?
eo_support
Posted: Thursday, February 20, 2014 9:37:32 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,196
Hi Philip,

That makes sense. EO.WebBrowser should have comparable performance to Chrome as to loading from page to page. However the start time is indeed slower. There are a few factors. One of the biggest factor is that Google Chrome is a native application from start where as EO.WebBrowser is in .NET. So there is additional overhead on that part, particularly when the code initializes.

I do not believe there is anyway to change the background color in the current version. We can put this into our list though.

Thanks!


You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.