401ode / GetOutdoorsRI

Site promote the use of Rhode Island's public outdoor resources and increase public engagement
0 stars 2 forks source link

Enhance Page Speed #1

Open theryankelly opened 8 years ago

theryankelly commented 8 years ago

Basecamp Conversation about Speed

Ryan Kelly: We are having some speed and performance issues with our site. It certainly could be a mix of our hosting and outstanding errors we need to resolve. But I wanted to ask if others have any suggestions or tips that have improved the sites performance? Are there certain modules that are notorious for helping or hindering speed?

Jonathan Steffens: Ryan - Can you describe which actions you are seeing poor performance?

Is it on mileage submission, trail lookup, or just asset loading?

A tool that has been helpful has been New Relic, it helps monitors the processes and functions on the servers to help identify calls that may be causing delays that you can then investigate.

We also use alot of Chrome's built in PageSpeed Insights and monitoring the "Console" and "Network" waterfall to find assets that could miss-called or taking too long to load.

Related Links: https://newrelic.com/php/drupal https://developers.google.com/speed/pagespeed/insights/

As far as Drupal configuration, I'll let one of our devs chime in regarding modules configured to assist with load time. Posted Friday at 2:52pm

Ryan Kelly: Thanks, Jonathan! These tools look like they will be a great help in diagnosing some of our issues.

Some of our performance issues seem to be a result of Drupal taking a long time to respond. It can be upwards of a few seconds before our pages load, even the basic pages. Our "Find a Trail" (Explore) page takes the longest but also has the most going on along with a strange redirect. Hopefully, a trial of the New Relic tool will help us identify/clarify some of our issues. Posted Friday at 4:56pm

Bill Dickson: The mileage queries are intensive. 100missourimiles is running on a cluster of four Apache servers and two MySQL servers, with load balancing and query caching. The MySQL servers in particular needed significant tuning in the first days after launch, although we'd need a MySQL admin to weigh in on that (and the one who actually did the work left us some time ago).

Even this environment isn't really optimal; eventually, we'll be moving into Acquia's cloud hosting environment, which will also bring memcache and varnish caching into play (which really reduces the load and allows us to use fewer hosting servers).

Another thing that will help a great deal, when we can get around to it, is converting the mileage records from full nodes (which are much more complex entities than we need for this sort of thing) into custom entities, preferably without external fields. But that's probably some time away.

Memcache and load balancing are probably the two biggest things you can do at the moment to improve performance.

nickatomlin commented 8 years ago

Increasing the 'max_allowed_packet' size and restarting the MySQL server has significantly improved performance of the Explore page. More improvements can probably be made my revising schema issues.

Performance improves again whenever I restart MySQL.

nickatomlin commented 8 years ago

Server response time drastically increases when we remove related feeds, effectively leaving the table empty and the map void of markers. no-parks