Ich verwende den PostgreSQL-Server für meine Produktion.
Wenn ich eine Abfrage wie zünde
select * from pg_stat_activity
Auf meinem Server erhalte ich 98% der Anfragen wie
SHOW TRANSACTION ISOLATION LEVEL
und mein Server akzeptiert nur 100 Verbindungen, sodass ich nicht weiter fortfahren kann.
Warum passiert dies? Wie kann ich all diese Abfragen blockieren?
postgresql
postgresql-9.2
Yogesh Prajapati
quelle
quelle
psql
tueselect query from pg_stat_activity;
... Ich habe mich auch gefragt, warum dies geschieht. Ich vermute, dies ist ein Mechanismus, mit dem HikariCP die Verbindungen "frisch" hält.Antworten:
Wenn sie da sind; Sie sind da, aber sie sind nicht auf magische Weise aus der Luft gesprungen. Ich würde mich freuen, wenn Sie zurückkommen und uns sagen, was sie in Ihrem Fall waren. Normalerweise ist dies eines von zwei Dingen:
Manchmal verbinden sich diese Leute und starten leere Transaktionen oder bereiten eine Transaktion vor. Es ist immer das Ergebnis einer schlechten Bibliothek. Es ist entschuldbar, wenn die Bibliothek neu oder neu in der Datenbank ist. Wenn die Bibliothek Jahre alt ist und dies tut, würde ich vermuten, dass sie nicht zu viele Augen darauf haben und nach Alternativen suchen.
Aus den Kommentaren,
Während es möglich ist, ist es ein Versuch, eine Verbindung "frisch" zu halten. Die koschere Art, dies zu tun, ist ungefähr so
Möglicherweise möchten Sie einen Fehlerbericht einreichen, um stattdessen diese Methode zu verwenden.
quelle