Datastore / serialized data question

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • bstillman
    Senior Member
    • Jun 2007
    • 127
    • 3.8.x

    Datastore / serialized data question

    Here's a question you probably haven't had asked before...

    The problem is we have thousands of forums, one for each class. The query of the serialized data from the datastore table is 5MB+. This causes problems with Apache. The CPU pegs at 100% under moderate load. We've narrowed it down to this datastore query.

    Is there a way to disable the default datastore function? We are using memcached, but it isn't helping.
    Last edited by bstillman; Fri 19 Nov '10, 10:34am.
  • bstillman
    Senior Member
    • Jun 2007
    • 127
    • 3.8.x

    #2
    Awesome. A week later and still no reply.

    Comment

    • Steve Machol
      Former Customer Support Manager
      • Jul 2000
      • 154488

      #3
      I don't understand the question, but datastore is absolutely required for vB to function.
      Steve Machol, former vBulletin Customer Support Manager (and NOT retired!)
      Change CKEditor Colors to Match Style (for 4.1.4 and above)

      Steve Machol Photography


      Mankind is the only creature smart enough to know its own history, and dumb enough to ignore it.


      Comment

      • bstillman
        Senior Member
        • Jun 2007
        • 127
        • 3.8.x

        #4
        Originally posted by Steve Machol
        I don't understand the question, but datastore is absolutely required for vB to function.
        You don't understand the question yet answered it without problem.

        Not the answer I was hoping for, but at least it's an answer.

        Comment

        • kmike
          Senior Member
          • Sep 2003
          • 701
          • 3.8.x

          #5
          It's a well known deficiency in vBulletin - each forum page requires a huge chunk of datastore data, even if it's not really needed by the page. Though forumcache is a most glaring offender, it's the thread prefixes that may really kill the web frontend performance because of the really stupid design of prefixcache.

          You can check the biggest datastore consumers by running this query:
          select title,length(data) as len from datastore order by len desc limit 10;
          If prefixcache is on top of the list, you've been hit with the prefixcache design issue. It could actually be mitigated with a small source code change.

          If forumcache tops the list, I'm afraid there's not much you can do, there are no low hanging performance optimizations on that path. If you use memcache, there's a much faster serializer for it (igbinary), you could try to recompile memcache with it, install PHP Memcached module (which supports igbinary) and hack it into vBulletin.

          If you have a single web frontend server, memcache isn't really needed and is more of an overkill, you are better off with some local shared memory cache like eAccelerator/APC/XCache. At least eAccelerator is able to store the unserialized arrays directly in the shared memory, so the serialization/unserialization step could be eliminated completely from vBulletin datastore, saving a great deal of processing time for a huge forumcache.

          Comment

          widgetinstance 262 (Related Topics) skipped due to lack of content & hide_module_if_empty option.
          Working...