kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: Performance Datei lesen vs. Datenbank lesen

    geschrieben von mruts

    Hi,
    Wenn es Dir auf Performanceankommt hältst Du die geblockten IPs im Speicher. Am Besten geht das mit einer Datenstruktur wie Set:
    http://php.net/manual/en/class.ds-set.php
    Diese befüllst Du mit jeder geblockten IP.
    Bei der Abfrage kannst du mit
    public bool contains ([ mixed $...values ] )
    sehr schnell prüfen ob die IP enthalten ist.

    Wenn die Anforderung besteht, dass nach einem Serverneustart / Neustart Apache die geblockten IPs wieder zur Verfügung stehen, dann musst du parallel zum setzen der IPs in das Set die IP auch in eine DB speichern. Beim Hochfahren / Initialisieren der Anwendung ließt Du einmal alle geblockten IPs wieder in das Set ein. Dabei ist dann die Performance zweitrangig, da die eigentliche Abfrage immer über das Set im Speicher passiert. Und diese Anfrage ist schneller wie ein Datei oder DB Zugriff.
  • in: Java Memory Bedarf auf Rechencluster

    geschrieben von mruts

    Hallo,
    ich stelle mir gerade die Frage, ob es wirklich eine Instanz Deines JARs ist, welche den Speicher in die Höhe treibt. Lass Dir doch mal in Dein Logging permanent die aktuelle Speicherauslastung des Tools und der VM ausgeben:

    Runtime rt = Runtime.getRuntime();
    long total = rt.totalMemory();
    long max = rt.maxMemory();
    long free = rt.freeMemory();


    Vielleicht gibt das einen Anhaltspunkt ob es wirklich am Speicherhunger der Java Anwendung liegt.

Login zum Webhosting ohne Werbung!