Updaten nach Moduländerung verhindern
Updaten nach Moduländerung verhindern
Hi,
Gibt es eine Möglichkeit das neu generieren der Artikel in der con_code zu verhindern?
Nach einer Modifikation eines Modules (oder Layouts) werden ja alle Artikel, in welchen das Modul verwendet wird neu generiert, um die Änderungen zu übernehmen, richtig?
Seit einer Änderung auf der Seite eines Kunden ist die Systemlast des Servers quasi explodiert (load teilweise über 25) und ein flüssiger Aufbau der Seiten ist nun nicht mehr gewährleistet. Das der Server nicht sehr leistungsfähig ist, war zwar bekannt aber damit, dass es sich so auswirken würde, wurde nicht gerechnet.
Es geht jetzt um Schadenbegrenzung. Daher die Frage, ob sich die Update-Funktion irgendwie deaktivieren lässt.
Viele Grüße
Micha
Gibt es eine Möglichkeit das neu generieren der Artikel in der con_code zu verhindern?
Nach einer Modifikation eines Modules (oder Layouts) werden ja alle Artikel, in welchen das Modul verwendet wird neu generiert, um die Änderungen zu übernehmen, richtig?
Seit einer Änderung auf der Seite eines Kunden ist die Systemlast des Servers quasi explodiert (load teilweise über 25) und ein flüssiger Aufbau der Seiten ist nun nicht mehr gewährleistet. Das der Server nicht sehr leistungsfähig ist, war zwar bekannt aber damit, dass es sich so auswirken würde, wurde nicht gerechnet.
Es geht jetzt um Schadenbegrenzung. Daher die Frage, ob sich die Update-Funktion irgendwie deaktivieren lässt.
Viele Grüße
Micha
-
- Beiträge: 5478
- Registriert: Di 2. Mär 2004, 21:11
- Wohnort: Halchter, wo sonst? ;-)
- Kontaktdaten:
Re: Updaten nach Moduländerung verhindern
Jein. So viel ich weiss, werden die erst dann neu generiert, wenn sie im Frontend aufgerufen werden. Und die wurden wohl kaum alle auf einmal aufgerufen, also wuerde ich die Ursache fuer die hohe Last woanders suchen (ich weiss allerdings nicht, wo ...)Micha33 hat geschrieben:Nach einer Modifikation eines Modules (oder Layouts) werden ja alle Artikel, in welchen das Modul verwendet wird neu generiert, um die Änderungen zu übernehmen, richtig?
Gruss
Christa
Re: Updaten nach Moduländerung verhindern
nein...Micha33 hat geschrieben:Gibt es eine Möglichkeit das neu generieren der Artikel in der con_code zu verhindern?
falsch... es gibt im backend nur die vormerkung das contenido den code neu generieren soll... siehe con_cat_art -> createcodeMicha33 hat geschrieben:Nach einer Modifikation eines Modules (oder Layouts) werden ja alle Artikel, in welchen das Modul verwendet wird neu generiert, um die Änderungen zu übernehmen, richtig?
nach aufruf der seite im frontend wird der entsprechende artikel in der con_code erzeugt. nicht vorher...
sieh dir mal die mandanten config.php an...
steht dort vielleicht ein parameter force auf true ?
dann wird bei jeden aufruf der entsprechende eintrag in der con_code erzeugt....
*** make your own tools (wishlist :: thx)
Re: Updaten nach Moduländerung verhindern
Nein, hatte ich auch schon geschaut. force = 1 ist auskommentiert. Es wäre dann ja auch nicht gestiegene Serverlast seit der Modifikation des Moduls zu erklären.sieh dir mal die mandanten config.php an...
steht dort vielleicht ein parameter force auf true ?
Aber man könnte ja theoretisch das Feld createcode per update-query überall auf 0 setzen. Ist zwar keine feine Lösung aber das würde das neu erzeugen des Codes stoppen, oder?
Vielen Dank
Micha
Vermutlich schon, aber gibt es so viele Einträge mit einem anderen Eintrag? Sobald die Seite einmal neu erzeugt wurde, ist die Sache gegessen.
Was für eine Last produziert denn eigentlich die Änderung des Moduls an sich? Wenn die jetzt immer auftritt, würde ich da gucken...
Gruß
HerrB
Was für eine Last produziert denn eigentlich die Änderung des Moduls an sich? Wenn die jetzt immer auftritt, würde ich da gucken...
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
-
- Beiträge: 3626
- Registriert: Di 12. Okt 2004, 20:00
- Wohnort: Voerde (Niederrhein)
- Kontaktdaten:
Wird das Modul denn auf allen Seiten eingesetzt? Und die Änderungen müssen ja keine funktionalen sein um einschneidene Performanceeinbußen zu bringen, z.B.:Micha33 hat geschrieben:Wie gesagt, die Änderung des Modules war unbedeutend. Es wurden keine funktionellen Sachen geändert.
- Endlosschleifen
- nicht endende Rekursionen
Ich würde wie HerrB auch auf die Änderungen am Modul tippen. Aber ein bißchen mehr Details (evtl. inkl. Link zum Anschauen) wären nicht schlecht um sich selbst ein Bild davon zu machen.
Gruß
Ingo
Hier das Modul vor der Änderung: Es geht darum die idcat der Wurzelkategorie eines Stammes zu erhalten um danach das Farbdesign in Form von Variablen zu ändern, bzw. dem Layout zu übergeben.
Hier die neue Version. Es werden nun nicht mehr die Kategorienamen abgefragt, sondern direkt die idcat's.
Viele Grüße
Micha
Code: Alles auswählen
$kategorien = array();
$pfad = array();
$db_Connect = new DB_Contenido;
$sql_kategorien = "SELECT a.idcat, a.parentid, b.name
FROM ".$cfg["tab"]["cat"]." a,
".$cfg["tab"]["cat_lang"]." b
WHERE a.idcat = b.idcat AND
b.idlang = ".$lang." AND
a.idclient = ".$client."
ORDER BY a.idcat;";
//Alle Kategorien mit ihrer Elternkategorie und Namen im Array speichern!
$db_Connect->query($sql_kategorien);
while ($db_Connect->next_record()) {
$kategorien[$db_Connect->f('idcat')] = array($db_Connect->f('parentid'), $db_Connect->f('name'));
}
//Pfad suchen (von 0 (=aktuelle Kategorie) bis x (=Root))!
$aktKat = $idcat;
do {
$pfad[] = $aktKat;
$aktKat = $kategorien[$aktKat][0];
}
while ($aktKat != 0);
$lastKat = $pfad[count($pfad)-1];
$rootName = $kategorien[$lastKat][1];
//echo $rootName;
if ($rootName == "Race Categories") {
$bgcolor = "#800000";
$bgcolorHL = "#C74242";
$bgimage = "../../ImagesLayout/verlauf_race.gif";
$pageid=0;
}
else if ($rootName == "Teams & Pilots") {
$bgcolor = "#33537C";
$bgcolorHL = "#6E90C4";
$bgimage = "../../ImagesLayout/verlauf_teams.gif";
$pageid=1;
}
else if ($rootName == "Galleries") {
$bgcolor = "#986596";
$bgcolorHL = "#C28CBF";
$bgimage = "../../ImagesLayout/verlauf_galerie.gif";
$pageid=2;
}
else if ($rootName == "Cars & Tuning") {
$bgcolor = "#1E9B01";
$bgcolorHL = "#84C66A";
$bgimage = "../../ImagesLayout/verlauf_cars.gif";
$pageid=3;
}
else if ($rootName == "Lifestyle") {
$bgcolor = "#FF963B";
$bgcolorHL = "#FFC68C";
$bgimage = "../../ImagesLayout/verlauf_lifestyle.gif";
$pageid=4;
}
else if ($rootName == "E-Cards") {
$bgcolor = "#01A0B8";
$bgcolorHL = "#00BDD9";
$bgimage = "../../ImagesLayout/verlauf_ecards.gif";
$pageid=5;
}
Code: Alles auswählen
$kategorien = array();
$pfad = array();
$db_Connect = new DB_Contenido;
$sql_kategorien = "SELECT a.idcat, a.parentid, b.name
FROM ".$cfg["tab"]["cat"]." a,
".$cfg["tab"]["cat_lang"]." b
WHERE a.idcat = b.idcat AND
b.idlang = ".$lang." AND
a.idclient = ".$client."
ORDER BY a.idcat;";
//Alle Kategorien mit ihrer Elternkategorie und Namen im Array speichern!
$db_Connect->query($sql_kategorien);
while ($db_Connect->next_record()) {
$kategorien[$db_Connect->f('idcat')] = array($db_Connect->f('parentid'), $db_Connect->f('name'));
}
//Pfad suchen (von 0 (=aktuelle Kategorie) bis x (=Root))!
$aktKat = $idcat;
do {
$pfad[] = $aktKat;
$aktKat = $kategorien[$aktKat][0];
}
while ($aktKat != 0);
$lastKat = $pfad[count($pfad)-1];
$rootName = $kategorien[$lastKat][1];
//echo $idcat;
//echo $rootName;
if ($lastKat== "24") {
$bgcolor = "#800000";
$bgcolorHL = "#C74242";
$bgimage = "../../ImagesLayout/verlauf_race.gif";
$pageid=0;
}
else if ($lastKat== "35") {
$bgcolor = "#33537C";
$bgcolorHL = "#6E90C4";
$bgimage = "../../ImagesLayout/verlauf_teams.gif";
$pageid=1;
}
else if ($lastKat== "36") {
$bgcolor = "#986596";
$bgcolorHL = "#C28CBF";
$bgimage = "../../ImagesLayout/verlauf_galerie.gif";
$pageid=2;
}
else if ($lastKat== "37") {
$bgcolor = "#1E9B01";
$bgcolorHL = "#84C66A";
$bgimage = "../../ImagesLayout/verlauf_cars.gif";
$pageid=3;
}
else if ($lastKat== "38") {
$bgcolor = "#FF963B";
$bgcolorHL = "#FFC68C";
$bgimage = "../../ImagesLayout/verlauf_lifestyle.gif";
$pageid=4;
}
else if ($lastKat== "39") {
$bgcolor = "#01A0B8";
$bgcolorHL = "#00BDD9";
$bgimage = "../../ImagesLayout/verlauf_ecards.gif";
$pageid=5;
}
Micha