I can still use my modified module by replacing it when the new release will be out or there are other dependences?
Possibly. It depends on how you've implemented it, and how many core modules you're willing to patch. Any core modules that use the throttle module would have to be updated to recognize multiple throttle levels
Right now I've set the 'default_nodes_main' to adjust dynamically with the load so that at level 0 the mainpage will show 25 nodes, and progressing at -5 for each level till it reaches just 5 nodes at level 5. I believe this modification I did could improve dramatically the performance since I'm tuning dynamically how the main page is crowded.
Yes, things like this benefit from having multiple throttle levels. But it was decided that the configuration and concepts were too difficult, thus it was simplified: http://lists.drupal.org/archives/drupal-devel/2004-08/msg00486.html
Here's a followup thread showing what other modules are affected: http://lists.drupal.org/archives/drupal-devel/2004-11/msg00375.html
And here's a thread discussing another simplification of the module (I believe in 4.6): http://lists.drupal.org/archives/drupal-devel/2004-10/msg00414.html
This is actually impossibe. Or there's something seriously wrong with drupal calculation. For my experiments I set the detection accuracy to 100% (so a check every hit) and the auto-throttle at
- With these settings Drupal is supposed to go in emergency mode
after five *refresh* of the page.
Even with my crappy connection I'm able to refresh an example page every 4-5 seconds and I kept doing that CONTINUOUSLY. My installation of Drupal has the cache disabled.
Every 15-20 refreshes of the page I kept seeing the throttle level *lowers* from 5 to 4. How is this possible if I was there refreshing continuously and if Drupal parses all my requests?
Something happens, my refreshes are counted till a point, then they go ignored.
This is by design, well, the old design. Essentially, at throttle level 5 the throttle tuned itself to no longer perform database queries. See here: http://lists.drupal.org/archives/drupal-devel/2003-12/msg00218.html
In any case, this was determined to be too complex, and is no longer true in 4.6+.
Also: it could be useful to tell the throttle module to enable the caching in the case the site reaches the fifth level? It would be better than having the cache always disabled?
Such applications are certainly possible, and have been discussed. However this is not currently done.
A link from a popular site can certainly cause a cpu spike. Enabling the cache can help quite a bit, though every time a user leaves a comment the cache is flushed so if you have active discussions the benefit of the cache can be minimal.
No, in this specific case it was just about peoples hitting a specific node all at once.
Once a page is cached, performance for anonymous guests should be significantly better. If you're making lots of modifications to the core code, this may no longer be true.
Any modules you don't actually use should be disabled. Any modules you don't absolutely need should be set to auto-throttle so they can be disabled when the site becomes busy.
But if I have the forum module enabled but noone is browsing the forum nor there are block related to it on the sitebar, it matters if it's active or not?
It should not cause undue overhead in this case. I just used it as an example...
-Jeremy