view flys-aft/src/main/resources/sql/aft-common.properties @ 5779:ebec12def170

Datacage: Add a pool of builders to make it multi threadable. XML DOM is not thread safe. Therefore the old implementation only allowed one thread to use the builder at a time. As the complexity of the configuration has increased over time this has become a bottleneck of the whole application because it took quiet some time to build a result. Furthermore the builder code path is visited very frequent. So many concurrent requests were piled up resulting in long waits for the users. To mitigate this problem a round robin pool of builders is used now. Each of the pooled builders has an independent copy of the XML template and can be run in parallel. The number of builders is determined by the system property 'flys.datacage.pool.size'. It defaults to 4.
author Sascha L. Teichmann <teichmann@intevation.de>
date Sun, 21 Apr 2013 12:48:09 +0200
parents 7a68967ca72a
children
line wrap: on
line source
select.gewaesser = \
    SELECT GEWAESSER_NR, NAME FROM SL_GEWAESSER
select.messstelle = \
    SELECT NAME, MESSSTELLE_NR, STATIONIERUNG \
    FROM MESSSTELLE \
    WHERE GEWAESSER_NR = :GEWAESSER_NR
select.abflusstafel = \
    SELECT ABFLUSSTAFEL_NR, \
           ABFLUSSTAFEL_BEZ, \
           strftime('%s', GUELTIG_VON) * 1000 AS GUELTIG_VON, \
           strftime('%s', GUELTIG_BIS) * 1000 AS GUELTIG_BIS, \
           PEGELNULLPUNKT, \
           BFG_ID \
    FROM ABFLUSSTAFEL \
    WHERE MESSSTELLE_NR LIKE :number
select.tafelwert = \
    SELECT TAFELWERT_NR AS id, WASSERSTAND AS w, ABFLUSS AS q FROM TAFELWERT \
    WHERE ABFLUSSTAFEL_NR = :number
select.bfg.id.current = \
    SELECT ABT.BFG_ID AS BFG_ID FROM ABFLUSSTAFEL ABT \
    WHERE GUELTIG_VON IN ( \
        SELECT min(GUELTIG_VON) FROM ABFLUSSTAFEL \
        WHERE GUELTIG_VON IS NOT NULL AND GUELTIG_BIS IS NULL \
        AND MESSSTELLE_NR LIKE :number) \
    AND MESSSTELLE_NR LIKE :number

http://dive4elements.wald.intevation.org