Arkadaşların VDS önerisi bence doğru ama senin sorduğun iki konu var ya, sınırsız mail ve cron sıklığı, VDS alınca direkt çözülmüş olmuyor. Birkaç noktaya dikkat etmeni öneririm.

Öncelikle mail tarafı.
Yukarıda Hetzner önerilmiş. Hetzner yeni cloud hesaplarında 25 ve 465 gibi SMTP portlarını varsayılan olarak kapalı tutuyor. Açtırmak için talep oluşturman gerekiyor ve onay da her hesap için garanti değil. Yani “VDS'i alayım, mailleri de buradan sınırsız gönderirim” diye düşünüyorsan ilk etapta bu iş biraz can sıkabilir.
Ama açıkçası ben olsam zaten muhasebe yazılımının mail gönderimini kendi VDS'im üzerinden yapmazdım.
Yeni bir sunucu/IP'den yüzlerce-binlerce mail göndermeye başladığında Gmail, Outlook vs. seni pek tanımıyor. IP'nin gönderici itibarı yok. Bir süre sonra maillerin spam'e düşmesi veya direkt reddedilmesi gibi problemler yaşayabilirsin. Hosting firmasının koyduğu mail limitlerinin bir sebebi var yani.
Bunun yerine Amazon SES, Brevo, Mailgun, Postmark gibi bir servis kullanmak daha mantıklı. Uygulaman SMTP üzerinden bağlanır, maili servis gönderir. “Sınırsız” olmaz ama zaten önemli olan sınırsız göndermek değil, gönderdiğin faturanın müşterinin inbox'ına ulaşması
Bir de SPF, DKIM ve DMARC kayıtlarını mutlaka yap. Özellikle muhasebe/fatura uygulamasında bu tarafı baştan düzgün kurmak ileride çok işine yarar.
Cron tarafında ise VDS'te 15 dakika sınırına takılmazsın. Klasik crontab ile dakikalık işler çalıştırabilirsin.
Burada benim daha çok dikkat etmeni önereceğim şey cron'un kaç dakikada bir çalıştığından ziyade, çalışmadığında bunu nasıl anlayacağın.
Mesela işin 5 dakikada bir çalışıyor ve bir gün bir hata oldu. Cron çalışmaya devam ediyor gibi görünüyor ama içerideki işlem hata veriyor. Sen de iki gün sonra fark ediyorsun.
Bizim başımıza buna benzer bir olay geldi. Geçici bir ağ problemi yüzünden arka plandaki işlerden biri patladı, kuyrukta başarısız kaldı ve yeni iş de eklenmeyince senkronizasyon durmuş. Sistem ayakta, site çalışıyor, kullanıcılar giriş yapıyor ama arkada iş iki gün boyunca yapılmamış. Bunu ancak kontrol edince fark ettik.

O yüzden cron işlerinde mümkünse şöyle bir yapı kur:
İş başarıyla tamamlandığında son çalışma zamanını bir yere yaz. Ayrı bir kontrol de “bu iş X saattir çalışmamış” diye bakıp sana mail/Telegram vs. ile haber versin.
Bence cron işinin 1 dakikada bir çalışmasından çok, çalışmadığında haberinin olması önemli.
Bir de aynı iş üst üste binmesin. Örneğin işin normalde 2 dakikada bitiyor ama bir gün 10 dakika sürdü. Sen 1 dakikalık cron koyduysan aynı işten birkaç tane paralel çalışmaya başlayabilir. Özellikle muhasebe tarafında bu hiç istemeyeceğin bir şey.
Linux'ta flock gibi basit bir yöntemle bunun önüne geçebilirsin. Örneğin:
../../usr/bin/flock -n /tmp/is.lock /usr/bin/php /yol/is.php

İlk iş çalışıyorsa ikinci başlamaz.
Bir de logları kapatma. Cron çıktısını /dev/null'a gönderip geçme. Bir şey bozulduğunda “çalışmıyor” demek yerine neden çalışmadığını görebilmen çok daha önemli.
Muhasebe yazılımı olduğu için bir konu daha var: YEDEK.
Veritabanı yedeğini otomatik al, ama mümkünse bir kere de gerçekten geri yüklemeyi dene. Çünkü “backup alınıyor” ile “backup'tan geri dönebiliyorum” aynı şey değil.
Hatta sadece dosyanın varlığına bakma. Boyutunu ve mümkünse içeriğini de kontrol et.
Bir keresinde bizde de yedekleme çalışıyor görünüyordu, dosya oluşuyordu ama veritabanı tarafında problem olduğu için düzgün veri içermiyordu. Dosya var diye sistem “backup tamam” diyordu. Çökünce fark etmek istemeyeceğin bir durum
Yedeği de aynı VDS'in üzerinde tutma. Sunucu giderse yedeğin de gitmiş olur. En az bir kopyayı farklı bir yerde tut.
Son olarak “sunucudan hiç anlamıyorum” demişsin. Burada biraz dikkat et.
VDS almak aslında bir anlamda “sunucunun sorumluluğunu da ben alıyorum” demek. aaPanel/CyberPanel işleri kolaylaştırır ama güvenlik tarafını tamamen senin yerine çözmez.

En azından şunları yap:
  • Otomatik güvenlik güncellemelerini aç
  • SSH'ta şifreyle girişi kapatıp key kullan
  • fail2ban gibi temel korumaları kur
  • Düzenli backup al
  • Backup'ın gerçekten geri döndüğünü test et
Bunları yaptıktan sonra zaten zamanla diğer detayları öğrenirsin.
Özetle ben olsam senin durumda VDS + panel + harici mail servisi + harici backup şeklinde giderdim. Böylece hem cron konusunda özgür olursun hem de mail işini sunucunun başına bela etmemiş olursun.

Kolay gelsin. Bir yerde takılırsan konuya yaz, bildiğim kadarıyla yardımcı olmaya çalışırım.