Ben bir nesne sınırı karşı darbeleme ve çökmesine neden php gibi görünüyor PHP bir el yapımı ORM var. İşte çökmelerine neden olur basit bir script var:
<?
class Bob
{
protected $parent;
public function Bob($parent)
{
$this->parent = $parent;
}
public function __toString()
{
if($this->parent)
return (string) "x " . $this->parent;
return "top";
}
}
$bobs = array();
for($i = 1; $i < 40000; $i++)
{
$bobs[] = new Bob($bobs[$i -1]);
}
?>
Hatta komut satırından bu çalışan sorunlara neden olur. Bazı kutuları 40.000 'den fazla nesneleri almak. Linux / appache üzerinde denedim (başarısız) ama benim app IIS / FastCGI çalışır. FastCGI bu ünlü "FastCGI işlemi beklenmedik biçimde ayrıldığı" hata neden olur.
Açıkçası 20k nesneler biraz yüksek, ama onlar veri ve iç içe karmaşıklığı varsa o kadar az nesneler çöküyor.
Hızlı CGI sorunu değil - Ben komut satırından çalışan denedim. 6.000 MB ve gerçekten düşük bir şey - - 24MB Ben gerçekten yüksek bir şey belleği ayarlama denedim. Ben yeterince düşük ayarlarsanız, ben "bitkin ayrılan bellek boyutu xxx byte" hatası alırsınız.
Yuvalama önleme çeşit - Ben denir fonksiyonların sayısı ile yapmak zorunda olduğunu düşünüyorum. Ben Orm'un yuvalama belki de karmaşık ama olduğunu olduğunu düşünmüyordu. Ben ölür sadece ONE, daha fazla nesneyi yüklemek eğer ben bazı oldukça açık durumlarda nerede var, ama bu 3 saniyenin altında yük çalışır eğer.