Standardvärdet för serverparameteruppsättningen max_wal_senders när du etablerar instansen av Azure Database for PostgreSQL – flexibel server får aldrig minskas under 2 (if HA is enabled) + number of read replicas provisioned + slots_used_in_logical_replication.
När du överväger behovet av att öka max_wal_senders till ett mycket högre värde för att kunna hantera den logiska replikeringen av ett stort antal tabeller, har du följande viktiga punkter i åtanke:
Logiskt replikera ett stort antal tabeller behöver inte nödvändigtvis ett stort antal WAL-avsändare.
Den enda anledningen till att du behöver en separat WAL-avsändare per tabell eller grupp med tabeller är om du behöver separata prenumerationer för var och en av dessa tabeller eller grupper av.
Oavsett hur många WAL-avsändare som används för fysisk och logisk replikering blir de alla aktiva samtidigt, när alla serverdelar skriver något till loggen för framåtskrivning. När det händer vaknar wal-avsändare som har tilldelats för att utföra logisk replikering upp till:
Avkoda alla nya poster i WAL,
Filtrera bort loggposter som de inte är intresserade av,
Replikera de data som är relevanta för var och en av dem.
WAL-avsändare liknar anslutningar i den meningen att om de är inaktiva spelar det ingen roll hur många det finns. Men om de är aktiva konkurrerar de bara om samma resurser och prestandan kan bli fruktansvärt dålig. Detta gäller särskilt för avsändare med logisk replikering, eftersom den logiska avkodningen är ganska cpu-dyr. Varje arbetare måste avkoda hela WAL, även om den bara replikerar de åtgärder som påverkar en enskild tabell, och som representerar en liten procentandel av alla data i loggen för framåtskrivning. För fysisk replikering är det inte så viktigt eftersom WAL-avsändare inte förbrukar CPU så intensivt, och de tenderar att begränsas av nätverksbandbredd först.
Därför är det i allmänhet bättre att inte ha många fler WAL-avsändare än virtuella kärnor.
Det är en bra idé att lägga till utrymme för några extra WAL-avsändare för framtida tillväxt eller tillfälliga toppar i replikeringsanslutningar. Följande två exempel kan hjälpa till att illustrera det bättre.
För en server med 8 virtuella kärnor, ha inaktiverat, 2 läsrepliker och 3 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (0) + fysiska platser för läsrepliker (2) + logiska platser(3) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (1) = 6.
För en server med 16 virtuella kärnor, ha aktiverat, 4 läsrepliker och 5 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (2) + fysiska platser för läsrepliker (4) + logiska platser(5) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (2) = 13.
Om du fortfarande anser att det högsta tillåtna värdet för den här parametern är för lågt för dina behov kontaktar du oss, beskriver ditt scenario i detalj och förklarar vad anser du att det skulle vara det minsta godtagbara värde som du skulle behöva för att scenariot ska fungera korrekt.
Standardvärdet för serverparameteruppsättningen max_wal_senders när du etablerar instansen av Azure Database for PostgreSQL – flexibel server får aldrig minskas under 2 (if HA is enabled) + number of read replicas provisioned + slots_used_in_logical_replication.
När du överväger behovet av att öka max_wal_senders till ett mycket högre värde för att kunna hantera den logiska replikeringen av ett stort antal tabeller, har du följande viktiga punkter i åtanke:
Logiskt replikera ett stort antal tabeller behöver inte nödvändigtvis ett stort antal WAL-avsändare.
Den enda anledningen till att du behöver en separat WAL-avsändare per tabell eller grupp med tabeller är om du behöver separata prenumerationer för var och en av dessa tabeller eller grupper av.
Oavsett hur många WAL-avsändare som används för fysisk och logisk replikering blir de alla aktiva samtidigt, när alla serverdelar skriver något till loggen för framåtskrivning. När det händer vaknar wal-avsändare som har tilldelats för att utföra logisk replikering upp till:
Avkoda alla nya poster i WAL,
Filtrera bort loggposter som de inte är intresserade av,
Replikera de data som är relevanta för var och en av dem.
WAL-avsändare liknar anslutningar i den meningen att om de är inaktiva spelar det ingen roll hur många det finns. Men om de är aktiva konkurrerar de bara om samma resurser och prestandan kan bli fruktansvärt dålig. Detta gäller särskilt för avsändare med logisk replikering, eftersom den logiska avkodningen är ganska cpu-dyr. Varje arbetare måste avkoda hela WAL, även om den bara replikerar de åtgärder som påverkar en enskild tabell, och som representerar en liten procentandel av alla data i loggen för framåtskrivning. För fysisk replikering är det inte så viktigt eftersom WAL-avsändare inte förbrukar CPU så intensivt, och de tenderar att begränsas av nätverksbandbredd först.
Därför är det i allmänhet bättre att inte ha många fler WAL-avsändare än virtuella kärnor.
Det är en bra idé att lägga till utrymme för några extra WAL-avsändare för framtida tillväxt eller tillfälliga toppar i replikeringsanslutningar. Följande två exempel kan hjälpa till att illustrera det bättre.
För en server med 8 virtuella kärnor, ha inaktiverat, 2 läsrepliker och 3 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (0) + fysiska platser för läsrepliker (2) + logiska platser(3) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (1) = 6.
För en server med 16 virtuella kärnor, ha aktiverat, 4 läsrepliker och 5 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (2) + fysiska platser för läsrepliker (4) + logiska platser(5) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (2) = 13.
Om du fortfarande anser att det högsta tillåtna värdet för den här parametern är för lågt för dina behov kontaktar du oss, beskriver ditt scenario i detalj och förklarar vad anser du att det skulle vara det minsta godtagbara värde som du skulle behöva för att scenariot ska fungera korrekt.
Standardvärdet för serverparameteruppsättningen max_wal_senders när du etablerar instansen av Azure Database for PostgreSQL – flexibel server får aldrig minskas under 2 (if HA is enabled) + number of read replicas provisioned + slots_used_in_logical_replication.
När du överväger behovet av att öka max_wal_senders till ett mycket högre värde för att kunna hantera den logiska replikeringen av ett stort antal tabeller, har du följande viktiga punkter i åtanke:
Logiskt replikera ett stort antal tabeller behöver inte nödvändigtvis ett stort antal WAL-avsändare.
Den enda anledningen till att du behöver en separat WAL-avsändare per tabell eller grupp med tabeller är om du behöver separata prenumerationer för var och en av dessa tabeller eller grupper av.
Oavsett hur många WAL-avsändare som används för fysisk och logisk replikering blir de alla aktiva samtidigt, när alla serverdelar skriver något till loggen för framåtskrivning. När det händer vaknar wal-avsändare som har tilldelats för att utföra logisk replikering upp till:
Avkoda alla nya poster i WAL,
Filtrera bort loggposter som de inte är intresserade av,
Replikera de data som är relevanta för var och en av dem.
WAL-avsändare liknar anslutningar i den meningen att om de är inaktiva spelar det ingen roll hur många det finns. Men om de är aktiva konkurrerar de bara om samma resurser och prestandan kan bli fruktansvärt dålig. Detta gäller särskilt för avsändare med logisk replikering, eftersom den logiska avkodningen är ganska cpu-dyr. Varje arbetare måste avkoda hela WAL, även om den bara replikerar de åtgärder som påverkar en enskild tabell, och som representerar en liten procentandel av alla data i loggen för framåtskrivning. För fysisk replikering är det inte så viktigt eftersom WAL-avsändare inte förbrukar CPU så intensivt, och de tenderar att begränsas av nätverksbandbredd först.
Därför är det i allmänhet bättre att inte ha många fler WAL-avsändare än virtuella kärnor.
Det är en bra idé att lägga till utrymme för några extra WAL-avsändare för framtida tillväxt eller tillfälliga toppar i replikeringsanslutningar. Följande två exempel kan hjälpa till att illustrera det bättre.
För en server med 8 virtuella kärnor, ha inaktiverat, 2 läsrepliker och 3 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (0) + fysiska platser för läsrepliker (2) + logiska platser(3) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (1) = 6.
För en server med 16 virtuella kärnor, ha aktiverat, 4 läsrepliker och 5 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (2) + fysiska platser för läsrepliker (4) + logiska platser(5) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (2) = 13.
Om du fortfarande anser att det högsta tillåtna värdet för den här parametern är för lågt för dina behov kontaktar du oss, beskriver ditt scenario i detalj och förklarar vad anser du att det skulle vara det minsta godtagbara värde som du skulle behöva för att scenariot ska fungera korrekt.
Standardvärdet för serverparameteruppsättningen max_wal_senders när du etablerar instansen av Azure Database for PostgreSQL – flexibel server får aldrig minskas under 2 (if HA is enabled) + number of read replicas provisioned + slots_used_in_logical_replication.
När du överväger behovet av att öka max_wal_senders till ett mycket högre värde för att kunna hantera den logiska replikeringen av ett stort antal tabeller, har du följande viktiga punkter i åtanke:
Logiskt replikera ett stort antal tabeller behöver inte nödvändigtvis ett stort antal WAL-avsändare.
Den enda anledningen till att du behöver en separat WAL-avsändare per tabell eller grupp med tabeller är om du behöver separata prenumerationer för var och en av dessa tabeller eller grupper av.
Oavsett hur många WAL-avsändare som används för fysisk och logisk replikering blir de alla aktiva samtidigt, när alla serverdelar skriver något till loggen för framåtskrivning. När det händer vaknar wal-avsändare som har tilldelats för att utföra logisk replikering upp till:
Avkoda alla nya poster i WAL,
Filtrera bort loggposter som de inte är intresserade av,
Replikera de data som är relevanta för var och en av dem.
WAL-avsändare liknar anslutningar i den meningen att om de är inaktiva spelar det ingen roll hur många det finns. Men om de är aktiva konkurrerar de bara om samma resurser och prestandan kan bli fruktansvärt dålig. Detta gäller särskilt för avsändare med logisk replikering, eftersom den logiska avkodningen är ganska cpu-dyr. Varje arbetare måste avkoda hela WAL, även om den bara replikerar de åtgärder som påverkar en enskild tabell, och som representerar en liten procentandel av alla data i loggen för framåtskrivning. För fysisk replikering är det inte så viktigt eftersom WAL-avsändare inte förbrukar CPU så intensivt, och de tenderar att begränsas av nätverksbandbredd först.
Därför är det i allmänhet bättre att inte ha många fler WAL-avsändare än virtuella kärnor.
Det är en bra idé att lägga till utrymme för några extra WAL-avsändare för framtida tillväxt eller tillfälliga toppar i replikeringsanslutningar. Följande två exempel kan hjälpa till att illustrera det bättre.
För en server med 8 virtuella kärnor, ha inaktiverat, 2 läsrepliker och 3 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (0) + fysiska platser för läsrepliker (2) + logiska platser(3) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (1) = 6.
För en server med 16 virtuella kärnor, ha aktiverat, 4 läsrepliker och 5 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (2) + fysiska platser för läsrepliker (4) + logiska platser(5) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (2) = 13.
Om du fortfarande anser att det högsta tillåtna värdet för den här parametern är för lågt för dina behov kontaktar du oss, beskriver ditt scenario i detalj och förklarar vad anser du att det skulle vara det minsta godtagbara värde som du skulle behöva för att scenariot ska fungera korrekt.
Standardvärdet för serverparameteruppsättningen max_wal_senders när du etablerar instansen av Azure Database for PostgreSQL – flexibel server får aldrig minskas under 2 (if HA is enabled) + number of read replicas provisioned + slots_used_in_logical_replication.
När du överväger behovet av att öka max_wal_senders till ett mycket högre värde för att kunna hantera den logiska replikeringen av ett stort antal tabeller, har du följande viktiga punkter i åtanke:
Logiskt replikera ett stort antal tabeller behöver inte nödvändigtvis ett stort antal WAL-avsändare.
Den enda anledningen till att du behöver en separat WAL-avsändare per tabell eller grupp med tabeller är om du behöver separata prenumerationer för var och en av dessa tabeller eller grupper av.
Oavsett hur många WAL-avsändare som används för fysisk och logisk replikering blir de alla aktiva samtidigt, när alla serverdelar skriver något till loggen för framåtskrivning. När det händer vaknar wal-avsändare som har tilldelats för att utföra logisk replikering upp till:
Avkoda alla nya poster i WAL,
Filtrera bort loggposter som de inte är intresserade av,
Replikera de data som är relevanta för var och en av dem.
WAL-avsändare liknar anslutningar i den meningen att om de är inaktiva spelar det ingen roll hur många det finns. Men om de är aktiva konkurrerar de bara om samma resurser och prestandan kan bli fruktansvärt dålig. Detta gäller särskilt för avsändare med logisk replikering, eftersom den logiska avkodningen är ganska cpu-dyr. Varje arbetare måste avkoda hela WAL, även om den bara replikerar de åtgärder som påverkar en enskild tabell, och som representerar en liten procentandel av alla data i loggen för framåtskrivning. För fysisk replikering är det inte så viktigt eftersom WAL-avsändare inte förbrukar CPU så intensivt, och de tenderar att begränsas av nätverksbandbredd först.
Därför är det i allmänhet bättre att inte ha många fler WAL-avsändare än virtuella kärnor.
Det är en bra idé att lägga till utrymme för några extra WAL-avsändare för framtida tillväxt eller tillfälliga toppar i replikeringsanslutningar. Följande två exempel kan hjälpa till att illustrera det bättre.
För en server med 8 virtuella kärnor, ha inaktiverat, 2 läsrepliker och 3 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (0) + fysiska platser för läsrepliker (2) + logiska platser(3) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (1) = 6.
För en server med 16 virtuella kärnor, ha aktiverat, 4 läsrepliker och 5 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (2) + fysiska platser för läsrepliker (4) + logiska platser(5) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (2) = 13.
Om du fortfarande anser att det högsta tillåtna värdet för den här parametern är för lågt för dina behov kontaktar du oss, beskriver ditt scenario i detalj och förklarar vad anser du att det skulle vara det minsta godtagbara värde som du skulle behöva för att scenariot ska fungera korrekt.
Standardvärdet för serverparameteruppsättningen max_wal_senders när du etablerar instansen av Azure Database for PostgreSQL – flexibel server får aldrig minskas under 2 (if HA is enabled) + number of read replicas provisioned + slots_used_in_logical_replication.
När du överväger behovet av att öka max_wal_senders till ett mycket högre värde för att kunna hantera den logiska replikeringen av ett stort antal tabeller, har du följande viktiga punkter i åtanke:
Logiskt replikera ett stort antal tabeller behöver inte nödvändigtvis ett stort antal WAL-avsändare.
Den enda anledningen till att du behöver en separat WAL-avsändare per tabell eller grupp med tabeller är om du behöver separata prenumerationer för var och en av dessa tabeller eller grupper av.
Oavsett hur många WAL-avsändare som används för fysisk och logisk replikering blir de alla aktiva samtidigt, när alla serverdelar skriver något till loggen för framåtskrivning. När det händer vaknar wal-avsändare som har tilldelats för att utföra logisk replikering upp till:
Avkoda alla nya poster i WAL,
Filtrera bort loggposter som de inte är intresserade av,
Replikera de data som är relevanta för var och en av dem.
WAL-avsändare liknar anslutningar i den meningen att om de är inaktiva spelar det ingen roll hur många det finns. Men om de är aktiva konkurrerar de bara om samma resurser och prestandan kan bli fruktansvärt dålig. Detta gäller särskilt för avsändare med logisk replikering, eftersom den logiska avkodningen är ganska cpu-dyr. Varje arbetare måste avkoda hela WAL, även om den bara replikerar de åtgärder som påverkar en enskild tabell, och som representerar en liten procentandel av alla data i loggen för framåtskrivning. För fysisk replikering är det inte så viktigt eftersom WAL-avsändare inte förbrukar CPU så intensivt, och de tenderar att begränsas av nätverksbandbredd först.
Därför är det i allmänhet bättre att inte ha många fler WAL-avsändare än virtuella kärnor.
Det är en bra idé att lägga till utrymme för några extra WAL-avsändare för framtida tillväxt eller tillfälliga toppar i replikeringsanslutningar. Följande två exempel kan hjälpa till att illustrera det bättre.
För en server med 8 virtuella kärnor, ha inaktiverat, 2 läsrepliker och 3 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (0) + fysiska platser för läsrepliker (2) + logiska platser(3) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (1) = 6.
För en server med 16 virtuella kärnor, ha aktiverat, 4 läsrepliker och 5 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (2) + fysiska platser för läsrepliker (4) + logiska platser(5) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (2) = 13.
Om du fortfarande anser att det högsta tillåtna värdet för den här parametern är för lågt för dina behov kontaktar du oss, beskriver ditt scenario i detalj och förklarar vad anser du att det skulle vara det minsta godtagbara värde som du skulle behöva för att scenariot ska fungera korrekt.
Standardvärdet för serverparameteruppsättningen max_wal_senders när du etablerar instansen av Azure Database for PostgreSQL – flexibel server får aldrig minskas under 2 (if HA is enabled) + number of read replicas provisioned + slots_used_in_logical_replication.
När du överväger behovet av att öka max_wal_senders till ett mycket högre värde för att kunna hantera den logiska replikeringen av ett stort antal tabeller, har du följande viktiga punkter i åtanke:
Logiskt replikera ett stort antal tabeller behöver inte nödvändigtvis ett stort antal WAL-avsändare.
Den enda anledningen till att du behöver en separat WAL-avsändare per tabell eller grupp med tabeller är om du behöver separata prenumerationer för var och en av dessa tabeller eller grupper av.
Oavsett hur många WAL-avsändare som används för fysisk och logisk replikering blir de alla aktiva samtidigt, när alla serverdelar skriver något till loggen för framåtskrivning. När det händer vaknar wal-avsändare som har tilldelats för att utföra logisk replikering upp till:
Avkoda alla nya poster i WAL,
Filtrera bort loggposter som de inte är intresserade av,
Replikera de data som är relevanta för var och en av dem.
WAL-avsändare liknar anslutningar i den meningen att om de är inaktiva spelar det ingen roll hur många det finns. Men om de är aktiva konkurrerar de bara om samma resurser och prestandan kan bli fruktansvärt dålig. Detta gäller särskilt för avsändare med logisk replikering, eftersom den logiska avkodningen är ganska cpu-dyr. Varje arbetare måste avkoda hela WAL, även om den bara replikerar de åtgärder som påverkar en enskild tabell, och som representerar en liten procentandel av alla data i loggen för framåtskrivning. För fysisk replikering är det inte så viktigt eftersom WAL-avsändare inte förbrukar CPU så intensivt, och de tenderar att begränsas av nätverksbandbredd först.
Därför är det i allmänhet bättre att inte ha många fler WAL-avsändare än virtuella kärnor.
Det är en bra idé att lägga till utrymme för några extra WAL-avsändare för framtida tillväxt eller tillfälliga toppar i replikeringsanslutningar. Följande två exempel kan hjälpa till att illustrera det bättre.
För en server med 8 virtuella kärnor, ha inaktiverat, 2 läsrepliker och 3 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (0) + fysiska platser för läsrepliker (2) + logiska platser(3) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (1) = 6.
För en server med 16 virtuella kärnor, ha aktiverat, 4 läsrepliker och 5 logiska replikeringsplatser kanske du vill konfigurera max_wal_senders som summan av fysiska platser för HA (2) + fysiska platser för läsrepliker (4) + logiska platser(5) + lite extra för framtida tillväxt, med tanke på tillgängliga virtuella kärnor (2) = 13.
Om du fortfarande anser att det högsta tillåtna värdet för den här parametern är för lågt för dina behov kontaktar du oss, beskriver ditt scenario i detalj och förklarar vad anser du att det skulle vara det minsta godtagbara värde som du skulle behöva för att scenariot ska fungera korrekt.