*In Deckung geh* Probleme beim Konfigurieren
Bio
- zu diesem forum
Sup!
Das Quoting in meinem Forum http://bionic.dnsalias.org/forum/ funktioniert nicht... da ist irgendwas verkonfiguriert, weiterhin.
In irgendeinem Konfigurations-Hash scheinen ein paar Angaben zu fehlen.
Ich weiss, daß die Konfiguration, die anscheinend fehlt, in der fo_admin_default.xml steht, aber obwohl ich diverse Skripte mit Debugging-Code vollgestopft habe, konnte ich nicht beobachten, daß diese Konfigurationsdatei jemals eingelesen worden wäre.
Ist die Frage also: Wann sollte die fo_admin_default.xml eingelesen werden und wo muß man sie referenzieren, d.h., in welchen anderen Konfigurationsdateien wird sie erwähnt? Sie steht in der common.xml als Variable namens "adminDefault" drin, so wie das IMHO sein sollte, aber eingelesen wird sie anscheinend trotzdem nicht.
Und wofür ist die cgi/share/common.xml gut - es gibt doch schon die config/common.xml... Verwirrungsstrategie?
Gruesse,
Bio
hi!
Das Quoting in meinem Forum funktioniert nicht... da ist irgendwas
verkonfiguriert, weiterhin.
Stimmt. Das Problem hatte ich auch schon mal, aber das ist schon so
lange her, dass ich nicht mehr ganz genau weiß, woran es lag. Auf
jeden Fall scheint er eine Konfigurationsdatei nicht zu finden, wohl
die fo_admin_default.xml. Schau mal, ob der Pfad auf diese Datei
überall richtig gesetzt ist. Und schau auch mal ins Error-Logfile,
was da drin steht.
bye, Frank!
Sup!
Stimmt. Das Problem hatte ich auch schon mal, aber das ist schon so
lange her, dass ich nicht mehr ganz genau weiß, woran es lag. Auf
jeden Fall scheint er eine Konfigurationsdatei nicht zu finden, wohl
die fo_admin_default.xml. Schau mal, ob der Pfad auf diese Datei
überall richtig gesetzt ist. Und schau auch mal ins Error-Logfile,
was da drin steht.
Du meinst das Apache-Error-Log?
Und... diese fo_admin_default.xml müsste also *jedes Mal* eingelesen werden, wenn man z.B. ein Posting liest?
Gruesse,
Bio
Hallo Bio,
Du meinst das Apache-Error-Log?
Ja, meint er.
Und... diese fo_admin_default.xml müsste also *jedes Mal*
eingelesen werden, wenn man z.B. ein Posting liest?
Natuerlich. Wie sollte das Script denn sonst an seine
Konfiguration kommen?
Gruesse,
CK
Sup!
Hmmm... ich hatte gedacht, theoretisch könnte man doch das ganze Forum gleich einem Hash im Speicher halten die ganze Zeit, und damit das konsistent bleibt, wird dieser Hash von einem Skript, das als Dämon und endlos läuft, verwaltet... ausserdem hat das Ding einen Socket offen, an den sich die CGIs connecten und mitteilen, das was neues gepostet ist oder das sie das Forum darstellen sollen. Das zentrale Skript verarbeitet dann hübsch der Reihe nach die Anfragen und weil es immer läuft, braucht es nix zu parsen, und weil es alleine ist, braucht es keine Locks - nur beim Start oder SIG Alarm bastelt es den Hash wieder aus einer Datenbank zusammen und liest die Config neu... oder so ... habe ich mir heute ausgedacht beim Fahrradfahren, vielleicht ist das aber auch total scheisse und bringt nix ;-)
Gruesse,
Bio
Hallo Bio,
Hmmm... ich hatte gedacht, theoretisch könnte man doch das
ganze Forum gleich einem Hash im Speicher halten die ganze
Zeit,
Dafuer ist Perl nicht geeignet. Perl schluckt und schluckt
immer mehr Speicher, gibt ihn aber erst wieder frei, wenn der
GC laeuft -- und der laeuft erst bei Script-Ende. Aber
ansonsten:
http://cvs.teamone.de/selfforum/
[...] aus einer Datenbank zusammen [...]
Datenbank? Bei hierarchischen Daten? Irgendwie beisst
Hierarchie und Menge sich IMHO ein wenig.
Gruesse,
CK
Sup!
Nun, das Problem mit den hierarchischen Daten ist, daß man die trotzdem serialisieren bzw. plattklopfen muß, weil der Speicher flach ist.
Und ob man jetzt einen XML-Datei parst, oder eine Datenbank "spidert", ist IMHO nur ein kosmetischer Unterschied - wenn Du die ganze Baumstruktur im XML wiedergibst, zahlst Du dafür mit erhöhtem Aufwand beim Speichern.
Sup!
Hmmmm... was macht Perl, wenn man forkt? Wenn es da wenigstens Garbage Collection machen würde, bevor es das Child startet, könnte man ja einfach jede halbe Stunde mal forken. Ausserdem hat Perl doch so eine billige Garbage-Collection - wenn man arg defensiv und mit Hinblick darauf programmiert, müsste man da doch was machen können, damit sie besser funktioniert.
Gruesse,
Bio
Hallo Bio,
Hmmmm... was macht Perl, wenn man forkt?
Eine komplette Kopie des Prozesses. Mit anderen Worten: bringt nix.
Ausserdem hat Perl doch so eine billige Garbage-Collection - wenn man arg
defensiv und mit Hinblick darauf programmiert, müsste man da doch was machen
können, damit sie besser funktioniert.
Nein.
Der GC laeuft definitiv erst, wenn das Script beendet wird.
Gruesse,
CK
Hoi,
Nun, das Problem mit den hierarchischen Daten ist, daß man die trotzdem
serialisieren bzw. plattklopfen muß, weil der Speicher flach ist.
Unfug.
$VAR1 = {
blahr => {
blub => {
x => [
'x',
'a',
'b'
]
}
}
};
Was ist daran bitte flach?
Und ob man jetzt einen XML-Datei parst, oder eine Datenbank "spidert", ist
IMHO nur ein kosmetischer Unterschied
Sicher laesst sich eine hierarchische Struktur in einem RDBMS darstellen. Aber
dafuer gedacht ist es nicht. Und versuche mal, den kompletten Baum sortiert
auszulesen...
- wenn Du die ganze Baumstruktur im XML wiedergibst, zahlst Du dafür mit
erhöhtem Aufwand beim Speichern.
Der weniger sein duerfte als der noch viel hoehere Aufwand beim Auslesen (pro
Ebene eine Query).
Gruesse,
CK
Sup!
$VAR1 = {
blahr => {
blub => {
x => [
'x',
'a',
'b'
]
}
}
};
Was ist daran bitte flach?
Flach daran ist, daß es in einem eindimensionalen Speicher steht, der von 0 bis n durchnummeriert ist, und in der bitteren Realität der Physik ein Haufen Struktur und Zeiger nebeneinander "flach" im RAM liegen.
Und ob man jetzt einen XML-Datei parst, oder eine Datenbank "spidert", ist
IMHO nur ein kosmetischer Unterschied
Sicher laesst sich eine hierarchische Struktur in einem RDBMS darstellen. Aber
dafuer gedacht ist es nicht. Und versuche mal, den kompletten Baum sortiert
auszulesen...
- wenn Du die ganze Baumstruktur im XML wiedergibst, zahlst Du dafür mit
erhöhtem Aufwand beim Speichern.
Der weniger sein duerfte als der noch viel hoehere Aufwand beim Auslesen (pro
Ebene eine Query).
Hmmm... schaun' mer mal ;-)
Gruesse,
Bio
Hoi Bio,
Flach daran ist, daß es in einem eindimensionalen Speicher steht, der von 0
bis n durchnummeriert ist, und in der bitteren Realität der Physik ein
Haufen Struktur und Zeiger nebeneinander "flach" im RAM liegen.
Deshalb schreibe ich ja auch meinen Code in Assembler und benutze kein Perl. Tss.
Gruesse,
CK
Hallo!
Vermutlich habe ich in der selben Zeit die Du brauchst ein(_das_) PERL-Forum zu installieren, ein eigenes PHP-Forum programmiert...
:-O
Grüße
Andreas
PS: *fg*
Sup!
Vermutlich habe ich in der selben Zeit die Du brauchst ein(_das_) PERL-Forum zu installieren, ein eigenes PHP-Forum programmiert...
GRRRRR!!!!
Das hier ist _DAS_ Perl Forum ;-)
Und im Notfall habe ich auch schon darüber nachgedacht, kurz mal eben ein eigenes Forum zu schreiben... unglaublich schnell und so... aber das wäre dann doch wieder etwas Aufwand, und da habe ich im Moment keine Zeit für.
Gruesse,
Bio
Hi!
GRRRRR!!!!
Das hier ist _DAS_ Perl Forum ;-)
habe ich ja geschrieben!
Und im Notfall habe ich auch schon darüber nachgedacht, kurz mal eben ein eigenes Forum zu schreiben... unglaublich schnell und so... aber das wäre dann doch wieder etwas Aufwand, und da habe ich im Moment keine Zeit für.
anscheinend doch ;-)
Grüße
Andreas
Sup!
Also... das Problem war, daß das Skript keine Schreibrechte in dem Verzeichnis hatte, darum konnte es kein Lock machen. Also schnell Konfig-Dir schreibbar gemacht... aber dann... irgendwelche Probleme mit dem Parser... was also gemacht? RPMs deinstalliert, neueste Version von libxml2 gezogen, mit CPAN alle Module neu installiert - nix genützt ;-)
Also weiter alle Skripten und XML::DOM und XML::Parser::Expat mit Debug-Code zugemüllt... und, nachdem ich die fo_admin_default.xml die ganze Zeit mit der fo_admin.xml verwechselt hatte (Ja danke nochmal für die total logischen, einleuchtenden, unterscheidbaren Namen ;-)) rausgefunden, daß der XML-Parser anscheinend NICHT findet, daß man mit <!-- (Zeilen) --> jeden Scheiss in die XML-Datei schreiben kann, ohne daß sie nachher nicht mehr well-formed ist. Also den lustigen Kommentar von Thomas J.S. über ... die in diesem Fall wieder total hart zugeschlagene Spassguerilla aka. Wowbagger entfernt (wenn ich Thomas erwische... ;-)). Und ZACK - läuft!
Hat mich ja nur... so ca. 4 Stunden gekostet. Doof, aber ich fühle mich ziemlich rulend, gerade, denn das Glück ist mit den Tüchtigen, und was lange währt, wird endlich gut!
Ehmmm... mein tolles Forum ist http://bionic.dnsalis.org/forum/ - ihr dürft alle huldigen kommen und Sven beschimpfen, der mein Forum lahm findet, was überhaupt nur an meinem Upstream liegt und möglicherweise daran, daß ich kein mod_gzip habe, denke ich, und außerdem ist es jetzt auch etwas schneller, weil die Konfiguration jetzt stimmt, und deshalb, glaube ich, ein paar Timeouts vom fehlschlagenden Locking wegfallen. Im übrigen ist die Kiste, auf der das läuft, ein original IBM Personal Computer 300 PL, kompatibler geht's ja kaum, mit einer 350 MHz Intel Pentium (tm) 2 CPU, die ja wohl äußerst locker genug Daten für meine 16KByte Upstream bereitstellen können sollte und über jeden Zweifel erhaben ist.
Gruesse,
Bio
Gruesse,
Bio
Hi!
Hat mich ja nur... so ca. 4 Stunden gekostet. Doof, aber ich fühle mich ziemlich rulend, gerade, denn das Glück ist mit den Tüchtigen...
Also ich empfehle dir http://www.amalesh.de/1steps2php/schritt01.php3
Ich kanns, mir einfach nicht verkneifen, sorry ;-)
Grüße
Andreas
Hi Ritter,
erst mal meinen Glückwunsch.
Sven beschimpfen, der mein Forum lahm findet, was überhaupt nur
an meinem Upstream liegt und möglicherweise daran, daß ich kein
mod_gzip habe,
Die Kombination aus beidem ist natürlich schon ein echtes Problem.
Wenn Du die Kiste bei Dir stehen hast, dann mach halt schnell mod_gzip
drauf ... in Deinem Fall (mit stark eingeschränkter Bandbreite) kann
es sich heftig lohnen (siehe unten).
Andererseits kannst Du natürlich mal die CPU-Auslastung während der
Zugriffe beobachten ("top" oder Ähnliches). Wenn Deine Kiste
Kiste, auf der das läuft, ein original IBM Personal Computer
300 PL, kompatibler geht's ja kaum, mit einer 350 MHz Intel
Pentium (tm) 2 CPU,
ständig alles Mögliche laden muß, insbesondere Perl und Skripte und
CPAN-Module und XML-Konfigurationsdateien und diese parsen und das
alles für jeden einzelnen Zugriff (auch lesende!) immer wieder, dann
wird die Sache natürlich nicht wirklich schnell - Deine Analyse über
das Im-Speicher-Halten von Informationen ist im Prinzip völlig richtig
und fast genauso will Christian ja die nächste Version in C schreiben.
die ja wohl äußerst locker genug Daten für meine 16KByte Upstream
bereitstellen können sollte und über jeden Zweifel erhaben ist.
16 KByte? Also mehrere Sekunden schon für eine mittelgroße HTML-Datei,
selbst wenn nur ein einziger Besucher zugreift?
Jetzt aber marsch und mod_gzip installiert!
(http://www.schroepl.net/projekte/mod_gzip/)
Die (link- und bilder-lastige) Forum-Hauptdatei wird um Faktor 10,
normale Postings um Faktor 5 kleiner, würde ich schätzen.
Viele Grüße
Michael
Hallo Bio,
und, nachdem ich die fo_admin_default.xml die ganze Zeit mit der fo_admin.xml verwechselt hatte (Ja danke nochmal für die total logischen, einleuchtenden, unterscheidbaren Namen ;-))
ist kein problem, gern geschehen ;-)
daß man mit <!-- (Zeilen) --> jeden Scheiss in die XML-Datei schreiben kann, ohne daß sie nachher nicht mehr well-formed ist.
wieso? das sind ganz normale kommentare, die kann man ja immer wo hinschreiben ohne dass die datei dadurch non-well-formed werden würde. :-)
also den lustigen Kommentar von Thomas J.S. [...](wenn ich Thomas erwische... ;-)).
ahh... jetzt verstehe ich diesen argen stechen den ich gestern schon den ganzen abend im kopf, herz, nieren und was weiss ich noch wo überall hatte! ;-)
grüße
Thomas 0:-)
Hallo Thomas,
daß man mit <!-- (Zeilen) --> jeden Scheiss in die XML-Datei schreiben
kann, ohne daß sie nachher nicht mehr well-formed ist.
wieso? das sind ganz normale kommentare, die kann man ja immer wo hinschreiben
ohne dass die datei dadurch non-well-formed werden würde. :-)
Aber ein Kommentar der Art
<!--
irgendwas --
noch irgendwas --
nochwas -->
fuehrt dazu, dass eine XML-Datei 'not wellformed' ist :) Und so steht es leider
im CVS drin.
Gruesse,
CK
Hallo CK,
Aber ein Kommentar der Art
<!--
irgendwas --
noch irgendwas --
nochwas -->
fuehrt dazu, dass eine XML-Datei 'not wellformed' ist :) Und so steht es leider
im CVS drin.
stimmt, aber das ist definitiv nicht von mir so auskommentiert worden.
und in der CSV steht was anderes als in der download-version, wo es richtig ist.
<!-- <CallByUser>
<Email>someone@somewhere.net</Email>
<Name>Joe User</Name>
<IpAddress>123.456.789.0</IpAddress>
</CallByUser>-->
mal jetzt davon abgesehen, dass in der downloadversion einfach dateien fehlen... komisch eigentlich.
grüße
thomas
Sup!
Es läuft, das Skript, aber zeigt die Threads nicht an - das Forum bleibt leer. Woran kann das wieder liegen? Soweit scheint alles richtig konfiguriert zu sein, und es benutzt ja auch keine anderen Funktionen als fo_view.pl, eigentlich...
Wieder zu sehen ab morgen mittag auf http://bionic.dnsalias.org/forum/
(Ich stell' den Rechner jetzt aus)
Gruesse,
Bio