{"id":35920,"date":"2019-10-31T22:07:35","date_gmt":"2019-10-31T19:07:35","guid":{"rendered":"https:\/\/prohoster.info\/blog\/nastrojka-parametrov-yadra-linux-dlya-optimizatsii-postgresql\/"},"modified":"2019-10-31T22:07:35","modified_gmt":"2019-10-31T19:07:35","slug":"nastrojka-parametrov-yadra-linux-dlya-optimizatsii-postgresql","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nastrojka-parametrov-yadra-linux-dlya-optimizatsii-postgresql","title":{"rendered":"Konfigurimi i parametrave t\u00eb b\u00ebrtham\u00ebs Linux p\u00ebr optimizimin e PostgreSQL","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Konfigurimi i parametrave t\u00eb b\u00ebrtham\u00ebs Linux p\u00ebr optimizimin e PostgreSQL\" src=\"\/wp-content\/uploads\/2019\/07\/a28458ff50cdc517aad71b47adab6eb3.jpeg\" style=\"display:block;margin: 0 auto;\" \/> Performanca optimale e PostgreSQL varet nga parametrat e sistemit operativ t\u00eb p\u00ebrcaktuar n\u00eb m\u00ebnyr\u00eb t\u00eb sakt\u00eb. Parametrat e konfigurimit t\u00eb dob\u00ebt t\u00eb b\u00ebrtham\u00ebs s\u00eb OS mund t\u00eb \u00e7ojn\u00eb n\u00eb uljen e performanc\u00ebs s\u00eb serverit t\u00eb baz\u00ebs s\u00eb t\u00eb dh\u00ebnave. Prandaj, \u00ebsht\u00eb thelb\u00ebsore q\u00eb k\u00ebto parametra t\u00eb jen\u00eb t\u00eb konfiguruar n\u00eb p\u00ebrputhje me serverin e baz\u00ebs s\u00eb t\u00eb dh\u00ebnave dhe ngarkes\u00ebn e tij t\u00eb pun\u00ebs. N\u00eb k\u00ebt\u00eb artikull, ne do t\u00eb diskutojm\u00eb disa parametra t\u00eb r\u00ebnd\u00ebsish\u00ebm t\u00eb b\u00ebrtham\u00ebs Linux q\u00eb mund t\u00eb ndikojn\u00eb n\u00eb performanc\u00ebn e serverit t\u00eb baz\u00ebs s\u00eb t\u00eb dh\u00ebnave dhe m\u00ebnyrat p\u00ebr t'i konfiguruar ato.<\/p>\n<h2>SHMMAX \/ SHMALL<\/h2>\n<p>\n<b>SHMMAX<\/b> \u2014 \u00ebsht\u00eb nj\u00eb parametr b\u00ebrtham\u00ebs, i p\u00ebrdorur p\u00ebr t\u00eb p\u00ebrcaktuar madh\u00ebsin\u00eb maksimale t\u00eb nj\u00eb prej segmenteve t\u00eb memories s\u00eb ndar\u00eb (shared memory), q\u00eb nj\u00eb proces Linux mund ta alokoj\u00eb. Para versionit 9.2, PostgreSQL p\u00ebrdorte System V (SysV), p\u00ebr t\u00eb cilin k\u00ebrkohej konfigurimi i SHMMAX. Pas 9.2, PostgreSQL kaloi n\u00eb memorien e ndar\u00eb POSIX. Prandaj tani k\u00ebrkohen m\u00eb pak byte memorie t\u00eb ndar\u00eb System V.<\/p>\n<p>Para versionit 9.3, SHMMAX ishte parametri m\u00eb i r\u00ebnd\u00ebsish\u00ebm i b\u00ebrtham\u00ebs. Vlera e SHMMAX \u00ebsht\u00eb e caktuar n\u00eb byte.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nNj\u00eblloj, <b>SHMALL<\/b> \u2014 \u00ebsht\u00eb nj\u00eb tjet\u00ebr parametr b\u00ebrtham\u00ebs, i p\u00ebrdorur p\u00ebr t\u00eb p\u00ebrcaktuar <br \/>\nkapacitetin e p\u00ebrgjithsh\u00ebm t\u00eb faqeve t\u00eb memorizuara n\u00eb m\u00ebnyr\u00eb t\u00eb ndar\u00eb (shared memory). P\u00ebr t\u00eb par\u00eb vlerat aktuale SHMMAX, SHMALL ose SHMMIN, p\u00ebrdorni komand\u00ebn <i>ipcs<\/i>.<\/p>\n<p><b>SHM* Detajet \u2014 Linux<\/b><\/p>\n<pre><code class=\"bash\">$ ipcs -lm\n\n------ Kufijt\u00eb e Memoris\u00eb s\u00eb Ndar\u00eb --------\nnumri maksimal i segmenteve = 4096\nmaks. madh\u00ebsia e segmentit (kbytes) = 1073741824\nmaks. total i memories s\u00eb ndar\u00eb (kbytes) = 17179869184\nmin. madh\u00ebsia e segmentit (bytes) = 1<\/code><\/pre>\n<p>\n<b>SHM* Detajet \u2014 MacOS X<\/b><\/p>\n<pre><code class=\"bash\">$ ipcs -M\nStatusi IPC nga  m\u00eb  Thu Aug 16 22:20:35 PKT 2018\nshminfo:\n\tshmmax: 16777216\t(madh\u00ebsia maksimale e segmentit t\u00eb memories s\u00eb ndar\u00eb)\n\tshmmin:       1\t(madh\u00ebsia minimale e segmentit t\u00eb memories s\u00eb ndar\u00eb)\n\tshmmni:      32\t(numri maksimal i identifikuesve t\u00eb memories s\u00eb ndar\u00eb)\n\tshmseg:       8\t(numri maksimal i segmenteve t\u00eb memories s\u00eb ndar\u00eb p\u00ebr proces)\n\tshmall:    1024\t(madha e maksimumit t\u00eb memories s\u00eb ndar\u00eb n\u00eb faqe)\n<\/code><\/pre>\n<p>\nPostgreSQL p\u00ebrdor <b>System V IPC<\/b> p\u00ebr t\u00eb alokuar memorie t\u00eb ndar\u00eb. Ky paramet\u00ebr \u00ebsht\u00eb nj\u00eb nga parametrat m\u00eb t\u00eb r\u00ebnd\u00ebsish\u00ebm t\u00eb b\u00ebrtham\u00ebs. \u00c7do her\u00eb q\u00eb merrni k\u00ebto mesazhe gabimi, do t\u00eb thot\u00eb se keni nj\u00eb version m\u00eb t\u00eb vjet\u00ebr t\u00eb PostgreSQL dhe keni nj\u00eb vler\u00eb shum\u00eb t\u00eb ul\u00ebt SHMMAX. Pritet q\u00eb p\u00ebrdoruesit t\u00eb korrigjojn\u00eb dhe rrisin vler\u00ebn n\u00eb p\u00ebrputhje me memorien e ndar\u00eb q\u00eb duan t\u00eb p\u00ebrdorin.<\/p>\n<h3>Gabimet e mundshme t\u00eb konfigurimit t\u00eb gabuar<\/h3>\n<p>\nN\u00ebse SHMMAX \u00ebsht\u00eb konfiguruar gabim, mund t\u00eb merrni nj\u00eb gabim kur p\u00ebrpiqeni t\u00eb inicializoni nj\u00eb klaster PostgreSQL duke p\u00ebrdorur komand\u00ebn <i>initdb<\/i>.<\/p>\n<p><b>D\u00ebshtimi i initdb<\/b><br \/>\n<code>DETALJE: Thirja e sistemit t\u00eb d\u00ebshtuar ishte shmget(key=1, size=2072576, 03600). <\/p>\n<p>K\u00cbSHILL\u00cb: Ky gabim zakonisht do t\u00eb thot\u00eb se k\u00ebrkesa e PostgreSQL p\u00ebr nj\u00eb segment kujtimi t\u00eb p\u00ebrbashk\u00ebt e kaloi parametrin SHMMAX t\u00eb kernelit tuaj.\u00a0 <br \/>\nMund t\u00eb reduktoni madh\u00ebsin\u00eb e k\u00ebrkes\u00ebs ose t\u00eb konfiguroni kernelin me nj\u00eb SHMMAX m\u00eb t\u00eb madh. P\u00ebr t\u00eb reduktuar madh\u00ebsin\u00eb e k\u00ebrkes\u00ebs (aktualisht 2072576 byte), <br \/>\nreduktoni p\u00ebrdorimin e kujtes\u00ebs s\u00eb p\u00ebrbashk\u00ebt t\u00eb PostgreSQL, ndoshta duke reduktuar shared_buffers ose max_connections. <\/p>\n<p>N\u00ebse madh\u00ebsia e k\u00ebrkes\u00ebs tashm\u00eb \u00ebsht\u00eb e vog\u00ebl, \u00ebsht\u00eb e mundur q\u00eb ajo t\u00eb jet\u00eb m\u00eb e vog\u00ebl se parametri SHMMIN i kernelit tuaj,<br \/>\nn\u00eb t\u00eb cilin rast \u00ebsht\u00eb e nevojshme t\u00eb rritet madh\u00ebsia e k\u00ebrkes\u00ebs ose t\u00eb ri-konfigurohet SHMMIN. <\/p>\n<p>Dokumentacioni i PostgreSQL p\u00ebrmban m\u00eb shum\u00eb informacion mbi konfigurimin e kujtes\u00ebs s\u00eb p\u00ebrbashk\u00ebt. procesi f\u00ebmij\u00eb doli me kodin e daljes 1<\/code><\/p>\n<p>Nj\u00ebjt\u00eb, mund t\u00eb merrni nj\u00eb gabim kur nisni serverin PostgreSQL duke p\u00ebrdorur komand\u00ebn <i>pg_ctl<\/i>.<\/p>\n<p><b>pg_ctl D\u00ebshtimi<\/b><br \/>\n<code>DETALLET: Thirrja e d\u00ebshtuar t\u00eb sistemit ishte shmget(key=5432001, size=14385152, 03600).<\/p>\n<p>K\u00cbSHILL\u00cb: Ky gabim zakonisht do t\u00eb thot\u00eb se k\u00ebrkesa e PostgreSQL p\u00ebr nj\u00eb segment kujtimi t\u00eb p\u00ebrbashk\u00ebt e kaloi parametrin SHMMAX t\u00eb kernelit tuaj.<\/p>\n<p>Mund t\u00eb reduktoni madh\u00ebsin\u00eb e k\u00ebrkes\u00ebs ose t\u00eb konfiguroni kernelin me nj\u00eb SHMMAX m\u00eb t\u00eb madh. P\u00ebr t\u00eb reduktuar madh\u00ebsin\u00eb e k\u00ebrkes\u00ebs (aktualisht 14385152 byte), reduktoni p\u00ebrdorimin e kujtes\u00ebs s\u00eb p\u00ebrbashk\u00ebt t\u00eb PostgreSQL, ndoshta duke reduktuar shared_buffers ose max_connections.<\/p>\n<p>N\u00ebse madh\u00ebsia e k\u00ebrkes\u00ebs tashm\u00eb \u00ebsht\u00eb e vog\u00ebl, \u00ebsht\u00eb e mundur q\u00eb ajo t\u00eb jet\u00eb m\u00eb e vog\u00ebl se parametri SHMMIN i kernelit tuaj, <br \/>\nn\u00eb t\u00eb cilin rast \u00ebsht\u00eb e nevojshme t\u00eb rritet madh\u00ebsia e k\u00ebrkes\u00ebs ose t\u00eb ri-konfigurohet SHMMIN.<\/p>\n<p>Dokumentacioni i PostgreSQL p\u00ebrmban m\u00eb shum\u00eb informacion mbi konfigurimin e kujtes\u00ebs s\u00eb p\u00ebrbashk\u00ebt.<\/code><\/p>\n<h3>Kuptimi i dallimeve n\u00eb definicionet<\/h3>\n<p>\nDefinimi i parametrave SHMMAX\/SHMALL ndryshon pak n\u00eb Linux dhe MacOS X:<\/p>\n<ul>\n<li>Linux: kernel.shmmax, kernel.shmall<\/li>\n<li>MacOS X: kern.sysv.shmmax, kern.sysv.shmall<\/li>\n<\/ul>\n<p>\nEkipa <i>sysctl<\/i> mund t\u00eb p\u00ebrdoret p\u00ebr t\u00eb ndryshuar p\u00ebrkoh\u00ebsisht vler\u00ebn. P\u00ebr t\u00eb vendosur vlera t\u00eb p\u00ebrhershme, shtoni nj\u00eb hyrje n\u00eb <i>\/etc\/sysctl.conf<\/i>. Detajet jan\u00eb renditur m\u00eb posht\u00eb.<\/p>\n<p><b>Ndryshimi i parametrave t\u00eb kernelit n\u00eb MacOS X<\/b><\/p>\n<pre><code class=\"plaintext\"># Get the value of SHMMAX\nsudo sysctl kern.sysv.shmmax\nkern.sysv.shmmax: 4096\n\n# Get the value of SHMALL\nsudo sysctl kern.sysv.shmall \nkern.sysv.shmall: 4096\n\n# Set the value of SHMMAX\nsudo sysctl -w kern.sysv.shmmax=16777216\nkern.sysv.shmmax: 4096 -&gt; 16777216\n\n# Set the value of SHMALL \nsudo sysctl -w kern.sysv.shmall=16777216\nkern.sysv.shmall: 4096 -&gt; 16777216<\/code><\/pre>\n<p>\n<b>Ndryshimi i parametrave t\u00eb kernelit n\u00eb Linux<\/b><\/p>\n<pre><code class=\"plaintext\"># Get the value of SHMMAX\nsudo sysctl kernel.shmmax\nkernel.shmmax: 4096\n\n# Get the value of SHMALL\nsudo sysctl kernel.shmall\nkernel.shmall: 4096\n\n# Set the value of SHMMAX\nsudo sysctl -w kernel.shmmax=16777216\nkernel.shmmax: 4096 -&gt; 16777216\n\n# Set the value of SHMALL \nsudo sysctl -w kernel.shmall=16777216\nkernel.shmall: 4096 -&gt; 16777216<\/code><\/pre>\n<p>\n<b>Mos harroni<\/b>: p\u00ebr t\u00eb b\u00ebr\u00eb ndryshimet t\u00eb p\u00ebrhershme, shtoni k\u00ebto vlera n\u00eb \/etc\/sysctl.conf<\/p>\n<h2>Faqet e m\u00ebdha (Huge Pages)<\/h2>\n<p>\nN\u00eb Linux, t\u00eb dh\u00ebnat e zakonshme p\u00ebrdorin faqe memorie prej 4 KB, n\u00eb BSD \u2014 <i>Faqet Super<\/i>, dhe n\u00eb Windows \u2014 <i>Faqet e m\u00ebdha (Large Pages)<\/i>. Nj\u00eb faqe \u00ebsht\u00eb nj\u00eb pjes\u00eb e memories operative e caktuar nj\u00eb procesi. Nj\u00eb proces mund t\u00eb ket\u00eb disa faqe n\u00eb var\u00ebsi t\u00eb k\u00ebrkesave p\u00ebr memorie. Sa m\u00eb shum\u00eb memorie t\u00eb nevojitet p\u00ebr procesin, aq m\u00eb shum\u00eb faqe i caktohen atij. Sistemi operativ mb\u00ebshtet nj\u00eb tabel\u00eb rezervimi faqe p\u00ebr proceset. Sa m\u00eb i vog\u00ebl t\u00eb jet\u00eb madh\u00ebsia e faqes, aq m\u00eb e madhe b\u00ebhet tabela, dhe aq m\u00eb shum\u00eb koh\u00eb k\u00ebrkohet p\u00ebr gjetjen e faqes n\u00eb k\u00ebt\u00eb tabel\u00eb. Prandaj, faqet e m\u00ebdha lejojn\u00eb p\u00ebrdorimin e nj\u00eb sasie m\u00eb t\u00eb madhe memorje me shpenzime t\u00eb reduktuara; m\u00eb pak shikime faqe, m\u00eb pak gabime faqe, operacione t\u00eb shpejta leximi\/shkruajti p\u00ebrmes bufereve t\u00eb m\u00ebdha. Si rezultat \u2014 p\u00ebrmir\u00ebsim i performanc\u00ebs.<\/p>\n<p>PostgreSQL mb\u00ebshtet faqe t\u00eb m\u00ebdha vet\u00ebm n\u00eb Linux. Me default, Linux p\u00ebrdor faqe memorie prej 4 KB, prandaj n\u00eb rastet kur ka shum\u00eb operacione me memorie, duhet t\u00eb vendosen faqe m\u00eb t\u00eb m\u00ebdha. Nj\u00eb rritje e performanc\u00ebs v\u00ebrehet kur p\u00ebrdoren faqe t\u00eb m\u00ebdha prej 2 MB dhe deri n\u00eb 1 GB. Madh\u00ebsia e faqeve t\u00eb m\u00ebdha mund t\u00eb vendoset gjat\u00eb ngarkimit. Ju mund t\u00eb kontrolloni leht\u00ebsisht parametrat e faqeve t\u00eb m\u00ebdha dhe p\u00ebrdorimin e tyre n\u00eb kompjuterin tuaj Linux, duke p\u00ebrdorur komand\u00ebn <i>cat \/proc\/meminfo | grep -i huge<\/i>.<\/p>\n<p><b>Marrja e informacionit mbi faqet e m\u00ebdha (vet\u00ebm n\u00eb Linux)<\/b><\/p>\n<pre><code class=\"bash\">Sh\u00ebnim: Kjo \u00ebsht\u00eb vet\u00ebm p\u00ebr Linux, p\u00ebr OS t\u00eb tjera kjo operacion injorohet$ cat \/proc\/meminfo | grep -i huge\nAnonHugePages:         0 kB\nShmemHugePages:        0 kB\nHugePages_Total:       0\nHugePages_Free:        0\nHugePages_Rsvd:       0\nHugePages_Surp:       0\nHugepagesize:       2048 kB<\/code><\/pre>\n<p>\nN\u00eb k\u00ebt\u00eb shembull, megjith\u00ebse madh\u00ebsia e faqes s\u00eb madhe \u00ebsht\u00eb vendosur n\u00eb 2048 (2 MB), numri total i faqeve t\u00eb m\u00ebdha \u00ebsht\u00eb 0. Kjo do t\u00eb thot\u00eb q\u00eb faqet e m\u00ebdha jan\u00eb t\u00eb \u00e7aktivizuara.<\/p>\n<h3>Skripti p\u00ebr p\u00ebrcaktimin e numrit t\u00eb faqeve t\u00eb m\u00ebdha<\/h3>\n<p>\nKy \u00ebsht\u00eb nj\u00eb skript i thjesht\u00eb q\u00eb kthen numrin e nevojsh\u00ebm t\u00eb faqeve t\u00eb m\u00ebdha. Ekzekutoni skriptin n\u00eb serverin tuaj Linux, nd\u00ebrsa PostgreSQL \u00ebsht\u00eb n\u00eb funksionim. Sigurohuni q\u00eb p\u00ebr variabl\u00ebn mjedisore <i>$PGDATA<\/i> \u00ebsht\u00eb vendosur katalogu i t\u00eb dh\u00ebnave PostgreSQL.<\/p>\n<p><b>Merrni numrin e faqeve t\u00eb m\u00ebdha t\u00eb k\u00ebrkuara<\/b><\/p>\n<pre><code class=\"bash\">#!\/bin\/bash\npid=`head -1 $PGDATA\/postmaster.pid`\necho \"Pid:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 $pid\"\npeak=`grep ^VmPeak \/proc\/$pid\/status | awk '{ print $2 }'`\necho \"VmPeak:\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 $peak kB\"\nhps=`grep ^Hugepagesize \/proc\/meminfo | awk '{ print $2 }'`\necho \"Hugepagesize:\u00a0\u00a0 $hps kB\"\nhp=$((peak\/hps))\necho Set Huge Pages:\u00a0\u00a0\u00a0\u00a0 $hp<\/code><\/pre>\n<p>\nD\u00ebrgesa e skriptit duket si kjo:<\/p>\n<p><b>D\u00ebrgesa e skriptit<\/b><\/p>\n<pre><code class=\"bash\">Pid:            12737\nVmPeak:        180932 kB\nHugepagesize:  2048 kB\nSet Huge Pages: 88<\/code><\/pre>\n<p>\nVlera e rekomanduar p\u00ebr faqet e m\u00ebdha \u00ebsht\u00eb 88, k\u00ebshtu q\u00eb duhet t\u00eb vendosni vler\u00ebn 88.<\/p>\n<p><b>Vendosja e faqeve t\u00eb m\u00ebdha<\/b><\/p>\n<pre><code class=\"bash\">sysctl -w vm.nr_hugepages=88<\/code><\/pre>\n<p>\nKontrolloni faqe t\u00eb m\u00ebdha tani, do t\u00eb shihni se faqet e m\u00ebdha nuk po p\u00ebrdoren (HugePages_Free = HugePages_Total).<\/p>\n<p><b>Informacion s\u00ebrish mbi faqet e m\u00ebdha (vet\u00ebm n\u00eb Linux)<\/b><\/p>\n<pre><code class=\"bash\">$ cat \/proc\/meminfo | grep -i huge\nAnonHugePages:         0 kB\nShmemHugePages:        0 kB\nHugePages_Total:      88\nHugePages_Free:       88\nHugePages_Rsvd:       0\nHugePages_Surp:       0\nHugepagesize:       2048 kB<\/code><\/pre>\n<p>\nTani vendosni parametrin huge_pages n\u00eb \"on\" n\u00eb $PGDATA\/postgresql.conf dhe rindezni serverin.<\/p>\n<p><b>Dhe s\u00ebrish informacion mbi faqet e m\u00ebdha (vet\u00ebm n\u00eb Linux)<\/b><\/p>\n<pre><code class=\"bash\">$ cat \/proc\/meminfo | grep -i huge\nAnonHugePages:         0 kB\nShmemHugePages:        0 kB\nHugePages_Total:      88\nHugePages_Free:       81\nHugePages_Rsvd:       64\nHugePages_Surp:       0\nHugepagesize:       2048 kB<\/code><\/pre>\n<p>\nTani tani mund t\u00eb shihni se po p\u00ebrdoren shum\u00eb pak faqe t\u00eb m\u00ebdha. Tani le t\u00eb provojm\u00eb t\u00eb shtojm\u00eb disa t\u00eb dh\u00ebna n\u00eb baz\u00ebn e t\u00eb dh\u00ebnave.<\/p>\n<p><b>Disa operacione me baz\u00ebn e t\u00eb dh\u00ebnave p\u00ebr menaxhimin e faqeve t\u00eb m\u00ebdha<\/b><\/p>\n<pre><code class=\"sql\">postgres=# KRIJO TABEL\u00cb foo(a INTEGER);\nKRIJO TABEL\u00cb\npostgres=# SHTO N\u00cb foo VLERAT(generate_Series(1,10000000));\nSHTO 0 10000000<\/code><\/pre>\n<p>\nLe t\u00eb shohim n\u00ebse tani jemi duke p\u00ebrdorur m\u00eb shum\u00eb faqe t\u00eb m\u00ebdha se m\u00eb par\u00eb.<\/p>\n<p><b>P\u00ebrs\u00ebri informacione p\u00ebr faqet e m\u00ebdha (vet\u00ebm n\u00eb Linux)<\/b><\/p>\n<pre><code class=\"bash\">$ cat \/proc\/meminfo | grep -i huge\nAnonHugePages:         0 kB\nShmemHugePages:        0 kB\nHugePages_Total:      88\nHugePages_Free:       18\nHugePages_Rsvd:        1\nHugePages_Surp:        0\nHugepagesize:       2048 kB<\/code><\/pre>\n<p>\nTani mund t\u00eb shihni se shumica e faqeve t\u00eb m\u00ebdha po p\u00ebrdoren.<\/p>\n<p>Sh\u00ebnim: vlera e p\u00ebraf\u00ebrt p\u00ebr HugePages q\u00eb po p\u00ebrdoret k\u00ebtu \u00ebsht\u00eb shum\u00eb e ul\u00ebt, \u00e7ka nuk \u00ebsht\u00eb nj\u00eb vler\u00eb normale p\u00ebr nj\u00eb makin\u00eb n\u00eb nj\u00eb ambient prodhimi. Ju lutemi vler\u00ebsoni numrin e nevojsh\u00ebm t\u00eb faqeve p\u00ebr sistemin tuaj dhe vendosni ato p\u00ebrkat\u00ebsisht n\u00eb var\u00ebsi t\u00eb ngarkes\u00ebs dhe burimeve.<\/p>\n<h3>vm.swappiness<\/h3>\n<p>\n<b>vm.swappiness<\/b> \u2014 \u00ebsht\u00eb nj\u00eb tjet\u00ebr parametr i b\u00ebrtham\u00ebs, q\u00eb mund t\u00eb ndikoj\u00eb n\u00eb performanc\u00ebn e baz\u00ebs s\u00eb t\u00eb dh\u00ebnave. Ky parametr p\u00ebrdoret p\u00ebr t\u00eb kontrolluar sjelljen e k\u00ebmbimit (swappiness) (k\u00ebmbimin e faqeve n\u00eb memorie dhe nga ajo) n\u00eb Linux. Vlera varion nga 0 n\u00eb 100. Ajo p\u00ebrcakton sa memorie do t\u00eb lirohet ose do t\u00eb shkarkohet. Zero do t\u00eb thot\u00eb fikja e k\u00ebmbimit, nd\u00ebrsa 100 do t\u00eb thot\u00eb k\u00ebmbim agresiv.<\/p>\n<p>Mund t\u00eb merrni nj\u00eb performanc\u00eb t\u00eb mir\u00eb duke vendosur vlera m\u00eb t\u00eb ul\u00ebta.<\/p>\n<p>Vendosja e vler\u00ebs 0 n\u00eb b\u00ebrthamat m\u00eb t\u00eb reja mund t\u00eb \u00e7oj\u00eb n\u00eb at\u00eb q\u00eb OOM Killer (procesi i pastrimit t\u00eb memories n\u00eb Linux) t\u00eb vras\u00eb procesin. K\u00ebshtu, mund t\u00eb vendosni sigurt vler\u00ebn 1 n\u00ebse d\u00ebshironi t\u00eb minimizoni k\u00ebmbimin. Vlera e paracaktuar n\u00eb Linux \u00ebsht\u00eb 60. Nj\u00eb vler\u00eb m\u00eb e lart\u00eb detyron MMU (nj\u00ebsia e menaxhimit t\u00eb memories) t\u00eb p\u00ebrdor\u00eb m\u00eb shum\u00eb hap\u00ebsir\u00eb k\u00ebmbimi sesa RAM, nd\u00ebrsa nj\u00eb vler\u00eb m\u00eb e ul\u00ebt ruan m\u00eb shum\u00eb t\u00eb dh\u00ebna\/kod n\u00eb memorie.<\/p>\n<p>Nj\u00eb vler\u00eb m\u00eb e ul\u00ebt \u00ebsht\u00eb nj\u00eb bast i mir\u00eb p\u00ebr p\u00ebrmir\u00ebsimin e performanc\u00ebs n\u00eb PostgreSQL.<\/p>\n<h3>vm.overcommit_memory \/ vm.overcommit_ratio<\/h3>\n<p>\nAplikacionet merrnin memorie dhe e \u00e7lirojn\u00eb at\u00eb kur nuk \u00ebsht\u00eb m\u00eb e nevojshme. Por n\u00eb disa raste, aplikacioni merr shum\u00eb memorie dhe nuk e \u00e7liron at\u00eb. Kjo mund t\u00eb shkaktoj\u00eb OOM killer. Ja vlerat e mundshme t\u00eb parametrave. <b>vm.overcommit_memory<\/b> me p\u00ebrshkrimin p\u00ebr secil\u00ebn:<\/p>\n<ol>\n<li> Overcommit heuristike (e default); heuristika e bazuar n\u00eb b\u00ebrtham\u00eb<\/li>\n<li> Lejo overcommit n\u00eb \u00e7do rast<\/li>\n<li> Mos e teproni, mos e kaloni koeficientin e overcommit.<\/li>\n<\/ol>\n<p>\n<i>Linku: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/Documentation\/vm\/overcommit-accounting\">https:\/\/www.kernel.org\/doc\/Documentation\/vm\/overcommit-accounting<\/a><\/noindex><\/i><\/p>\n<p><b>vm.overcommit_ratio<\/b> \u2014 p\u00ebrqindja e memories RAM q\u00eb \u00ebsht\u00eb e disponueshme p\u00ebr tepric\u00eb. Nj\u00eb vler\u00eb prej 50% n\u00eb nj\u00eb sistem me 2 GB RAM mund t\u00eb alokoj\u00eb deri n\u00eb 3 GB RAM.<\/p>\n<p>Vlera 2 p\u00ebr vm.overcommit_memory siguron performanc\u00eb m\u00eb t\u00eb mir\u00eb p\u00ebr PostgreSQL. Kjo vler\u00eb maksimizon p\u00ebrdorimin e memorjes RAM nga procesi i serverit pa ndonj\u00eb rrezik t\u00eb konsideruesh\u00ebm p\u00ebr t\u2019u ndaluar nga procesi OOM killer. Aplikacioni do t\u00eb jet\u00eb n\u00eb gjendje t\u00eb rinis, por vet\u00ebm brenda kufijve t\u00eb tepric\u00ebs, \u00e7ka ul rrezikun q\u00eb OOM killer t\u00eb ndal\u00eb procesin. Prandaj, vlera 2 ofron performanc\u00eb m\u00eb t\u00eb lart\u00eb se vlera e parazgjedhur 0. Megjithat\u00eb, besueshm\u00ebria mund t\u00eb p\u00ebrmir\u00ebsohet duke garantuar q\u00eb memoria jasht\u00eb kufijve t\u00eb pranuesh\u00ebm nuk do t\u00eb teprohet. Kjo p\u00ebrjashton rrezikun q\u00eb procesi t\u00eb ndalohet nga OOM-killer.<\/p>\n<p>N\u00eb sistemet pa swap, mund t\u00eb ket\u00eb nj\u00eb problem me vm.overcommit_memory t\u00eb barabart\u00eb me 2.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/current\/static\/kernel-resources.html#LINUX-MEMORY-OVERCOMMIT\">https:\/\/www.postgresql.org\/docs\/current\/static\/kernel-resources.html#LINUX-MEMORY-OVERCOMMIT<\/a><\/noindex><\/p>\n<h3>vm.dirty_background_ratio \/ vm.dirty_background_bytes<\/h3>\n<p>\n<b>vm.dirty_background_ratio<\/b> \u2014 \u00ebsht\u00eb p\u00ebrqindja e memories e mbushur me faqe t\u00eb ndotura q\u00eb duhet t\u00eb shkruhen n\u00eb disk. Shkarkimi n\u00eb disk b\u00ebhet n\u00eb sfond. Vlera e k\u00ebtij parametri varion nga 0 deri n\u00eb 100; megjithat\u00eb vlera n\u00ebn 5 mund t\u00eb jet\u00eb e paefektshme, dhe disa b\u00ebrthama nuk e mb\u00ebshtesin. 10 \u00ebsht\u00eb vlera parazgjedhur n\u00eb shumic\u00ebn e sistemeve Linux. Mund t\u00eb rritni performanc\u00ebn p\u00ebr operacionet me shkrim intensiv me nj\u00eb koeficient m\u00eb t\u00eb vog\u00ebl, i cili do t\u00eb thot\u00eb q\u00eb Linux do t\u00eb shkarkoj\u00eb faqet e ndotura n\u00eb sfond.<\/p>\n<p>Ju nevojitet t\u00eb vendosni vler\u00ebn <b>vm.dirty_background_bytes<\/b> n\u00eb var\u00ebsi t\u00eb shpejt\u00ebsis\u00eb s\u00eb diskut tuaj.<\/p>\n<p>p\u00ebr k\u00ebta dy parametra nuk ka vlera \"t\u00eb mira\", pasi t\u00eb dy varen nga hardueri. Megjithat\u00eb, vendosja e vm.dirty_background_ratio n\u00eb vler\u00ebn 5 dhe vm.dirty_background_bytes n\u00eb 25% t\u00eb shpejt\u00ebsis\u00eb s\u00eb diskut rrit performanc\u00ebn deri n\u00eb ~ 25% n\u00eb shumic\u00ebn e rasteve.<\/p>\n<h3>vm.dirty_ratio \/ dirty_bytes<\/h3>\n<p>\nKjo \u00ebsht\u00eb e nj\u00ebjta gj\u00eb <b>vm.dirty_background_ratio \/ dirty_background_bytes<\/b>, me p\u00ebrjashtim se shkarkimi b\u00ebhet n\u00eb sesionin aktiv, duke bllokuar aplikacionin. Prandaj, vm.dirty_ratio duhet t\u00eb jet\u00eb m\u00eb i lart\u00eb se <b>vm.dirty_background_ratio<\/b>. Kjo garanton q\u00eb proceset n\u00eb sfond do t\u00eb nisin m\u00eb her\u00ebt p\u00ebr t\u00eb shmangur bllokimin maksimal t\u00eb mundsh\u00ebm t\u00eb aplikacionit. Ju mund t\u00eb konfiguroni diferenc\u00ebn midis k\u00ebtyre dy raportesh n\u00eb var\u00ebsi t\u00eb ngarkes\u00ebs s\u00eb hyrjes dhe daljes n\u00eb disk.<\/p>\n<h2>P\u00ebrfundimi<\/h2>\n<p>\nJu mund t\u00eb konfiguroni parametra t\u00eb tjer\u00eb p\u00ebr t\u00eb rritur performanc\u00ebn, por p\u00ebrmir\u00ebsimet do t\u00eb jen\u00eb minimale dhe nuk do t\u00eb keni ndonj\u00eb p\u00ebrfitim t\u00eb ve\u00e7ant\u00eb. Duhet t\u00eb kuptojm\u00eb se jo t\u00eb gjith\u00eb parametrat p\u00ebrshtaten me t\u00eb gjitha llojet e aplikacioneve. Disa aplikacione funksionojn\u00eb m\u00eb mir\u00eb kur ne rregullojm\u00eb disa parametra, nd\u00ebrsa disa t\u00eb tjer\u00eb nuk e b\u00ebjn\u00eb. Ju duhet t\u00eb gjeni balanc\u00ebn e duhur midis konfigurimeve t\u00eb k\u00ebtyre parametrave p\u00ebr ngarkes\u00ebn e pritur t\u00eb pun\u00ebs dhe llojin e aplikacionit, si dhe duhet t\u00eb merrni parasysh sjelljen e sistemit operativ gjat\u00eb konfigurimit. T\u00eb rregullosh parametrat e b\u00ebrtham\u00ebs nuk \u00ebsht\u00eb aq e leht\u00eb sa t\u00eb rregullosh parametrat e baz\u00ebs s\u00eb t\u00eb dh\u00ebnave: k\u00ebtu \u00ebsht\u00eb m\u00eb e komplikuar t\u00eb jepen rekomandimet tuaja.<br \/>\n<br \/>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/458860\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c PostgreSQL \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041f\u043b\u043e\u0445\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0434\u0440\u0430 \u041e\u0421 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u044b\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439. \u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u043c\u044b \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0434\u0440\u0430 Linux, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0432\u043b\u0438\u044f\u0442\u044c \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26870,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35920","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c PostgreSQL \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041f\u043b\u043e\u0445\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0434\u0440\u0430 \u041e\u0421 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u044b\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439. \u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u043c\u044b \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0434\u0440\u0430 Linux, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0432\u043b\u0438\u044f\u0442\u044c \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nastrojka-parametrov-yadra-linux-dlya-optimizatsii-postgresql\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u044f\u0434\u0440\u0430 Linux \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 PostgreSQL | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c PostgreSQL \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041f\u043b\u043e\u0445\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0434\u0440\u0430 \u041e\u0421 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u044b\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439. \u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u043c\u044b \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0434\u0440\u0430 Linux, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0432\u043b\u0438\u044f\u0442\u044c \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nastrojka-parametrov-yadra-linux-dlya-optimizatsii-postgresql\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:07:35+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:07:35+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Konfigurimi i parametrave t\u00eb b\u00ebrtham\u00ebs Linux p\u00ebr optimizimin e PostgreSQL | ProHoster","description":"Performanca optimale e PostgreSQL varet nga parametrat e sistemit operativ t\u00eb caktuar si duhet. Parametrat e keqkonfiguruar t\u00eb b\u00ebrtham\u00ebs s\u00eb OS mund t\u00eb shkaktojn\u00eb ulje t\u00eb performanc\u00ebs s\u00eb serverit t\u00eb databaz\u00ebs. Prandaj \u00ebsht\u00eb e domosdoshme q\u00eb k\u00ebta parametra t\u00eb konfigurohen n\u00eb p\u00ebrputhje me serverin e databaz\u00ebs dhe ngarkes\u00ebn e tij t\u00eb pun\u00ebs. N\u00eb k\u00ebt\u00eb post, do t\u00eb diskutojm\u00eb disa parametra t\u00eb r\u00ebnd\u00ebsish\u00ebm t\u00eb b\u00ebrtham\u00ebs Linux q\u00eb mund t\u00eb ndikojn\u00eb n\u00eb performanc\u00eb.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nastrojka-parametrov-yadra-linux-dlya-optimizatsii-postgresql","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u044f\u0434\u0440\u0430 Linux \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 PostgreSQL | ProHoster","og:description":"\u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c PostgreSQL \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041f\u043b\u043e\u0445\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0434\u0440\u0430 \u041e\u0421 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0431\u044b\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439. \u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u043c\u044b \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0434\u0440\u0430 Linux, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0432\u043b\u0438\u044f\u0442\u044c \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/nastrojka-parametrov-yadra-linux-dlya-optimizatsii-postgresql","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:07:35+00:00","article:modified_time":"2019-10-31T19:07:35+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35920","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 01:17:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:53:32","updated":"2026-01-22 01:17:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/35920","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=35920"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/35920\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/26870"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=35920"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=35920"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=35920"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}