{"id":4980,"date":"2026-02-11T18:10:09","date_gmt":"2026-02-11T15:10:09","guid":{"rendered":"https:\/\/www.dchost.com\/blog\/odoo-ve-erpnext-icin-vps-hosting-rehberi-cpu-ram-worker-ve-reverse-proxy-ayarlari\/"},"modified":"2026-02-11T18:10:09","modified_gmt":"2026-02-11T15:10:09","slug":"odoo-ve-erpnext-icin-vps-hosting-rehberi-cpu-ram-worker-ve-reverse-proxy-ayarlari","status":"publish","type":"post","link":"https:\/\/www.dchost.com\/blog\/odoo-ve-erpnext-icin-vps-hosting-rehberi-cpu-ram-worker-ve-reverse-proxy-ayarlari\/","title":{"rendered":"Odoo ve ERPNext \u0130\u00e7in VPS Hosting Rehberi: CPU, RAM, Worker ve Reverse Proxy Ayarlar\u0131"},"content":{"rendered":"<div class=\"dchost-blog-content-wrapper\"><div id=\"toc_container\" class=\"toc_transparent no_bullets\"><p class=\"toc_title\">\u0130&ccedil;indekiler<\/p><ul class=\"toc_list\"><li><a href=\"#Odoo_ve_ERPNext_Icin_Dogru_VPS_Altyapisinin_Onemi\"><span class=\"toc_number toc_depth_1\">1<\/span> Odoo ve ERPNext \u0130\u00e7in Do\u011fru VPS Altyap\u0131s\u0131n\u0131n \u00d6nemi<\/a><\/li><li><a href=\"#CPU_RAM_ve_Disk_Kaynaklarini_Planlamak\"><span class=\"toc_number toc_depth_1\">2<\/span> CPU, RAM ve Disk Kaynaklar\u0131n\u0131 Planlamak<\/a><ul><li><a href=\"#Kaynak_turlerini_dogru_okumak\"><span class=\"toc_number toc_depth_2\">2.1<\/span> Kaynak t\u00fcrlerini do\u011fru okumak<\/a><\/li><li><a href=\"#Kullanici_sayisina_gore_temel_boyutlandirma\"><span class=\"toc_number toc_depth_2\">2.2<\/span> Kullan\u0131c\u0131 say\u0131s\u0131na g\u00f6re temel boyutland\u0131rma<\/a><\/li><li><a href=\"#CPU_ve_worker_iliskisi\"><span class=\"toc_number toc_depth_2\">2.3<\/span> CPU ve worker ili\u015fkisi<\/a><\/li><li><a href=\"#Disk_performansi_ve_noisy_neighbor_etkisi\"><span class=\"toc_number toc_depth_2\">2.4<\/span> Disk performans\u0131 ve noisy neighbor etkisi<\/a><\/li><\/ul><\/li><li><a href=\"#Odoo_Icin_Worker_Cron_ve_Uzun_Sureli_Is_Ayarlari\"><span class=\"toc_number toc_depth_1\">3<\/span> Odoo \u0130\u00e7in Worker, Cron ve Uzun S\u00fcreli \u0130\u015f Ayarlar\u0131<\/a><ul><li><a href=\"#Odoo_worker_sayisini_hesaplamak\"><span class=\"toc_number toc_depth_2\">3.1<\/span> Odoo worker say\u0131s\u0131n\u0131 hesaplamak<\/a><\/li><li><a href=\"#Ornek_hesap_4_vCPU_8_GB_RAMli_Odoo_VPS\"><span class=\"toc_number toc_depth_2\">3.2<\/span> \u00d6rnek hesap: 4 vCPU, 8 GB RAM\u2019li Odoo VPS<\/a><\/li><li><a href=\"#Temel_odooconf_ornegi\"><span class=\"toc_number toc_depth_2\">3.3<\/span> Temel odoo.conf \u00f6rne\u011fi<\/a><\/li><li><a href=\"#Uzun_suren_islemler_importexport_ve_raporlar\"><span class=\"toc_number toc_depth_2\">3.4<\/span> Uzun s\u00fcren i\u015flemler, import\/export ve raporlar<\/a><\/li><li><a href=\"#Longpolling_ve_canli_bildirimler\"><span class=\"toc_number toc_depth_2\">3.5<\/span> Longpolling ve canl\u0131 bildirimler<\/a><\/li><\/ul><\/li><li><a href=\"#ERPNext_Icin_Web_Worker_Queue_ve_Scheduler_Tasarimi\"><span class=\"toc_number toc_depth_1\">4<\/span> ERPNext \u0130\u00e7in Web Worker, Queue ve Scheduler Tasar\u0131m\u0131<\/a><ul><li><a href=\"#Gunicorn_web_worker_sayisini_belirlemek\"><span class=\"toc_number toc_depth_2\">4.1<\/span> Gunicorn web worker say\u0131s\u0131n\u0131 belirlemek<\/a><\/li><li><a href=\"#Queue_workerlar_ve_Redis_kuyruklari\"><span class=\"toc_number toc_depth_2\">4.2<\/span> Queue worker\u2019lar ve Redis kuyruklar\u0131<\/a><\/li><li><a href=\"#Supervisor_veya_systemd_ile_surec_yonetimi\"><span class=\"toc_number toc_depth_2\">4.3<\/span> Supervisor veya systemd ile s\u00fcre\u00e7 y\u00f6netimi<\/a><\/li><li><a href=\"#Scheduler_ve_rapor_yogunlugu\"><span class=\"toc_number toc_depth_2\">4.4<\/span> Scheduler ve rapor yo\u011funlu\u011fu<\/a><\/li><\/ul><\/li><li><a href=\"#Reverse_Proxy_Nginx_Mimarisi_ve_Ornek_Ayarlar\"><span class=\"toc_number toc_depth_1\">5<\/span> Reverse Proxy (Nginx) Mimarisi ve \u00d6rnek Ayarlar<\/a><ul><li><a href=\"#Temel_Nginx_server_blogu_ornegi_Odoo\"><span class=\"toc_number toc_depth_2\">5.1<\/span> Temel Nginx server blo\u011fu \u00f6rne\u011fi (Odoo)<\/a><\/li><li><a href=\"#ERPNext_icin_reverse_proxy_ve_statik_dosyalar\"><span class=\"toc_number toc_depth_2\">5.2<\/span> ERPNext i\u00e7in reverse proxy ve statik dosyalar<\/a><\/li><li><a href=\"#Keepalive_HTTP2_ve_sikistirma\"><span class=\"toc_number toc_depth_2\">5.3<\/span> Keepalive, HTTP\/2 ve s\u0131k\u0131\u015ft\u0131rma<\/a><\/li><\/ul><\/li><li><a href=\"#Guvenlik_Yedekleme_ve_Izleme_Uretim_Ortamini_Tamamlamak\"><span class=\"toc_number toc_depth_1\">6<\/span> G\u00fcvenlik, Yedekleme ve \u0130zleme: \u00dcretim Ortam\u0131n\u0131 Tamamlamak<\/a><ul><li><a href=\"#Temel_VPS_guvenlik_sertlestirmesi\"><span class=\"toc_number toc_depth_2\">6.1<\/span> Temel VPS g\u00fcvenlik sertle\u015ftirmesi<\/a><\/li><li><a href=\"#Yedekleme_stratejisi_Veritabani_dosya_sistemi\"><span class=\"toc_number toc_depth_2\">6.2<\/span> Yedekleme stratejisi: Veritaban\u0131 + dosya sistemi<\/a><\/li><li><a href=\"#Izleme_ve_erken_uyari_sistemleri\"><span class=\"toc_number toc_depth_2\">6.3<\/span> \u0130zleme ve erken uyar\u0131 sistemleri<\/a><\/li><\/ul><\/li><li><a href=\"#Sonuc_Odoo_ve_ERPNext_Icin_Saglam_Bir_VPS_Mimarisi_Nasil_Kurulur\"><span class=\"toc_number toc_depth_1\">7<\/span> Sonu\u00e7: Odoo ve ERPNext \u0130\u00e7in Sa\u011flam Bir VPS Mimarisi Nas\u0131l Kurulur?<\/a><\/li><\/ul><\/div>\n<h2><span id=\"Odoo_ve_ERPNext_Icin_Dogru_VPS_Altyapisinin_Onemi\">Odoo ve ERPNext \u0130\u00e7in Do\u011fru <a href=\"https:\/\/www.dchost.com\/tr\/vps\">VPS<\/a> Altyap\u0131s\u0131n\u0131n \u00d6nemi<\/span><\/h2>\n<p>Odoo veya ERPNext ile kurumsal s\u00fcre\u00e7lerinizi dijitalle\u015ftirirken, uygulaman\u0131n kendisi kadar \u00f6nemli bir konu da arka plandaki VPS altyap\u0131s\u0131d\u0131r. ERP ve CRM sistemleri; sat\u0131\u015f, stok, muhasebe, \u00fcretim, insan kaynaklar\u0131 gibi i\u015flevleri tek bir yerde toplar ve \u00e7o\u011fu zaman g\u00fcn\u00fcn her saati aktif kullan\u0131c\u0131 trafi\u011fi al\u0131r. Bu da CPU, RAM, disk ve a\u011f kaynaklar\u0131n\u0131n rastgele de\u011fil, planl\u0131 \u015fekilde tasarlanmas\u0131n\u0131 zorunlu k\u0131lar.<\/p>\n<p>\u00d6zellikle Odoo ve ERPNext gibi Python tabanl\u0131, veritaban\u0131 a\u011f\u0131rl\u0131kl\u0131 uygulamalarda yanl\u0131\u015f se\u00e7ilmi\u015f bir VPS; yava\u015f a\u00e7\u0131lan formlar, zaman a\u015f\u0131m\u0131na d\u00fc\u015fen raporlar ve bo\u015fa giden \u00e7al\u0131\u015fan zaman\u0131 olarak geri d\u00f6ner. Buna kar\u015f\u0131l\u0131k, iyi planlanm\u0131\u015f bir VPS mimarisi; do\u011fru CPU\/RAM dengesi, makul worker say\u0131lar\u0131 ve sa\u011flam bir reverse proxy ile y\u0131llarca sessiz sedas\u0131z ve stabil \u00e7al\u0131\u015fabilir.<\/p>\n<p>DCHost olarak sahada g\u00f6rd\u00fc\u011f\u00fcm\u00fcz en b\u00fcy\u00fck sorun, ERP ge\u00e7i\u015flerinde uygulama taraf\u0131na \u00e7ok odaklan\u0131l\u0131p altyap\u0131n\u0131n son dakikaya b\u0131rak\u0131lmas\u0131. Bu rehberde tam da bunu tersine \u00e7eviriyoruz: Odoo ve ERPNext i\u00e7in VPS se\u00e7erken hangi kaynaklara ihtiya\u00e7 duydu\u011funuzu, worker say\u0131lar\u0131n\u0131 nas\u0131l hesaplayabilece\u011finizi ve Nginx reverse proxy ile \u00fcretim ortam\u0131n\u0131 nas\u0131l sa\u011flamla\u015ft\u0131rabilece\u011finizi ad\u0131m ad\u0131m netle\u015ftiriyoruz.<\/p>\n<p>E\u011fer genel \u00e7er\u00e7eveyi de g\u00f6rmek isterseniz, bu yaz\u0131y\u0131 okuduktan sonra <a href='https:\/\/www.dchost.com\/blog\/odoo-erpnext-ve-diger-crm-erp-uygulamalari-icin-vps-hosting-rehberi\/'>Odoo ve ERPNext i\u00e7in genel VPS hosting rehberimizi<\/a> de incelemeniz faydal\u0131 olacakt\u0131r.<\/p>\n<h2><span id=\"CPU_RAM_ve_Disk_Kaynaklarini_Planlamak\">CPU, RAM ve Disk Kaynaklar\u0131n\u0131 Planlamak<\/span><\/h2>\n<p>Odoo ve ERPNext i\u00e7in VPS se\u00e7erken ilk sorular neredeyse hep ayn\u0131d\u0131r: Ka\u00e7 CPU, ne kadar RAM, ne kadar disk? Bu sorular\u0131n tek bir sihirli cevab\u0131 yok; ama belli kullan\u0131c\u0131 profilleri i\u00e7in olduk\u00e7a isabetli aral\u0131klar \u00f6nermek m\u00fcmk\u00fcn.<\/p>\n<h3><span id=\"Kaynak_turlerini_dogru_okumak\">Kaynak t\u00fcrlerini do\u011fru okumak<\/span><\/h3>\n<p>\u00d6nce hangi kayna\u011f\u0131n neye etki etti\u011fini netle\u015ftirelim:<\/p>\n<ul>\n<li><strong>vCPU:<\/strong> Formlar\u0131n a\u00e7\u0131l\u0131\u015f h\u0131z\u0131, raporlar\u0131n \u00e7al\u0131\u015fmas\u0131, import\/export ve arka plan i\u015fler b\u00fcy\u00fck \u00f6l\u00e7\u00fcde CPU g\u00fcc\u00fcne bakar. Worker say\u0131n\u0131zla do\u011frudan ili\u015fkilidir.<\/li>\n<li><strong>RAM:<\/strong> Odoo\/ERPNext worker s\u00fcre\u00e7leri, PostgreSQL veya MariaDB\/PostgreSQL veritaban\u0131 ve Redis gibi servisler belle\u011fi payla\u015f\u0131r. Fazla worker a\u00e7\u0131p RAM\u2019i yetiremeyince swap\u2019e d\u00fc\u015fen sistem, kullan\u0131c\u0131 deneyimini ciddi \u015fekilde bozar.<\/li>\n<li><strong>Disk (NVMe\/SSD) ve IOPS:<\/strong> ERP uygulamalar\u0131nda k\u00fc\u00e7\u00fck ama s\u0131k I\/O \u00e7oktur. Bu y\u00fczden h\u0131zl\u0131 disk (tercihen NVMe) ve yeterli IOPS, \u00f6zellikle raporlar ve toplu i\u015flemlerde ciddi fark yarat\u0131r.<\/li>\n<li><strong>A\u011f ve gecikme:<\/strong> Uzak ofisler, VPN \u00fczerinden ba\u011flanan kullan\u0131c\u0131lar veya entegrasyon servisleri varsa, network taraf\u0131ndaki gecikme de hissedilir hale gelir; ancak \u00e7o\u011fu senaryoda ana belirleyici CPU ve RAM\u2019dir.<\/li>\n<\/ul>\n<h3><span id=\"Kullanici_sayisina_gore_temel_boyutlandirma\">Kullan\u0131c\u0131 say\u0131s\u0131na g\u00f6re temel boyutland\u0131rma<\/span><\/h3>\n<p>A\u015fa\u011f\u0131daki yakla\u015f\u0131m, DCHost \u00fczerinde g\u00f6rd\u00fc\u011f\u00fcm\u00fcz ger\u00e7ek kurulumlardan s\u00fcz\u00fclm\u00fc\u015f pratik bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r (tek VPS, hem uygulama hem veritaban\u0131 ayn\u0131 makinede):<\/p>\n<ul>\n<li><strong>5\u201315 e\u015fzamanl\u0131 kullan\u0131c\u0131 (k\u00fc\u00e7\u00fck ekip):<\/strong>\n<ul>\n<li>2 vCPU<\/li>\n<li>4\u20138 GB RAM (Odoo i\u00e7in 4 GB alt\u0131na inmemenizi \u00f6neririz)<\/li>\n<li>80\u2013120 GB NVMe disk (loglar ve yedekler i\u00e7in pay b\u0131rak\u0131n)<\/li>\n<\/ul>\n<\/li>\n<li><strong>20\u201350 e\u015fzamanl\u0131 kullan\u0131c\u0131 (b\u00fcy\u00fcyen KOB\u0130):<\/strong>\n<ul>\n<li>4 vCPU<\/li>\n<li>8\u201316 GB RAM<\/li>\n<li>150\u2013250 GB NVMe disk<\/li>\n<\/ul>\n<\/li>\n<li><strong>50\u2013150 e\u015fzamanl\u0131 kullan\u0131c\u0131 (\u00e7ok departmanl\u0131 yap\u0131):<\/strong>\n<ul>\n<li>8 vCPU ve \u00fczeri<\/li>\n<li>16\u201332 GB RAM<\/li>\n<li>Uygulama ve veritaban\u0131n\u0131 ayr\u0131 VPS\u2019lere ay\u0131rmay\u0131 d\u00fc\u015f\u00fcnmeye ba\u015flay\u0131n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Buradaki kullan\u0131c\u0131 say\u0131lar\u0131 toplam kullan\u0131c\u0131 de\u011fil, ayn\u0131 anda aktif \u00e7al\u0131\u015fan kullan\u0131c\u0131 say\u0131s\u0131d\u0131r. \u00d6rne\u011fin 80 lisansl\u0131 kullan\u0131c\u0131 olup g\u00fcnde en fazla 15 ki\u015finin e\u015fzamanl\u0131 \u00e7al\u0131\u015ft\u0131\u011f\u0131 bir firmada, ilk kategori sizin i\u00e7in yeterli olabilir.<\/p>\n<h3><span id=\"CPU_ve_worker_iliskisi\">CPU ve worker ili\u015fkisi<\/span><\/h3>\n<p>Odoo ve ERPNext, Python temelli oldu\u011fu i\u00e7in her worker s\u00fcreci bir CPU \u00e7ekirde\u011fini y\u00fck alt\u0131na al\u0131r. Genel olarak:<\/p>\n<ul>\n<li>Toplam worker say\u0131s\u0131n\u0131, vCPU say\u0131n\u0131z\u0131n 2\u20133 kat\u0131 civar\u0131nda tutmak makuld\u00fcr.<\/li>\n<li>Ancak her worker\u2019\u0131n bellek t\u00fcketimi de oldu\u011fundan, RAM taraf\u0131n\u0131 mutlaka denkleme katmak gerekir.<\/li>\n<\/ul>\n<p>\u00d6rne\u011fin 4 vCPU ve 8 GB RAM\u2019li bir VPS \u00fczerinde 12\u201314 Odoo worker a\u00e7mak teoride m\u00fcmk\u00fcn olsa da pratikte RAM yetmeyecek ve swap nedeniyle performans d\u00fc\u015fecektir. A\u015fa\u011f\u0131da Odoo ve ERPNext i\u00e7in ayr\u0131 ayr\u0131 detayl\u0131 hesaplara girece\u011fiz.<\/p>\n<h3><span id=\"Disk_performansi_ve_noisy_neighbor_etkisi\">Disk performans\u0131 ve noisy neighbor etkisi<\/span><\/h3>\n<p>ERP i\u015f y\u00fcklerinde disk performans\u0131 \u00f6zellikle raporlama ve toplu veri importlar\u0131nda kritik hale gelir. DCHost \u00fczerinde NVMe tabanl\u0131 VPS\u2019lerde, klasik SATA SSD\u2019lere g\u00f6re hissedilir bir fark g\u00f6r\u00fcrs\u00fcn\u00fcz. Ayr\u0131ca payla\u015f\u0131ml\u0131 altyap\u0131larda s\u0131k kar\u015f\u0131la\u015f\u0131lan noisy neighbor (kom\u015fu g\u00fcr\u00fclt\u00fcs\u00fc) problemleri, ERP gibi tutarl\u0131 performans gerektiren uygulamalarda daha da can s\u0131k\u0131c\u0131d\u0131r.<\/p>\n<p>VPS\u2019inizde zaman zaman CPU steal oranlar\u0131n\u0131n y\u00fckseldi\u011fini g\u00f6r\u00fcyorsan\u0131z, bunun ERP performans\u0131na etkisini anlamak i\u00e7in <a href='https:\/\/www.dchost.com\/blog\/vpste-noisy-neighbor-ve-cpu-steal-sorunlarini-tespit-etmek-ve-azaltmak\/'>noisy neighbor ve CPU steal sorunlar\u0131n\u0131 tespit etmeye y\u00f6nelik rehberimizi<\/a> incelemenizi tavsiye ederiz.<\/p>\n<h2><span id=\"Odoo_Icin_Worker_Cron_ve_Uzun_Sureli_Is_Ayarlari\">Odoo \u0130\u00e7in Worker, Cron ve Uzun S\u00fcreli \u0130\u015f Ayarlar\u0131<\/span><\/h2>\n<p>Odoo\u2019yu ger\u00e7ek \u00fcretim ortam\u0131na al\u0131rken, en kritik ad\u0131mlardan biri worker konfig\u00fcrasyonudur. Geli\u015ftirme modunda (workers = 0) tek proses \u00e7al\u0131\u015f\u0131r; bu mod k\u00fc\u00e7\u00fck testler i\u00e7in uygun olsa da ger\u00e7ek kullan\u0131c\u0131 y\u00fck\u00fc alt\u0131nda dar bo\u011faza girer. \u00dcretimde mutlaka \u00e7oklu worker mimarisini kullanmal\u0131s\u0131n\u0131z.<\/p>\n<h3><span id=\"Odoo_worker_sayisini_hesaplamak\">Odoo worker say\u0131s\u0131n\u0131 hesaplamak<\/span><\/h3>\n<p>Odoo dok\u00fcmantasyonunda s\u0131k ge\u00e7en pratik form\u00fcl \u015fudur:<\/p>\n<ul>\n<li>web workers \u2248 2 \u00d7 CPU \u00e7ekirde\u011fi<\/li>\n<li>cron threads (max_cron_threads) = 1\u20132<\/li>\n<\/ul>\n<p>Ancak sahadaki tecr\u00fcbeye g\u00f6re sadece CPU de\u011fil, RAM\u2019i de denkleme dahil etmek gerekiyor. Ortalama de\u011ferlerle konu\u015fursak:<\/p>\n<ul>\n<li>Basit kurulumlar (az eklenti, az \u00f6zelle\u015ftirme): worker ba\u015f\u0131na 200\u2013300 MB RAM<\/li>\n<li>A\u011f\u0131r kurulumlar (\u00e7ok mod\u00fcl, rapor, geli\u015fmi\u015f \u00f6zelle\u015ftirmeler): worker ba\u015f\u0131na 400\u2013500 MB RAM<\/li>\n<\/ul>\n<p>\u00dczerine:<\/p>\n<ul>\n<li>PostgreSQL i\u00e7in en az 1\u20132 GB RAM<\/li>\n<li>\u0130\u015fletim sistemi, Nginx, Redis gibi hizmetler i\u00e7in 1\u20131.5 GB RAM<\/li>\n<\/ul>\n<p>eklemeniz gerekir.<\/p>\n<h3><span id=\"Ornek_hesap_4_vCPU_8_GB_RAMli_Odoo_VPS\">\u00d6rnek hesap: 4 vCPU, 8 GB RAM\u2019li Odoo VPS<\/span><\/h3>\n<p>Orta seviyede \u00f6zelle\u015ftirilmi\u015f, 20\u201330 e\u015fzamanl\u0131 kullan\u0131c\u0131l\u0131 bir Odoo kurulumunu d\u00fc\u015f\u00fcnelim:<\/p>\n<ul>\n<li>Toplam RAM: 8 GB<\/li>\n<li>OS + Nginx + di\u011fer servisler: ~1.5 GB<\/li>\n<li>PostgreSQL: ~1.5 GB<\/li>\n<li>Geriye worker\u2019lar i\u00e7in yakla\u015f\u0131k 5 GB kal\u0131yor.<\/li>\n<\/ul>\n<p>Kurulumunuzun orta a\u011f\u0131rl\u0131kta oldu\u011funu varsayal\u0131m ve worker ba\u015f\u0131na 350 MB desek:<\/p>\n<ul>\n<li>5 GB \/ 0.35 GB \u2248 14 worker teorik \u00fcst s\u0131n\u0131r gibi g\u00f6r\u00fcnebilir.<\/li>\n<li>Pratikte biraz tampon b\u0131rak\u0131p 8\u201310 worker civar\u0131nda kalmak \u00e7ok daha g\u00fcvenli olur.<\/li>\n<\/ul>\n<p>CPU taraf\u0131nda 4 vCPU\u2019nuz oldu\u011fu i\u00e7in, 8\u201310 web worker + 1 cron thread iyi bir ba\u015flang\u0131\u00e7 konfig\u00fcrasyonudur.<\/p>\n<h3><span id=\"Temel_odooconf_ornegi\">Temel odoo.conf \u00f6rne\u011fi<\/span><\/h3>\n<p>A\u015fa\u011f\u0131daki \u00f6rnek, 4 vCPU \/ 8 GB RAM\u2019li bir VPS \u00fczerinde Odoo 16 i\u00e7in makul bir \u00fcretim ba\u015flang\u0131\u00e7 ayar\u0131 olabilir:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">[options]\n; Performans\nworkers = 9\nmax_cron_threads = 1\nlongpolling_port = 8072\n\n; Bellek s\u0131n\u0131rlar\u0131 (MB cinsinden)\nlimit_memory_soft = 268435456  ; 256 MB\nlimit_memory_hard = 536870912  ; 512 MB\n\n; Zaman s\u0131n\u0131rlar\u0131 (saniye)\nlimit_time_cpu = 60\nlimit_time_real = 120\n<\/code><\/pre>\n<p>Burada:<\/p>\n<ul>\n<li>9 worker: 4 vCPU i\u00e7in 2\u00d7CPU + 1 yakla\u015f\u0131m\u0131na yak\u0131nd\u0131r.<\/li>\n<li>max_cron_threads = 1: K\u00fc\u00e7\u00fck ve orta \u00f6l\u00e7ekli kurulumlarda genellikle yeterlidir.<\/li>\n<li>limit_memory_soft ve hard ile hatal\u0131 bir sorgu veya mod\u00fcl\u00fcn t\u00fcm RAM\u2019i yemesini engellersiniz.<\/li>\n<\/ul>\n<p>\u0130lerleyen d\u00f6nemde kullan\u0131c\u0131 say\u0131s\u0131 artt\u0131k\u00e7a veya RAM y\u00fckseltti\u011finizde; \u00f6nce RAM\u2019i art\u0131rmak, sonra worker say\u0131s\u0131n\u0131 kademeli olarak y\u00fckseltmek en sa\u011fl\u0131kl\u0131 yakla\u015f\u0131md\u0131r.<\/p>\n<h3><span id=\"Uzun_suren_islemler_importexport_ve_raporlar\">Uzun s\u00fcren i\u015flemler, import\/export ve raporlar<\/span><\/h3>\n<p>Odoo\u2019da b\u00fcy\u00fck CSV importlar\u0131, toplu fatura kesimleri veya geni\u015f raporlar hem CPU hem de s\u00fcre a\u00e7\u0131s\u0131ndan a\u011f\u0131r i\u015flerdir. Bu noktada iki \u015fey \u00f6nemlidir:<\/p>\n<ul>\n<li><strong>Nginx proxy_read_timeout<\/strong> de\u011ferini yeterince y\u00fcksek tutmak (\u00f6rne\u011fin 600 saniye),<\/li>\n<li><strong>limit_time_cpu<\/strong> ve <strong>limit_time_real<\/strong> ayarlar\u0131n\u0131 i\u015f y\u00fck\u00fcne g\u00f6re mant\u0131kl\u0131 seviyelerde belirlemek.<\/li>\n<\/ul>\n<p>\u00c7ok a\u011f\u0131r i\u015flemleri mesai d\u0131\u015f\u0131 saatlere kayd\u0131rmak da iyi bir operasyonsal pratiktir. \u0130leride Nginx reverse proxy \u00f6rne\u011finde bu timeout ayarlar\u0131n\u0131 detayland\u0131raca\u011f\u0131z.<\/p>\n<h3><span id=\"Longpolling_ve_canli_bildirimler\">Longpolling ve canl\u0131 bildirimler<\/span><\/h3>\n<p>Canl\u0131 sohbet, bildirimler ve canl\u0131 durum g\u00fcncellemeleri i\u00e7in Odoo, longpolling mekanizmas\u0131n\u0131 kullan\u0131r. Bu trafi\u011fi ana HTTP portundan ay\u0131rmak, hem performans hem de hata ay\u0131klama a\u00e7\u0131s\u0131ndan faydal\u0131d\u0131r. Genellikle:<\/p>\n<ul>\n<li>Uygulama portu: 8069<\/li>\n<li>Longpolling portu: 8072<\/li>\n<\/ul>\n<p>ve Nginx \u00fczerinde bu iki portu ayr\u0131 upstream bloklar\u0131yla tan\u0131mlay\u0131p; \/longpolling yollar\u0131n\u0131 8072\u2019ye, geri kalan istekleri 8069\u2019a y\u00f6nlendirmek iyi bir mimari \u00f6r\u00fcnt\u00fcd\u00fcr.<\/p>\n<h2><span id=\"ERPNext_Icin_Web_Worker_Queue_ve_Scheduler_Tasarimi\">ERPNext \u0130\u00e7in Web Worker, Queue ve Scheduler Tasar\u0131m\u0131<\/span><\/h2>\n<p>ERPNext, Frappe framework \u00fczerinde \u00e7al\u0131\u015f\u0131r ve tipik kurulumda a\u015fa\u011f\u0131daki bile\u015fenlerden olu\u015fur:<\/p>\n<ul>\n<li>gunicorn tabanl\u0131 web worker\u2019lar (HTTP istekleri kar\u015f\u0131lar)<\/li>\n<li>Redis kuyruklar\u0131 (default, short, long)<\/li>\n<li>Queue worker s\u00fcre\u00e7leri (kuyruklardaki i\u015fleri t\u00fcketir)<\/li>\n<li>Scheduler (zamanlanm\u0131\u015f g\u00f6revleri tetikler)<\/li>\n<\/ul>\n<p>Bu mimari, iyi ayarland\u0131\u011f\u0131nda hem esnek hem de \u00f6l\u00e7eklenebilirdir; ancak yanl\u0131\u015f konfig\u00fcrasyon, bekleyen kuyruklar ve zaman a\u015f\u0131m\u0131 alan aray\u00fcz \u00e7a\u011fr\u0131lar\u0131 olarak kullan\u0131c\u0131ya yans\u0131r.<\/p>\n<h3><span id=\"Gunicorn_web_worker_sayisini_belirlemek\">Gunicorn web worker say\u0131s\u0131n\u0131 belirlemek<\/span><\/h3>\n<p>ERPNext\u2019te web taraf\u0131 i\u00e7in pratik form\u00fcl, CPU \u00e7ekirde\u011fi ba\u015f\u0131na 2\u20133 worker\u2019d\u0131r. \u00d6rne\u011fin:<\/p>\n<ul>\n<li>2 vCPU i\u00e7in 3\u20134 web worker<\/li>\n<li>4 vCPU i\u00e7in 6\u20138 web worker<\/li>\n<\/ul>\n<p>\u00c7ok y\u00fcksek trafik yoksa 2\u00d7CPU ile ba\u015flamak, bellek t\u00fcketimini daha kontroll\u00fc tutman\u0131z\u0131 sa\u011flar. Web worker\u2019lar tipik olarak daha k\u0131sa \u00f6m\u00fcrl\u00fc, kullan\u0131c\u0131 aray\u00fcz\u00fcne y\u00f6nelik istekleri kar\u015f\u0131lar; uzun s\u00fcren i\u015flemlerin b\u00fcy\u00fck k\u0131sm\u0131 arka plan kuyruklar\u0131na devredilir.<\/p>\n<h3><span id=\"Queue_workerlar_ve_Redis_kuyruklari\">Queue worker\u2019lar ve Redis kuyruklar\u0131<\/span><\/h3>\n<p>ERPNext\u2019te \u00fc\u00e7 ana Redis kuyru\u011fu bulunur:<\/p>\n<ul>\n<li><strong>default:<\/strong> Genel i\u015fler, e-posta g\u00f6nderimleri, bir k\u0131sm\u0131 i\u015f ak\u0131\u015flar\u0131<\/li>\n<li><strong>short:<\/strong> H\u0131zl\u0131 tamamlanmas\u0131 beklenen k\u00fc\u00e7\u00fck i\u015fler<\/li>\n<li><strong>long:<\/strong> Detayl\u0131 raporlar ve a\u011f\u0131r arka plan g\u00f6revleri<\/li>\n<\/ul>\n<p>Her bir kuyruk i\u00e7in en az bir worker s\u00fcreci \u00e7al\u0131\u015ft\u0131rman\u0131z, kuyruklar\u0131n t\u0131kanmamas\u0131n\u0131 sa\u011flar. Pratik bir ba\u015flang\u0131\u00e7:<\/p>\n<ul>\n<li>default: 2 worker<\/li>\n<li>short: 1 worker<\/li>\n<li>long: 1 worker<\/li>\n<\/ul>\n<p>Toplamda 4 queue worker eder. 4 vCPU \/ 8 GB RAM\u2019li bir sunucuda, 6 web worker + 4 queue worker + scheduler ile genellikle 20\u201340 e\u015fzamanl\u0131 kullan\u0131c\u0131y\u0131 rahatl\u0131kla kald\u0131rabilirsiniz.<\/p>\n<h3><span id=\"Supervisor_veya_systemd_ile_surec_yonetimi\">Supervisor veya systemd ile s\u00fcre\u00e7 y\u00f6netimi<\/span><\/h3>\n<p>ERPNext \u00fcretim ortam\u0131nda, web ve queue worker\u2019lar\u0131n supervisor veya systemd ile y\u00f6netilmesi en yayg\u0131n yakla\u015f\u0131md\u0131r. \u00d6rne\u011fin supervisor taraf\u0131nda \u015fu t\u00fcr program tan\u0131mlar\u0131 g\u00f6rebilirsiniz:<\/p>\n<pre class=\"language-bash line-numbers\"><code class=\"language-bash\">[program:erpnext-web]\ncommand=\/usr\/bin\/bench serve --port 8000\nnumprocs=6\n\n[program:erpnext-default-worker]\ncommand=\/usr\/bin\/bench worker --queue default\nnumprocs=2\n\n[program:erpnext-short-worker]\ncommand=\/usr\/bin\/bench worker --queue short\nnumprocs=1\n\n[program:erpnext-long-worker]\ncommand=\/usr\/bin\/bench worker --queue long\nnumprocs=1\n<\/code><\/pre>\n<p>Buradaki numprocs de\u011ferleri, az \u00f6nce bahsetti\u011fimiz web ve queue worker say\u0131lar\u0131n\u0131 temsil eder. Worker say\u0131s\u0131n\u0131 art\u0131rmadan \u00f6nce mutlaka RAM kullan\u0131m\u0131n\u0131 izleyip, gerekirse DCHost \u00fczerindeki VPS\u2019inizin RAM\u2019ini bir \u00fcst pakete y\u00fckseltmek \u00e7ok daha sa\u011fl\u0131kl\u0131d\u0131r.<\/p>\n<p>Genel olarak arka plan i\u015flerinin ve kuyruklar\u0131n nas\u0131l y\u00f6netilece\u011fi konusunda daha geni\u015f bir perspektif i\u00e7in, ERPNext\u2019ten ba\u011f\u0131ms\u0131z olarak <a href='https:\/\/www.dchost.com\/blog\/vps-uzerinde-arka-plan-isleri-ve-kuyruk-yonetimi-laravel-queue-supervisor-systemd-ve-pm2\/'>VPS \u00fczerinde arka plan i\u015fleri ve kuyruk y\u00f6netimi rehberimizde<\/a> anlatt\u0131\u011f\u0131m\u0131z desenleri de inceleyebilirsiniz.<\/p>\n<h3><span id=\"Scheduler_ve_rapor_yogunlugu\">Scheduler ve rapor yo\u011funlu\u011fu<\/span><\/h3>\n<p>ERPNext\u2019te g\u00fcnl\u00fck, saatlik veya dakikal\u0131k tekrarlayan g\u00f6revler scheduler \u00fczerinden \u00e7al\u0131\u015f\u0131r. \u00c7ok say\u0131da zamanlanm\u0131\u015f rapor, toplu e-posta veya entegrasyon \u00e7a\u011fr\u0131s\u0131 tan\u0131ml\u0131ysa:<\/p>\n<ul>\n<li>Scheduler\u2019\u0131n CPU kullan\u0131m\u0131n\u0131 izleyin,<\/li>\n<li>Gerekiyorsa scheduler interval\u2019lerini daha seyrek hale getirin,<\/li>\n<li>A\u015f\u0131r\u0131 a\u011f\u0131r i\u015fleri long kuyru\u011funa y\u00f6nlendirip mesai d\u0131\u015f\u0131na al\u0131n.<\/li>\n<\/ul>\n<p>Bu sayede g\u00fcnd\u00fcz mesaisinde \u00e7al\u0131\u015fanlar form doldururken, geceleri yo\u011fun rapor ve entegrasyon i\u015flerinin sistemi kilitlemesini \u00f6nleyebilirsiniz.<\/p>\n<h2><span id=\"Reverse_Proxy_Nginx_Mimarisi_ve_Ornek_Ayarlar\">Reverse Proxy (Nginx) Mimarisi ve \u00d6rnek Ayarlar<\/span><\/h2>\n<p>Odoo ve ERPNext\u2019i do\u011frudan 8069\/8000 portlar\u0131ndan internete a\u00e7mak teoride m\u00fcmk\u00fcn olsa da \u00fcretim ortam\u0131nda tavsiye edilmez. \u00d6n tarafta bir reverse proxy (genelde Nginx) kullanman\u0131n sa\u011flad\u0131\u011f\u0131 avantajlar \u015funlard\u0131r:<\/p>\n<ul>\n<li>Tek noktadan SSL\/TLS y\u00f6netimi<\/li>\n<li>HTTP\/2 ve HTTP\/3 gibi modern protokolleri etkinle\u015ftirebilme<\/li>\n<li>client_max_body_size, timeout ve buffer ayarlar\u0131n\u0131 merkezi y\u00f6netme<\/li>\n<li>Statik dosyalar\u0131 (CSS, JS, g\u00f6rseller) do\u011frudan sunarak uygulama y\u00fck\u00fcn\u00fc azaltma<\/li>\n<li>Gerekirse ayn\u0131 VPS \u00fczerinde birden fazla ERP \u00f6rne\u011fini sanal host\u2019larla ay\u0131rabilme<\/li>\n<\/ul>\n<p>Nginx reverse proxy kurulumunun temel mant\u0131\u011f\u0131n\u0131 ve k\u00fc\u00e7\u00fck projeler i\u00e7in basit load balancer senaryolar\u0131n\u0131, ERP d\u0131\u015f\u0131ndaki senaryolar i\u00e7in de olsa <a href='https:\/\/www.dchost.com\/blog\/nginx-reverse-proxy-ve-basit-load-balancer-kurulumu-kucuk-projeler-icin-uygulamali-rehber\/'>Nginx reverse proxy kurulum rehberimizde<\/a> detayl\u0131 olarak anlatt\u0131k. Burada Odoo\/ERPNext\u2019e \u00f6zg\u00fc kritik ayarlara odaklanal\u0131m.<\/p>\n<h3><span id=\"Temel_Nginx_server_blogu_ornegi_Odoo\">Temel Nginx server blo\u011fu \u00f6rne\u011fi (Odoo)<\/span><\/h3>\n<p>A\u015fa\u011f\u0131daki \u00f6rnek, odoo.example.com alan ad\u0131 \u00fczerinden \u00e7al\u0131\u015fan bir Odoo 16 i\u00e7in tipik bir Nginx konfig\u00fcrasyonudur:<\/p>\n<pre class=\"language-nginx line-numbers\"><code class=\"language-nginx\">upstream odoo_web {\n    server 127.0.0.1:8069;\n}\n\nupstream odoo_longpolling {\n    server 127.0.0.1:8072;\n}\n\nserver {\n    listen 80;\n    server_name odoo.example.com;\n    return 301 https:\/\/$host$request_uri;\n}\n\nserver {\n    listen 443 ssl http2;\n    server_name odoo.example.com;\n\n    # &lt;a href=&quot;https:\/\/www.dchost.com\/tr\/ssl&quot;&gt;SSL sertifikas\u0131&lt;\/a&gt; ve g\u00fcvenlik ayarlar\u0131 burada\n\n    proxy_set_header X-Forwarded-Proto https;\n    proxy_set_header X-Forwarded-Host  $host;\n    proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;\n\n    client_max_body_size 50m;\n    proxy_read_timeout   600s;\n\n    location \/longpolling {\n        proxy_pass http:\/\/odoo_longpolling;\n    }\n\n    location \/ {\n        proxy_pass http:\/\/odoo_web;\n    }\n}\n<\/code><\/pre>\n<p>Burada dikkat etmeniz gereken ana noktalar:<\/p>\n<ul>\n<li><strong>proxy_read_timeout 600s:<\/strong> B\u00fcy\u00fck raporlar veya import i\u015flemlerinin zaman a\u015f\u0131m\u0131na d\u00fc\u015fmemesi i\u00e7in 10 dakika gibi rahat bir s\u00fcre.<\/li>\n<li><strong>client_max_body_size 50m:<\/strong> Kullan\u0131c\u0131lar\u0131n y\u00fckleyece\u011fi dosya boyutlar\u0131na g\u00f6re bu de\u011feri ayarlamal\u0131s\u0131n\u0131z.<\/li>\n<li>Uzun s\u00fcreli ba\u011flant\u0131lar i\u00e7in longpolling yolunu ayr\u0131 upstream\u2019e y\u00f6nlendirmek, chat ve canl\u0131 bildirimleri daha stabil hale getirir.<\/li>\n<\/ul>\n<h3><span id=\"ERPNext_icin_reverse_proxy_ve_statik_dosyalar\">ERPNext i\u00e7in reverse proxy ve statik dosyalar<\/span><\/h3>\n<p>ERPNext\u2019te bench komutlar\u0131 ile olu\u015fturulan site yap\u0131s\u0131nda, statik dosyalar genellikle public yollar alt\u0131nda tutulur. Nginx ile bu dizinleri ayr\u0131 location bloklar\u0131nda do\u011frudan sunmak, Python taraf\u0131ndaki y\u00fck\u00fc azalt\u0131r. \u00d6rne\u011fin:<\/p>\n<pre class=\"language-nginx line-numbers\"><code class=\"language-nginx\">location \/assets\/ {\n    root \/opt\/bench\/sites;\n    try_files $uri =404;\n}\n\nlocation \/files\/ {\n    root \/opt\/bench\/sites;\n    try_files $uri =404;\n}\n\nlocation \/ {\n    proxy_pass http:\/\/127.0.0.1:8000;\n    proxy_read_timeout 600s;\n}\n<\/code><\/pre>\n<p>Burada assets ve files dizinleri do\u011frudan Nginx taraf\u0131ndan sunuldu\u011fu i\u00e7in, \u00f6zellikle \u00e7ok say\u0131da kullan\u0131c\u0131ya hizmet veren kurulumlarda CPU y\u00fck\u00fc belirgin bi\u00e7imde azal\u0131r.<\/p>\n<h3><span id=\"Keepalive_HTTP2_ve_sikistirma\">Keepalive, HTTP\/2 ve s\u0131k\u0131\u015ft\u0131rma<\/span><\/h3>\n<p>ERP aray\u00fczleri bir\u00e7ok JS ve CSS dosyas\u0131 y\u00fckler. Bu nedenle:<\/p>\n<ul>\n<li><strong>HTTP\/2<\/strong> kullanmak, \u00e7ok say\u0131da e\u015fzamanl\u0131 iste\u011fi tek ba\u011flant\u0131da toplaman\u0131za yard\u0131m eder.<\/li>\n<li><strong>gzip veya brotli s\u0131k\u0131\u015ft\u0131rma<\/strong> ile network trafi\u011fini azaltabilirsiniz.<\/li>\n<li><strong>keepalive<\/strong> ayarlar\u0131n\u0131 mant\u0131kl\u0131 seviyede tutmak, her istek i\u00e7in yeni TCP ba\u011flant\u0131s\u0131 a\u00e7\u0131lmas\u0131n\u0131 engeller.<\/li>\n<\/ul>\n<p>Bunlar sadece ERP i\u00e7in de\u011fil, t\u00fcm web uygulamalar\u0131 i\u00e7in iyi pratiklerdir; detaylar\u0131n\u0131 farkl\u0131 senaryolarla birlikte di\u011fer makalelerimizde ele al\u0131yoruz.<\/p>\n<h2><span id=\"Guvenlik_Yedekleme_ve_Izleme_Uretim_Ortamini_Tamamlamak\">G\u00fcvenlik, Yedekleme ve \u0130zleme: \u00dcretim Ortam\u0131n\u0131 Tamamlamak<\/span><\/h2>\n<p>CPU, RAM ve worker ayarlar\u0131n\u0131 do\u011fru yapmak ne kadar \u00f6nemliyse; g\u00fcvenlik, yedek ve izleme de en az o kadar kritik. ERP verisi, \u00e7o\u011fu i\u015fletme i\u00e7in en hassas veri setlerinden biridir. Bu y\u00fczden Odoo ve ERPNext VPS\u2019inizi sadece performans a\u00e7\u0131s\u0131ndan de\u011fil, b\u00fct\u00fcnsel olarak tasarlaman\u0131z gerekir.<\/p>\n<h3><span id=\"Temel_VPS_guvenlik_sertlestirmesi\">Temel VPS g\u00fcvenlik sertle\u015ftirmesi<\/span><\/h3>\n<p>DCHost \u00fczerindeki bir Linux VPS\u2019te Odoo veya ERPNext kurarken, en az\u0131ndan \u015fu ad\u0131mlar\u0131 atman\u0131z\u0131 \u00f6neririz:<\/p>\n<ul>\n<li>SSH i\u00e7in parola giri\u015fini kapat\u0131p sadece anahtar ile eri\u015fim kullan\u0131n.<\/li>\n<li>sshd_config i\u00e7inde root ile do\u011frudan giri\u015fi kapat\u0131n.<\/li>\n<li>UFW, firewalld veya benzeri bir g\u00fcvenlik duvar\u0131 ile sadece gerekli portlar\u0131 (80\/443, y\u00f6netim i\u00e7in 22 vb.) a\u00e7\u0131n.<\/li>\n<li>fail2ban ile SSH brute force giri\u015fimlerine kar\u015f\u0131 koruma ekleyin.<\/li>\n<li>Veritaban\u0131 portlar\u0131n\u0131 (PostgreSQL vb.) d\u0131\u015f d\u00fcnyaya tamamen kapat\u0131n, sadece localhost veya VPN \u00fczerinden eri\u015fime izin verin.<\/li>\n<\/ul>\n<p>Bu ba\u015fl\u0131klar\u0131n her birini ad\u0131m ad\u0131m uygulamak i\u00e7in <a href='https:\/\/www.dchost.com\/blog\/vps-guvenlik-sertlestirme-kontrol-listesi-sshd_config-fail2ban-ve-root-erisimini-kapatmak\/'>VPS g\u00fcvenlik sertle\u015ftirme kontrol listesi rehberimizden<\/a> yararlanabilirsiniz.<\/p>\n<h3><span id=\"Yedekleme_stratejisi_Veritabani_dosya_sistemi\">Yedekleme stratejisi: Veritaban\u0131 + dosya sistemi<\/span><\/h3>\n<p>Odoo ve ERPNext\u2019te yedekler sadece veritaban\u0131ndan ibaret de\u011fildir. Odoo i\u00e7in filestore dizini, ERPNext i\u00e7in de site klas\u00f6rleri i\u00e7indeki dosyalar (ekler, y\u00fcklenen belgeler) en az veritaban\u0131 kadar kritiktir. Sa\u011flam bir strateji i\u00e7in:<\/p>\n<ul>\n<li>G\u00fcnl\u00fck veritaban\u0131 yede\u011fi (PostgreSQL dump veya benzeri ara\u00e7larla)<\/li>\n<li>G\u00fcnl\u00fck veya saatlik filestore\/site dosya yede\u011fi<\/li>\n<li>Yedeklerin d\u00fczenli olarak DCHost altyap\u0131s\u0131 d\u0131\u015f\u0131nda ikinci bir lokasyona da kopyalanmas\u0131<\/li>\n<li>Periyodik geri y\u00fckleme testleri (restore denemeden yedek var say\u0131lmaz)<\/li>\n<\/ul>\n<p>Yedek s\u0131kl\u0131\u011f\u0131n\u0131 ve ne kadar geriye gidebilmek istedi\u011finizi netle\u015ftirmek i\u00e7in, i\u015f taraf\u0131nda RPO ve RTO kavramlar\u0131n\u0131n konu\u015fulmas\u0131 \u00e7ok faydal\u0131d\u0131r. Bu konuda yol \u00e7izmek isterseniz, <a href='https:\/\/www.dchost.com\/blog\/kobiler-icin-rpo-rto-ve-felaket-kurtarma-plani-hosting-tarafinda-gercekci-hedefler\/'>KOB\u0130\u2019ler i\u00e7in RPO\/RTO ve felaket kurtarma plan\u0131 rehberimizi<\/a> okuman\u0131z\u0131 tavsiye ederiz.<\/p>\n<h3><span id=\"Izleme_ve_erken_uyari_sistemleri\">\u0130zleme ve erken uyar\u0131 sistemleri<\/span><\/h3>\n<p>ERP sunucunuzun ne zaman zorland\u0131\u011f\u0131n\u0131, RAM\u2019in ne zaman doldu\u011funu, disk alan\u0131n\u0131n ne kadar kald\u0131\u011f\u0131n\u0131 bilmezseniz; genellikle ilk uyar\u0131y\u0131 kullan\u0131c\u0131lar verir. Bu noktaya gelmeden \u00f6nce:<\/p>\n<ul>\n<li>CPU, RAM, disk ve a\u011f kullan\u0131m\u0131n\u0131 izleyen bir ajan kurun.<\/li>\n<li>PostgreSQL ba\u011flant\u0131 say\u0131s\u0131, sorgu s\u00fcreleri gibi metrikleri takip edin.<\/li>\n<li>Odoo\/ERPNext loglar\u0131nda hata patlamas\u0131 oldu\u011funda alarm \u00fcretecek mekanizmalar kurun.<\/li>\n<\/ul>\n<p>VPS taraf\u0131nda temel metrikleri nas\u0131l takip edebilece\u011finizi ve hangi ara\u00e7larla g\u00f6rselle\u015ftirebilece\u011finizi, <a href='https:\/\/www.dchost.com\/blog\/vps-kaynak-kullanimi-izleme-rehberi-htop-iotop-netdata-ve-prometheus\/'>VPS kaynak kullan\u0131m\u0131 izleme rehberimizde<\/a> somut \u00f6rneklerle ele ald\u0131k. ERP sunucular\u0131nda bu t\u00fcr bir izleme, \u00f6zellikle kapasite art\u0131\u015f\u0131 gereksinimini \u00f6nceden g\u00f6rmenizi sa\u011flar.<\/p>\n<h2><span id=\"Sonuc_Odoo_ve_ERPNext_Icin_Saglam_Bir_VPS_Mimarisi_Nasil_Kurulur\">Sonu\u00e7: Odoo ve ERPNext \u0130\u00e7in Sa\u011flam Bir VPS Mimarisi Nas\u0131l Kurulur?<\/span><\/h2>\n<p>Odoo veya ERPNext i\u00e7in do\u011fru VPS mimarisini kurmak, tek seferlik bir donan\u0131m se\u00e7imi de\u011fil; kapasite planlama, worker konfig\u00fcrasyonu, reverse proxy ayarlar\u0131 ve operasyonel s\u00fcre\u00e7leri birlikte d\u00fc\u015f\u00fcnmeyi gerektiriyor. CPU ve RAM\u2019i ger\u00e7ek e\u015fzamanl\u0131 kullan\u0131c\u0131 say\u0131s\u0131na g\u00f6re boyutlay\u0131p, Odoo ve ERPNext worker\u2019lar\u0131n\u0131 bu kaynaklara uygun say\u0131da belirlemek; hem performans hem de maliyet taraf\u0131nda sizi dengede tutar.<\/p>\n<p>\u00d6n tarafta Nginx reverse proxy ile SSL, timeout ve statik dosya sunumunu merkezi bir noktadan y\u00f6netmek; geri tarafta veritaban\u0131 ve dosya yedeklerini d\u00fczenli ve test edilmi\u015f bir plana oturtmak, ERP projenizi uzun vadede sorunsuz ta\u015f\u0131man\u0131n en g\u00fcvenli yolu. \u00dczerine temel VPS g\u00fcvenlik sertle\u015ftirmesi ve makul bir izleme\/alarmlama katman\u0131 koydu\u011funuzda, sisteminiz y\u0131llarca istikrarl\u0131 \u015fekilde hizmet verebilir.<\/p>\n<p>DCHost olarak Odoo ve ERPNext projeleri i\u00e7in gerek NVMe tabanl\u0131 Linux VPS\u2019ler, gerekse daha b\u00fcy\u00fck kurulumlar i\u00e7in <a href=\"https:\/\/www.dchost.com\/tr\/fiziksel-sunucu\">dedicated sunucu<\/a> ve colocation altyap\u0131lar\u0131 sunuyoruz. Mevcut veya planlad\u0131\u011f\u0131n\u0131z ERP y\u00fck\u00fcn\u00fc, kullan\u0131c\u0131 say\u0131s\u0131n\u0131 ve b\u00fcy\u00fcme hedeflerinizi bizimle payla\u015f\u0131rsan\u0131z; CPU, RAM, worker ve reverse proxy ayarlar\u0131n\u0131 da kapsayan u\u00e7tan uca bir mimari tasla\u011f\u0131n\u0131 birlikte \u00e7\u0131karabiliriz. \u0130htiyac\u0131n\u0131z basit bir tek VPS kurulumu da olsa, \u00e7ok \u015fubeli ve y\u00fcksek eri\u015filebilir bir mimari de olsa; ilk ad\u0131m\u0131 do\u011fru atmak, uzun vadede hem performans hem de maliyet a\u00e7\u0131s\u0131ndan fark yaratacakt\u0131r.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>\u0130&ccedil;indekiler1 Odoo ve ERPNext \u0130\u00e7in Do\u011fru VPS Altyap\u0131s\u0131n\u0131n \u00d6nemi2 CPU, RAM ve Disk Kaynaklar\u0131n\u0131 Planlamak2.1 Kaynak t\u00fcrlerini do\u011fru okumak2.2 Kullan\u0131c\u0131 say\u0131s\u0131na g\u00f6re temel boyutland\u0131rma2.3 CPU ve worker ili\u015fkisi2.4 Disk performans\u0131 ve noisy neighbor etkisi3 Odoo \u0130\u00e7in Worker, Cron ve Uzun S\u00fcreli \u0130\u015f Ayarlar\u01313.1 Odoo worker say\u0131s\u0131n\u0131 hesaplamak3.2 \u00d6rnek hesap: 4 vCPU, 8 GB RAM\u2019li Odoo [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4981,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-4980","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-teknoloji"],"_links":{"self":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/4980","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/comments?post=4980"}],"version-history":[{"count":0,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/posts\/4980\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media\/4981"}],"wp:attachment":[{"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/media?parent=4980"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/categories?post=4980"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dchost.com\/blog\/wp-json\/wp\/v2\/tags?post=4980"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}