Active
Project:
Multifield
Version:
7.x-1.x-dev
Component:
Miscellaneous
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
7 Sep 2013 at 18:48 UTC
Updated:
18 Aug 2016 at 17:58 UTC
Jump to comment: Most recent
Some initial testing shows unexpected results with multifield taking longer. Not sure if we can optimize things somewhere, or add some extra caching.
Comments
Comment #1
mcrittenden commentedI ran a few simple benchmarks in which I create the exact same setup in two different sites, one with multifield and one with field collection (each had an image subfield and 3 text subfields), and added one node with 5 values for the field group into each. This is the result when viewing the node page:
https://gist.github.com/mikecrittenden/6455581
Note that "CACHE" in this place refers to Drupal's built in page caching.
Comment #2
mcrittenden commentedI didn't investigate further, but the first thing that came to mind was that since FC's are stored as entities, maybe the internal entity caching is helping speed things up, which obviously multifield can't take advantage of.
Comment #3
steinmb commentedInteresting result though. The caching result, is it Drupal core cache or is this with https://drupal.org/project/entitycache?
Anyone looked on memory consumption?
Comment #4
mcrittenden commentedsteinmb, it's built in Drupal caching (i.e., all the checkboxes on admin/config/development/performance checked without any contrib perf modules added). So no entitycache.
Comment #5
dave reidLooks like #2179721: multifield_type_get_fields() is *very* slow might have resolved a big performance issue.
Comment #6
elijah lynnJust throwing this out there. We have some API calls that were doing close to 7,000 Entity loads, we switched to Multifield and the Entity Loads dropped to 4,000. This led to response times from 4-5 seconds to around 1-2 seconds. I have actual data I will post in the future. Until then, just know that this is insanely faster than Field Collections.
Also, yes, we are using Entity Cache and around 40% of the response time was spent in Memcache itself, but 7,000 entity loads from Memcache still takes a while.