| | 1 | = Напреден развој на апликација = |
| | 2 | |
| | 3 | == Pooling == |
| | 4 | |
| | 5 | Во backend слојот на !StockMaster апликацијата користиме ASP.NET Core со Entity Framework Core за комуникација со PostgreSQL базата на податоци. |
| | 6 | |
| | 7 | Поради оваа архитектура, конекциите со базата не се креираат рачно во кодот. Наместо тоа, тие автоматски се управуваат од Npgsql, кој е стандардниот .NET data provider за PostgreSQL. Connection pooling е вградена функционалност на Npgsql и е активирана по default. |
| | 8 | |
| | 9 | |
| | 10 | '''appsettings.json''' |
| | 11 | {{{ |
| | 12 | { |
| | 13 | "Logging": { |
| | 14 | "LogLevel": { |
| | 15 | "Default": "Information", |
| | 16 | "Microsoft.AspNetCore": "Warning" |
| | 17 | } |
| | 18 | }, |
| | 19 | "AllowedHosts": "*", |
| | 20 | "ConnectionStrings": { |
| | 21 | "DefaultConnection": "Host=localhost;Database=StockDb;Username=YOUR_USERNAME;Password=YOUR_PASSWORD;Pooling=true;MinPoolSize=5;MaxPoolSize=100;Connection Idle Lifetime=300;" |
| | 22 | } |
| | 23 | } |
| | 24 | }}} |
| | 25 | |
| | 26 | '''Pooling=true''' |
| | 27 | Овозможува connection pooling, што значи дека базата ги реупотребува постоечките конекции наместо да креира нова конекција за секое барање. |
| | 28 | |
| | 29 | '''!MinPoolSize=5''' |
| | 30 | Го дефинира минималниот број на активни конекции што се одржуваат во connection pool при стартување на апликацијата. |
| | 31 | |
| | 32 | '''!MaxPoolSize=100''' |
| | 33 | Го ограничува максималниот број на истовремени конекции дозволени во connection pool при зголемен traffic. |
| | 34 | |
| | 35 | '''Connection Idle Lifetime=300''' |
| | 36 | Го одредува времето (во секунди) колку една неактивна конекција останува во pool пред автоматски да биде затворена и отстранета ако не се користи. |