rbiss Posted September 20, 2009 Posted September 20, 2009 By the way, you need a forum here where your paid customers can ask questions to staff, not just non customers. It ridiculous with no documentation. Are we suppose to send in tickets for basic information? What are the memory requirements for this board? I'm on server number 2 so before I try #3 it would be nice to know what is needed to run this.
Mark Posted September 20, 2009 Posted September 20, 2009 If you need to contact technical support, then yes, send in a ticket - that's what that system is for. Things would get messy if have technicians had to answer both tickets and topics here :) To answer your question - the default PHP 5 memory limit is 128M, which should be sufficient. Our system requirements are documented, while some people may find some settings need to be tweaked if they have a particularly large site - the default configuration should be fine for most, and that is what that page assumes you have.
rbiss Posted September 20, 2009 Author Posted September 20, 2009 [quote name='Mark' date='20 September 2009 - 02:00 PM' timestamp='1253480442' post='1857654'] If you need to contact technical support, then yes, send in a ticket - that's what that system is for. Things would get messy if have technicians had to answer both tickets and topics here :) To answer your question - the default PHP 5 memory limit is 128M, which should be sufficient. Our system requirements are documented, while some people may find some settings need to be tweaked if they have a particularly large site - the default configuration should be fine for most, and that is what that page assumes you have. Both of my last two webhost accounts have PHP5.2 but 32M. Is that insufficient for this board?
Mark Posted September 20, 2009 Posted September 20, 2009 There is a chance you might have problems with more memory-intensive operations such as uploading large files or importing a language pack. Most of the times the issue is that hosts upgraded from PHP4 (which had a much lower default memory limit) and have just forgotten to increase the value. Normally I've found if you ask your host to bump it up to 128M they will. Any host which lowers the limit from the default is being quite restrictive - there's a reason the default is 128 ;)
rbiss Posted September 20, 2009 Author Posted September 20, 2009 OK, thanks. One such error a member was getting is Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 2057011 bytes) in /home/ivfca/public_html/forums/admin/sources/classes/output/formats/html/htmlOutput.php on line 573
pisaldi Posted September 20, 2009 Posted September 20, 2009 [quote name='Mark' date='20 September 2009 - 11:22 PM' timestamp='1253481726' post='1857657'] There is a chance you might have problems with more memory-intensive operations such as uploading large files or importing a language pack. Most of the times the issue is that hosts upgraded from PHP4 (which had a much lower default memory limit) and have just forgotten to increase the value. Normally I've found if you ask your host to bump it up to 128M they will. Any host which lowers the limit from the default is being quite restrictive - there's a reason the default is 128 ;) I have problems importing language pack... In which files should I tell the host to upgrade the memory limit ?
Guest Posted September 20, 2009 Posted September 20, 2009 Memory limit is a server-side setting in php.ini.
.Ian Posted September 20, 2009 Posted September 20, 2009 However the 128MB would then be available to all users on the server - which could result in problems. The information I have been given is it should only be updated if necessary and not automatically. This is the advise also given by VB. Like anything ask 6 people and you will get 6 views.
Mark Posted September 21, 2009 Posted September 21, 2009 One can normally upgrade their memory_limit value with a local php.ini file, or by adding a php ini_set() call, or a htaccess file. Google will tell you how to do those. You could also always contact your host and ask them to do it for you :)
.Ian Posted September 21, 2009 Posted September 21, 2009 [quote name='Mark' date='21 September 2009 - 09:28 AM' timestamp='1253521706' post='1857745'] You could also always contact your host and ask them to do it for you :) True - but then it often is outside of their normal support scope. off to search google - used to doing things on a global scale.
rct2·com Posted September 21, 2009 Posted September 21, 2009 When one considers that each Apache process (and there are usually many running simultaneously) has its own instance of the PHP interpreter running, 128MB per Apache process is an awful lot. I'm managing on my test board at the moment with 32MB.
Martin A. Posted September 21, 2009 Posted September 21, 2009 It's 128MB pr thread/execution, if I've understood it right. And even if you set it to 128MB, it doesn't mean that it will grab everything it can. Plus, how often do you have several executions simultaneously? If each execution takes 0.5 sec, and you get 32 requests in a second, and they all max out the memory, that sums up to 2048MB. But how often does that happen? Ignore this post if I've completely misunderstood how memory handling etc works.
rct2·com Posted September 21, 2009 Posted September 21, 2009 I don't fully understand threading/execution/memory handling either m4rtin. But I have seen servers DIE because Apache has too many processes loaded into memory simultaneously. While they wait their 'turn' for some CPU they sit in memory. If the amount of memory each Apache process 'reserves' is influenced by this 128MB PHP setting, then that memory will fill up faster. As soon as all the memory is used up, the system starts 'paging', swapping out processes onto disk. Eventually, the server locks up as it spends more time paging stuff in and out of memory rather than doing any processing. The maximum number of Apache processes that will be allowed to simultaneously occupy memory is set by the MaxClients setting in httpd.conf. If the server becomes especially busy for some reason, and each process is asking for a lot of memory, the server soon 'dies'.
.Ian Posted September 21, 2009 Posted September 21, 2009 When I asked about this to my upstream provider I was told that this would be available to all users on the server - and could cause major issues if requests coincided. hence the restricting of it. 'On your head be it' was the impression I got - i.e. it would cause more problems than it solved.
bfarber Posted September 21, 2009 Posted September 21, 2009 In doomsday scenarios, perhaps. ;) Generally, most requests use around 7-10MB in our local profiling. My understanding is that the process does not automatically pull/reserve all 128MB. This 128MB limit is a limit within PHP itself so that if the PHP engine finds it has reached whatever static limit you set (i.e. 128MB) the PHP engine stops processing the request. It also controls how PHP pulls memory for it's own use, but not much else. Because PHP changed how memory reporting within the PHP engine works in one of the 5.x versions, PHP *reports* using higher memory than PHP 4 (though the PHP group says that it is actually reporting more accurately, and PHP4 simply didn't show the memory usage it was really using as accurately as 5.x does) which is the reason for the higher limit.
.Ian Posted September 21, 2009 Posted September 21, 2009 thanks - when my clients complain, I'll give them your name ;)
KT Walrus Posted September 21, 2009 Posted September 21, 2009 Yes. The PHP memory limit is a "soft" limit in that PHP only checks when requesting more memory at runtime if it has reached the limit. It is the same as for the other limits like post max size, upload max size, or cpu limit. Setting these limits high have no effect on execution unless the script actually needs the extra memory. For a well written script like IPB, you are only going to be affected by a high limit if the script really needs the memory for some operation and then it only hurts if lots of people simultaneously use lots of memory. If it was a real "hard" limit that upping it would really cripple a system, they wouldn't allow you to change it locally or in your PHP script. It takes no privileges to up a memory limit.
rbiss Posted September 21, 2009 Author Posted September 21, 2009 My host allowed the increase to 128M.
rct2·com Posted September 21, 2009 Posted September 21, 2009 The thing is, if we believe that IPB3 is well-written and doesn't need 128MB, then maybe asking hosts to raise the limit is a BAD idea, especially in a shared hosting environment? It increases the risk that another badly written script on another site on the same server could cripple the server and thus your site.
KT Walrus Posted September 21, 2009 Posted September 21, 2009 [quote name='rct2dotcom' date='21 September 2009 - 01:18 PM' timestamp='1253553526' post='1857890'] The thing is, if we believe that IPB3 is well-written and doesn't need 128MB, then maybe asking hosts to raise the limit is a BAD idea, especially in a shared hosting environment? It increases the risk that another badly written script on another site on the same server could cripple the server and thus your site. Then, just add the "ini_set('memory_limit', '128M');" in the initdata.php file. I haven't tried this, but it should work. I'm not sure why IPB doesn't just put that call in IPB and have an Admin CP setting to specify the value. Especially, if this topic is generating a lot of support issues for people who don't know how to change PHP settings. Also, the Admin CP should have a max_execution_time setting although the default seems fine for most people. Apparently, the default for memory_limit is not high enough on some installations for IPB to work nicely. I see no reason to get your host to up this limit globally if it can be done locally.
Mark Posted September 21, 2009 Posted September 21, 2009 [quote name='rct2dotcom' date='21 September 2009 - 06:18 PM' timestamp='1253553526' post='1857890'] The thing is, if we believe that IPB3 is well-written and doesn't need 128MB, then maybe asking hosts to raise the limit is a BAD idea, especially in a shared hosting environment? It increases the risk that another badly written script on another site on the same server could cripple the server and thus your site. If the PHP group recommends 128, I'd take their word that's a suitable value for most ;) Yes, IPB uses on an average request 7-10 - but if you upload an image thats 1000x1000px large - it's going to take some horsepower to resize that to a thumbnail, and it's not unheard of for us to get tickets from people with limits of 32 or 64 with that exact problem.
pisaldi Posted September 21, 2009 Posted September 21, 2009 [quote name='KT Walrus' date='21 September 2009 - 08:22 PM' timestamp='1253557345' post='1857917'] I'm not sure why IPB doesn't just put that call in IPB and have an Admin CP setting to specify the value. Especially, if this topic is generating a lot of support issues for people who don't know how to change PHP settings. Also, the Admin CP should have a max_execution_time setting although the default seems fine for most people. Apparently, the default for memory_limit is not high enough on some installations for IPB to work nicely. I see no reason to get your host to up this limit globally if it can be done locally. That's a good question... why don't they include it ??? Because some hosts are blocked and won't work ??? It could indicate as advanced modifications at your own risk...
stoo2000 Posted September 21, 2009 Posted September 21, 2009 You couldn't make it an ACP option anyway, you'd need to have the value & setting ready before IPSregistry is intiated, so that's before the database connection is setup
Mark Posted September 21, 2009 Posted September 21, 2009 [quote name='pisaldi' date='21 September 2009 - 08:46 PM' timestamp='1253562374' post='1857955'] That's a good question... why don't they include it ??? Because some hosts are blocked and won't work ??? It could indicate as advanced modifications at your own risk... Not only will it not work on some hosts, attempting to set it will result in an error.
Recommended Posts
Archived
This topic is now archived and is closed to further replies.