Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.7 > vBulletin 3.7 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Links and Downloads Manager Details »»
Links and Downloads Manager
Version: 2.3.0, by AndrewD AndrewD is offline
Developer Last Online: Apr 2010 Show Printable Version Email this Page

Category: Major Additions - Version: 3.7.0 Rating:
Released: 12-24-2007 Last Update: 06-13-2009 Installs: 576
DB Changes Uses Plugins
Re-useable Code Additional Files Translations  
No support by the author.

What this is and does

LDM is a general-purpose tool for managing libraries of links and files, and handling uploads and downloads in a flexible way, while tracking and control user access. It has a range of integrated media players and a large library of 'plugin' extras.

Installation and Usage Explained in the on-line Wiki, with a brief explanation in the file instructions.txt in the release zip. The recent revision history is given in the first post of this thread.

Please use carefully and always backup your database before upgrading. Post reports of problems and suggestions for enhancements in this thread.

14.06.09 Version 2.3.0 is now the the officially-supported version. Works with 3.7 and vb 3.8. Please post comments in this thread

22.06.08 Version 2.2.9-post1 - This is the previous supported version. Works fine with all versions of vb 3.6 and vb 3.7. All standard features except profile integration and forum prefix selection work fine with vb 3.8.

Show Your Support

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

Comments
  #342  
Old 04-18-2008, 01:23 AM
RikiB RikiB is offline
 
Join Date: Dec 2007
Posts: 76
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok, so what I discovered is the reason its fast with a dlm is because of the "allow_http_ranges " is enabled. If I disable this, the speed go dramatically down.

Now, if I link directly to the external file I want, the speed is 800k/s super fast.
If I stream an external link through ldlm the speed is slow and variable (50k-130k).

Why would streaming (force_redirect=0) a file through ldlm cause the speed to go down so much? Also, why would using http ranges make the speed faster (yet in some cases a tad unstable)?

Is there any way I can fix this? I use a shared server, perhaps tweaking the php.ini file? Does the speed of the server ldlm lives on limit the speed files are streamed through ldlm?

Please help me understand my situation so I can make a smart decision on how to make ldlm work.
Thanks again!
Riki
Reply With Quote
  #343  
Old 04-18-2008, 08:11 AM
AndrewD AndrewD is offline
 
Join Date: Jul 2002
Location: Scotland
Posts: 3,486
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by RikiB View Post
Ok, so what I discovered is the reason its fast with a dlm is because of the "allow_http_ranges " is enabled. If I disable this, the speed go dramatically down.

Now, if I link directly to the external file I want, the speed is 800k/s super fast.
If I stream an external link through ldlm the speed is slow and variable (50k-130k).

Why would streaming (force_redirect=0) a file through ldlm cause the speed to go down so much? Also, why would using http ranges make the speed faster (yet in some cases a tad unstable)?

Is there any way I can fix this? I use a shared server, perhaps tweaking the php.ini file? Does the speed of the server ldlm lives on limit the speed files are streamed through ldlm?

Please help me understand my situation so I can make a smart decision on how to make ldlm work.
Thanks again!
Riki
Here's the story:

- When you use LDM in its default configuration (force_redirect=0), LDM reads the file and retransmits it to the user. If the cURL library is available to PHP on your server and the download has been specified using a full url, the transfer runs as efficiently as is possible. If you do not have cURL or if the file is on the server and specified using a local filename (i.e. no http: at the front), the file is read and transmitted in blocks (by default 32Kbytes in size; 256K bytes on Windows servers). In that situation, it is possible that transfers of large files will proceed faster with a larger block size, at cost of larger memory requirement. We need to do some tests.

- Download managers gain their speed improvement by making multiple connections to LDM, to request different sections of the file. Within the limits of server capacity, these sections are transmitted in parallel, and the download manager then reconstructs the whole file. This process speeds things up for the user but increases load on the server, and can quickly kill a shared server. If you disable allow_http_ranges, then download managers are not allowed to make multiple requests. The file gets transferred sequentially.

- If you set force_redirect to 1, then LDM does not intervene in the handling of the transfer. The speed of the transfer depends entirely on the construction of the web server. One side effect is that inquisitive users can find out where the file is stored, and bypass your security.

Transfer efficiency and speed (and also server load) depend critically on certain factors. If the file is physically stored on a different server, there is a *large* overhead involved in fetching the file and retransmitting it. Transfer of remote files will *always* be much faster if force_redirect is set to 1, at the costs of reduced security, because the transfer is being handled directly (and solely) by the server on which the file is stored.

Here's the catch: If you set up a local file using its full url (i.e. http: // yoursite / yourdir / yourfile.typ) instead of using the local filename ( / yourdir / yourfile.typ), LDM has to assume that the file is remote. This is because web servers may have been set up with redirections, mod_rewrite, etc.) So transfers of local files specified with full urls are much slower (and also more expensive in server load) than when specified as local files.

