Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > General > Big Board Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Multiple private forums - huge memory/server load? Details »»
Multiple private forums - huge memory/server load?
Version: , by Majidm Majidm is offline
Developer Last Online: May 2020 Show Printable Version Email this Page

Version: Unknown Rating:
Released: 10-10-2007 Last Update: Never Installs: 0
 
No support by the author.

Hi all,

We're running VB in a context where we allow users to create private forums for their "groups" of people. Since VB doesn't support "auto deny access UNLESS allowed", we're forced to explicitly deny permissions to every usergroup in existence every time someone creates a group forum. Since creating a forum also implies creating a usergroup (in our setup), we have sort of run into a wall of memory usage. The 'forumscache' array has 279 forums, and the 'forumpermissions' array has 280 members, which results in each of the forums having 280 permissions, i.e. a mega-array with close to 80,000 constituents in it. Of course, this means huge server load and tremendous memory usage (not to mention unserialize() taking FOREVER).

I'm looking at one of the following options - maybe someone could suggest me something alternative too? (I looked at thread prefixes - but the idea is I really want users to have their own private forums that nobody else can see).

a) hacking the permissions system to automatically DENY access if it can't find the correct entry in the 'forumpermission' table (right now, if a user creates a new forum, everybody can automatically view its contents unless I manually INSERT permission 0 for his forumID for EACH usergroup on the site, and I have to do this retroactively every time I create a new usergroup. The 'forumpermission' table has 470,000 entries..... hehe).

b) hacking the forumcache system that it would hit the database every time it needed to access for forumcache->forumpermission[$forumID] - I'm certain it would be faster than parsing a 80,000 object array;

c) --?? some other magical alternative.

Would anybody have any ideas, or hints on a) / b)? I actually don't really know (for now) which parts I'd need to hack - thought I'd throw the question out and start researching after in hopes someone has dealt with this.

Cheers,

-m

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #2  
Old 10-14-2007, 05:34 PM
Lord.Khalid Lord.Khalid is offline
 
Join Date: Sep 2006
Posts: 9
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

why you don't use a password instead of permissions?

Use password and change it regularly or gave the group leader permission to change it, so you can keep that forum private.

I use it in my forum with permissions, but it just 6 groups, I think 279 it is too much to use it with permissions.

Hope that useful

Good Luck
Reply With Quote
  #3  
Old 10-16-2007, 10:37 PM
0tolerance 0tolerance is offline
 
Join Date: Jun 2007
Posts: 88
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

welll why dont you try this?
https://vborg.vbsupport.ru/showthrea...highlight=grps
it gives your users the ability to have their own groups and the group creator is the moderator of the group and theres heaps of other stuff.. but its good.
Reply With Quote
  #4  
Old 10-16-2007, 10:49 PM
nexialys
Guest
 
Posts: n/a
Default

... because the GRPS is a complete seperate system from the forum and is not manage the same way, having it for a lot of groups would overload the system faster than having a large forum...
Reply With Quote
  #5  
Old 04-09-2008, 02:09 PM
Majidm Majidm is offline
 
Join Date: Aug 2005
Posts: 59
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

We got rid of all the extra usergroups and hacked up our own "extra" forums. Things are fast now
Reply With Quote
  #6  
Old 04-09-2008, 11:48 PM
iogames's Avatar
iogames iogames is offline
 
Join Date: Jan 2007
Location: Las Vegas, NV.
Posts: 1,433
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Majidm View Post
We got rid of all the extra usergroups and hacked up our own "extra" forums. Things are fast now
Great site! :up: [you revive my hope in vBulletin ]
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 09:37 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04350 seconds
  • Memory Usage 2,245KB
  • Queries Executed 19 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (6)post_thanks_box
  • (6)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (6)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (6)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete