![]() |
Plugin Accelerator
Summary: If you use the Vbulletin Plugin System (Specially if you use a lot of plugins), this will help improve the performance of the system overall by inlining all of the plugin code into the PHP files themself. Essentially making it as if you had hacked the files yourself, this will give you better performance on your forum overall. PS. Use this in conjunction with my Other Hack (Compress Forum Templates) for speeding up your forum even more by compressing templates. https://vborg.vbsupport.ru/showthread.php?t=107615 PS. Use this in conjunction with my Other Hack (Template Cache System) for speeding up your forum by caching its templates. https://vborg.vbsupport.ru/showthread.php?t=110144 Install:
Upgrade:
Current Status: (RC2) Release Candidate 2 Has Been Released. This code has been deemed acceptable and to be used by all. Please report any bugs back to this thread. Thanks.
Important Notes: 1. While this IS a release candidate, more than likely its not fully bug free so Please backup your files before you install this modification, this system is not yet perfect. 2. When running "Rebuild Hook Cache" and "Rebuild All Plugins" if you ever see a small parse error, or file couldnt be opened error; re-run both again and it should go away. 3. includes/hook_files.php contains locations of all the files the accelerator scans for plugin hooks, if you have any files that have been renamed, moved, etc.. you need to add it to that file on its own line, thanks. If You Have Problems: If you incur any parse errors, or pages not displaying after running the steps. Please make a copy of the affect file as well as its original version, zip them and upload somewhere. Send me a link to the file for me to download, review and provide a fix. |
Laymans terms please :o lol
|
it works!
|
Quote:
|
Interesting :)
I wrote a little windows application to prepare a "slipstreamed" vBulletin with all Plugins included back in beta stage. Worked very well, though you loose the flexibility of the Plugin system: You can't easily enable/disable Plugins/Products through ACP anymore, as this requires reprocessing the files. And having them +w might not be a too good option, especially in shared environments. |
Quote:
As for the chmod options, there is a truth to that; but I can probably write a suitable php implementation that can control the chmod options to a degree when files need to be wrote, then set back to 755.. ofcourse this will defer depending on the system; in the end people can always chmod their files to 777 when they want to make a change, then back to 755 when they finish. |
Yeah, but if I turn Off the Plugin System you will have to re-process all files that contain active Hooks :)
Also, you would have to add a check for DISABLE_HOOKS being set on every Hoook location, or that won't work any longer - which again adds some overhead. |
Quote:
I plan to keep existing compatability; Even if used an if() construct for each plugin segment that still takes less cpu cycles than an empty function call. |
Update:
Integrated Test Number 2, this does an actual hook cache, hook replace with php code, output with 2 included example files. This is a proof of concept attempt, and will be further expanded probably tomorrow.. but this is a good foundation to work from. No need to worry about modification of your files, this is performed on the 2 test files e_1.php and e_2.php included with the archive. |
hello...
im not a coder or a xpert... in easy way...does it help speed up vb3.5.3 ????? .i read the description mentioned...:S kinda hard to realize.. it will create another plug in system that will work faster than the defult system? sorry for this kind of raw qus...but im not a coder or an xpert.. thnx |
Quote:
We should have "fully" operational code with the next day or so. |
Thans let us try with it in our test site ...
:) thnx |
Hey thanks,
But there is no file called static_plugins.php in the zip file! |
Quote:
|
Re: No4 below, what findings do you want?
Quote:
|
/me clicks on the clicky clicky Install button...
|
Quote:
|
So let's just make sure I understand this;
This will scan every vbulletin php file for hook calls, and for each one it will ;- 1. If you have no plugins associated with that hook it will just comment it out 2. If you have a plugin that uses it, it will edit the actual file - to copy the code into it. What happens when I edit/enable/disable plugins ? Would it not be less dangerous to copy the plugin code to a php file named after the hook, and just edit the hook call to an include() for that file (have a plugins folder the same as the includes folder) ? |
Paul, included I have a file called hook_files.php that list 1 file per line that tell the script which files are permitted to be parsed.
The hooks that have no plugincode associated with it, are commented out in "Accelerated Plugin Style Comment Blocks" for use later (Which Still Saves You an Empty Hook Function Call". If there is a valid hook that there is plugin code, it will insert the code in the correct location inside the files that use that hook. When you enable/disable plugins, the files that are modified are reverted back to their natural state with their default vbulletin php code. As for using includes, specifically "naming a file after each hook name", we would encounter 'the law of diminished returns'; as there are 8+ hooks in some files, includes() account for filesystem stat calls while on "Most" pages be faster than an eval() to a large amount of code; still be slower than running it directly from inside the script using it. Note to Anyone Reading This: None of the above actually Works yet; we are still in testing stages. |
Interesting cocept. I think I'll stick to manually doing my files.
|
Quote:
This is one of many modifications I plan to release involving the runtime of Vbulletin; with suggestions from Scott and a couple other people; there are many more places inside vbulletin that can be optimized. |
I'll be keeping an eye on this one. Good to see you coding again. :)
|
Update Everyone:
# First Working Release. Not all features are fully developed, but it does perform the primary objective. # Automatic Re-Compiling of Plugins into Files will be presented in the next release; currently if you import, add, or update any plugin/product. Please click "Rebuild All Plugins" to refresh your files with up2date code. ---------------- In Short, this is a Functional Release; the tweaking of various parts of vbulletin to remove excess queries, and automatic recompiling on plugin add,edit,import will be presented in the next release. I urge everyone to try this hack out and send feedback regarding any problems that you are having (If you have any). Note: Using the built in Enable/Disable link, you can turn off the system at any point in time you wish incase a problem occurs; upon disabling it will convert all Compiled Code back into Vbulletins default Plugin Hook System and vice versa. Thankyou. |
How will [vbulletin] upgrades be handled ?
Edit: A couple of points. 1. Please make it a product, and install the phrases this way. 2. Make a custom cpnav file to cut out the editing of the vbulletin one. |
Quote:
As for upgrades, all that needs to be done is running "Rebuild Hook Cache", "Rebuild All Plugins". |
Ok updated the Install.txt
Created product installer: product-plugin_accelerator.xml Created navigation addon: cpnav_plugin_accelerator.xml ps. thanks paul for mentioning, I hadnt experimented with the product system yet. (havnt been around vb in like 6 months, lol) |
I think i have scared all of the testers off, it works people; atleast give it a try. Lol.
|
Quote:
|
WOW! This really made everything faster. GREAT MOD!!!! THANKS!
|
Huge Update
- Critical bug involving active status to not be set has been resolved. Those who had problems with activating the system should now have no problems. - Added many phrases to the system involving error messages and status messages + Note: Please go through the install.txt file once more, changes were made to plugin.php which should be edited to take care of using the new phrases. To upgrade: Uninstall Product Vbulletin Plugin Accelerator, re-install it through the update file and move all the new files into the their appropriate places via the install.txt file. |
this sounds great, i need to watch this thread
i don't know enough about vbulletin to fix it if something goes wrong ha. i just started a site don't want to loose folks from down time ha |
Quote:
|
If you get any parse errors, just re-run "Rebuild Hook Cache" and "Rebuild All Plugins" and it should clear any problems.
|
Ok about my shoutbox problem, it now appears to only display it when I set the shout box to "below navigation bar" and Rebuild All Plugins. Won't work when it's set to "Below Forums"
Strange |
Quote:
//[p:forumhome_start] $testing = 'woot'; //[/p:forumhome_start] Should be 3 or 4 different comment block hooks throughout index.php ps. if possible, change the filename to index.txt and upload it as an attachment. |
oooh about that, I have VBA CMPS installed and it's the index.php, the original VB index.php is renamed to forum.php. Is this causing the problems?
If so, any way to get around it? (i don't see any comment blocks in the VBA CMPS index.php) |
Quote:
You have to remember, hook_files.php contains the locations to all of the files the Accelerator scans for hook locations; without that it doesnt know what and where to replace any plugin code. Update that hook_files.php with forum.php and the Rebuild Hook Cache, Rebuild All Plugins. |
Done that, doesn't seem to help
Though it is leaving your comment blocks in forum.php |
This is a great concept Trigunflame, I would love to improve speed any way possible but this killed my board after running Rebuild Hooks + Plugins.
After running those I recieved this error on every page I tried loading Code:
Parse error: parse error, unexpected ']' in /home/rplace/public_html/board/includes/functions.php on line 4353 I ended up having to replace the php files with backups since I couldn't reload the page to try uninstalling it. |
Quote:
|
All times are GMT. The time now is 09:14 AM. |
Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|