So the broad answer to your question is 'yes, you can certainly tweak LDM to work faster', but you may end up putting a very large load on the server if you try to squeeze every drop of speed by allowing too many simultaneous transfers. Other sites have had to limit their use of LDM for transferring large files because they have put too much load on the server.

My recommendation is:

- specify local files using local file names, not full urls
- do not offer downloads of large files hosted on other servers
- make sure the curl library is available
Reply With Quote
  #344  
Old 04-18-2008, 01:14 PM
RikiB RikiB is offline
 
Join Date: Dec 2007
Posts: 76
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

wow, thanks for the detailed explanation. This does make a lot of since. I have been avoiding this, but it seems if I want to sell large downloads, I will have to pay for a dedicated server..ouch. I was hoping ldlm would prevent me from having to go that rout with the clever hidden external links. I appreciate your time.
Riki
Reply With Quote
  #345  
Old 04-18-2008, 06:16 PM
RikiB RikiB is offline
 
Join Date: Dec 2007
Posts: 76
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

about the cURL, these are my php settings

PHP
allow_url_fopen Yes
cURL Yes
GD2 Yes
open_basedir not set
post_max_size 8M
upload_max_filesize 2M
MySQL 5.0.45-community
wait_timeout 200

What will happen if I change this setting to Yes?
force_fopen
Prevent use of cURL library for network file handling. Only meaningful when cURL library is installed. Do not change this setting unless you know what you are doing.
Reply With Quote
  #346  
Old 04-18-2008, 07:12 PM
AndrewD AndrewD is offline
 
Join Date: Jul 2002
Location: Scotland
Posts: 3,486
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by RikiB View Post
about the cURL, these are my php settings

PHP
allow_url_fopen Yes
cURL Yes
GD2 Yes
open_basedir not set
post_max_size 8M
upload_max_filesize 2M
MySQL 5.0.45-community
wait_timeout 200

What will happen if I change this setting to Yes?
force_fopen
Prevent use of cURL library for network file handling. Only meaningful when cURL library is installed. Do not change this setting unless you know what you are doing.
Your settings suggest that everything is installed correctly.

As the parameter name suggests, it will disable use of the cURL library, which is used for transferring files from remote servers. The alternative code uses functions built into php, which I think are not as efficient, but are sometimes useful for debugging.
Reply With Quote
  #347  
Old 04-19-2008, 09:50 AM
fortnox fortnox is offline
 
Join Date: Aug 2003
Posts: 29
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi!

In Moment I Use Vb 3.5 and LDM 2.1.2.

Next Time i want upgrade my VBulletin and LDM. Can anybody say me, what i have to do if i want to hold the links etc.... ?

Very Thanks
Reply With Quote
  #348  
Old 04-20-2008, 12:53 PM
AndrewD AndrewD is offline
 
Join Date: Jul 2002
Location: Scotland
Posts: 3,486
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by fortnox View Post
Hi!

In Moment I Use Vb 3.5 and LDM 2.1.2.

Next Time i want upgrade my VBulletin and LDM. Can anybody say me, what i have to do if i want to hold the links etc.... ?

Very Thanks
I've run a quick test - the upgrade process seems to work correctly from version 2.1.2. First upgrade vbulletin to version 3.7, then upgrade LDM by uploading the version 2.2.9 of the code and installing the product xml file.
Reply With Quote
  #349  
Old 04-20-2008, 01:54 PM
AndrewD AndrewD is offline
 
Join Date: Jul 2002
Location: Scotland
Posts: 3,486
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by RikiB View Post
oh, sorry. I asked is there a way to reset the download count on a per user basis? I have the download limit set but I could really use the ability to reset it for some people if they run out of download attempts for technical reasons.

thanks again

Riki
I'll add the facility on the 2.2.9 RC admin/allowances page to clear bandwidth consumed by individual users during the last 24 hours.
Reply With Quote
  #350  
Old 04-20-2008, 05:00 PM
fortnox fortnox is offline
 
Join Date: Aug 2003
Posts: 29
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by AndrewD View Post
I've run a quick test - the upgrade process seems to work correctly from version 2.1.2. First upgrade vbulletin to version 3.7, then upgrade LDM by uploading the version 2.2.9 of the code and installing the product xml file.
Wow, that`s Great, very Thanks.
Reply With Quote
  #351  
Old 04-20-2008, 08:50 PM
RikiB RikiB is offline
 
Join Date: Dec 2007
Posts: 76
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by AndrewD View Post
I'll add the facility on the 2.2.9 RC admin/allowances page to clear bandwidth consumed by individual users during the last 24 hours.
The main thing was the hits, I have a limit set to like 5 hits per user. It would be easiest if I could just reset those hit values on a per user basis. Currently, the only way to give a user more hits is to raise the global hit number, which gives everyone more hits. If I could perhaps give individual users more hits or reset the hits they currently used, either would be great!

Thanks man.

Riki
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 01:09 PM.


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.07817 seconds
  • Memory Usage 2,319KB
  • Queries Executed 25 (?)
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
  • (6)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (4)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete