Yeni bir web sitesi, e-ticaret sitesi veya web uygulaması yayına girdiğinde, bu genellikle yoğun bir sürecin bitiş noktası gibi hissettirir. İşlevler çalışır, tasarım yerli yerindedir ve ilk ziyaretçiler gelmeye başlar. Ancak pratikte teslimat bir bitiş değil, dijital bir sistemin operasyonel aşamasının başlangıcıdır.

Lansmandan sonra neredeyse her işletme sahibi aynı sorularla karşılaşır. Tarayıcılar değiştiğinde ne olur? Veritabanının güvenli kalmasını nasıl sağlarsınız? Ve harici yazılımlarla olan entegrasyonların zamanla bozulmasını nasıl önlersiniz? Çünkü dijital dünya sürekli hareket halindedir. Büyük oyuncular bile ekosistemlerini her ay güncelliyor. Örneğin OpenAI, ChatGPT ortamını küresel reklamlar, yeni hedefleme seçenekleri ve güncellenmiş dönüşüm ölçümleriyle genişletiyor. Kendi platformunuz harici yazılımlarla satın alma, satış veya entegrasyon işlemleri yapıyorsa, bu tür değişikliklere hazırlıklı olmanız gerekir.

Bu yazıda, teslimat sonrası web sitelerinin ve platformların bakımıyla ilgili en sık sorulan soruları yanıtlıyorum. Karmaşık jargon dolu anlatımlar değil, bir KOBİ sahibi veya proje sorumlusu olarak karşılaşacağınız sorulara somut cevaplar.

Her Şey Şu Anda İyi Çalışıyorsa Neden Bakım Gerekli?

İşletme sahiplerinden aldığım en sık sorulardan biri, görünürde hiçbir şey değişmiyorsa iyi inşa edilmiş bir platformun neden bakıma ihtiyaç duyduğudur. Cevap, yazılımın çalıştığı ortamda yatar. Bir web sitesi bir ada üzerinde var olmaz. Tarayıcılar, sunucular, ağ protokolleri ve harici hizmetlerle birlikte çalışır.

Siz tek bir satır kod bile değiştirmeseniz dahi, platformunuzun etrafındaki dünya değişmeye devam eder. Chrome, Safari ve Firefox gibi web tarayıcıları her ay güncellemeler yayınlar. Bu güncellemeler yalnızca yeni özellikler eklemekle kalmaz, bazen güvenlik kurallarını, çerezleri veya betikleri işleme biçimlerini de değiştirir. İki yıl önce kusursuz çalışan bir kod, bugün değişen tarayıcı standartları nedeniyle uyarılar üretebilir veya yavaşlayabilir.

Ayrıca modern bir uygulama, bağımlılık (dependency) olarak da adlandırılan bir dizi yapı taşı üzerinde çalışır. Ekran görüntüleme, form işleme veya kimlik doğrulama için kullanılan kütüphaneleri düşünün. Bu kütüphanelerden birinin geliştiricisi bir güvenlik açığı keşfedip kapattığında, bu güncellemenin sizin uygulamanıza da uygulanması gerekir. Bu yapılmazsa, bilinen bir açık kötü niyetli kişilere karşı açık kalır.

Son olarak, harici sistemler entegrasyonlarını düzenli olarak değiştirir. API'lerini güncelleyen ödeme sağlayıcılarını, muhasebe yazılımlarını veya pazarlama araçlarını düşünün. Bu değişiklikleri takip etmezseniz, veri alışverişi basitçe çalışmayı durdurur. Bu nedenle teknik takip ve bakım için kodunuzun ve entegrasyonlarınızın durumuna yapılandırılmış bir şekilde bakmak gereklidir.

Güncellemeleri ve Güvenlik Kontrollerini Ne Sıklıkla Yapmalısınız?

İşletme sahipleri genellikle bakımın günlük mü, aylık mı yoksa yıllık bir görev mi olduğunu bilmek ister. Kısa cevap, sıklığın sistem türüne ve seçilen teknolojiye bağlı olduğu, ancak çoğu KOBİ platformu için aylık bir ritmin ideal olduğudur.

Hazır CMS temalarıyla oluşturulan uygulamalar ile özel çözümler arasında büyük bir fark vardır. Onlarca eklentiye sahip geleneksel sistemlerde neredeyse her hafta güvenlik açıkları ortaya çıkar. React, TypeScript, Tailwind CSS ve Supabase gibi temiz kodla oluşturulan özel çalışmalarda ise güvenlik olaylarının sayısı çarpıcı biçimde daha düşüktür. Fark edilmeden bir arka kapı açan gereksiz üçüncü taraf eklentiler yoktur.

Yine de temiz özel kod bile periyodik ilgi gerektirir. Her ay, otomatik denetimler aracılığıyla bağımlılıkları bilinen güvenlik açıklarına karşı kontrol edersiniz. Küçük güncellemeleri hemen uygularsınız. Bir kütüphanenin yeni bir ana sürümüne geçiş gibi büyük framework güncellemelerini ise üç ayda bir veya altı ayda bir olarak planlarsınız.

Yaygın olarak kullanılan bir pakette kritik bir güvenlik açığı keşfedildiğinde, elbette aylık turu beklemezsiniz. Bu durum anında eylem gerektirir. İyi bir bakım yaklaşımı, rutin bakım ile acil durum yamalarını birbirinden ayırt eder.

Teknik Bakım ile Yeni Özellikler Arasındaki Fark Nedir?

KOBİ'ler için yaygın bir karışıklık kaynağı, mevcut olanı korumakla yeni bir şey inşa etmek arasındaki sınırdır. Bu iki konuyu hem planlama hem de bütçe açısından kesin bir şekilde ayrı tutmak önemlidir.

Teknik bakım, mevcut işlevselliğin ilk günkü gibi çalışmaya devam etmesi anlamına gelir. Bu şunları kapsar:

  • Kütüphaneleri ve güvenlik yamalarını güncellemek.
  • Veritabanı hızını kontrol etmek ve optimize etmek.
  • Harici değişikliklerden kaynaklanan hataları gidermek.
  • Sayfa hızını ve çalışma süresini (uptime) izlemek.

Yeni özellikler veya genişletmeler buna dahil değildir. Yeni bir ödeme yöntemi eklemek, bir kontrol panelini yeniden tasarlamak veya müşteriler için ek bir modül oluşturmak gibi şeyleri düşünün. Bunlar ileri geliştirmelerdir. Bu iki akışı birbirinden ayrı tutarak, operasyonel kalmak için neyin gerekli olduğu ile ticari olarak büyümek için neyin gerekli olduğu konusunda net bir görüş korursunuz.

Not: kapsamlı danışmanlık veya satış süreçleri için iş geliştirme kapasitem, NDA kapsamındaki tam zamanlı bir görev nedeniyle şu anda dolu durumda. Ancak web sitelerinin, web uygulamalarının ve özel sistemlerin inşa edilmesi, teslim edilmesi ve teknik olarak sağlıklı tutulması için planlamada hâlâ yer var.

Bir Web Sitesinin Zamanla Yavaşlamasını Nasıl Önlersiniz?

Yeni bir web sitesi, lansmanda genellikle sayfa hızı açısından mükemmel bir puan alır. Ancak bir yıl sonra pek çok işletme sahibi bu puanın düştüğünü görür. O halde soru, bu hızı uzun vadede nasıl koruyacağınızdır.

Hız kaybının başlıca nedeni kodun kendisi değil, içerik ve harici betiklerin birikmesidir. Çalışanlar istemeden sıkıştırılmamış büyük görseller yükler. Ya da pazarlama ekibi çeşitli izleme pikselleri, analiz betikleri ve sohbet widget'ları ekler. Her harici betik, ziyaretçinin tarayıcısındaki işlemi yavaşlatır.

Uzun vadede hızı garanti altına almak için üç önlem esastır:

  1. Otomatik görsel optimizasyonu. Geliştirme aşamasında otomatik sıkıştırma ve modern dosya formatları sağlayarak, büyük fotoğrafların ağı yormasını önlersiniz.
  2. Periyodik betik denetimleri. Yılda iki kez hangi izleme kodlarının hâlâ gerçekten kullanıldığını gözden geçirin. Uzun süre önce bitmiş kampanyalara ait eski pikselleri kaldırın.
  3. Veritabanı indeksleme. Çok sayıda işlem yapan platformlar ve web uygulamalarında veritabanı istikrarlı biçimde büyür. Supabase ve PostgreSQL, sorguları izlemek için mükemmel araçlar sunar. Tablolar büyüdükçe indeksleri ayarlayarak, platformun yanıt süresi yüz binlerce kayıtla bile birkaç milisaniyenin altında kalır.

Güvenlik ve Yedekleme Sistemi Pratikte Nasıl Çalışır?

Güvenlik, tek seferlik bir ayar değil, sürekli devam eden bir süreçtir. İşletme sahipleri, verileri kayba veya hırsızlığa karşı korumak için perde arkasında neler olduğunu haklı olarak merak eder.

Özel platformlarda güvenlik üç temel üzerine kurulur: kimlik doğrulama, veri izolasyonu ve yedekleme. Veritabanı ve depolama için Supabase kullandığımızda, Row Level Security (Satır Düzeyi Güvenlik) ile çalışılır. Bu, hangi kullanıcının hangi verileri görüntüleyebileceğinin veritabanı düzeyinde belirlendiği anlamına gelir. Kötü niyetli biri ön yüzde bir açık bulsa bile, veritabanı o kullanıcının hakkı olmayan hiçbir veriyi asla açığa çıkaramaz.

Yedekleme konusunda, tüm veritabanının günlük otomatik bir kopyası mutlak alt sınırdır. Kritik uygulamalarda Point-in-Time Recovery (Belirli Bir Ana Geri Dönüş) kullanılır. Bu sayede sistemi, olası bir hata veya veri kaybının yaşandığı anın hemen öncesindeki tam ana geri yükleyebilirsiniz.

Yedekleri test etmek, onları almak kadar önemlidir. Bir yedek, yalnızca geri yükleme prosedürünün çalıştığı kanıtlanmışsa değer taşır. Bu nedenle periyodik bakımın bir parçası da, izole bir test ortamında bir kurtarma tatbikatını test etmektir.

Harici Tedarikçilerdeki Değişikliklerle Nasıl Başa Çıkarsınız?

Modern web uygulamaları, harici yazılımlarla yoğun biçimde entegre çalışır. Ödemeler için Stripe veya Mollie'yi, e-postalar için SendGrid'i ya da CRM ve muhasebe için kurumsal yazılımları düşünün. Sık sorulan bir soru, böyle harici bir tedarikçi bir şeyi değiştirdiğinde ne olacağıdır.

Harici bir taraf bir API sürümünü kullanımdan kaldırdığında, genellikle birkaç ay önceden bir bildirim yapar. Aktif bir bakım yaklaşımı bu bildirimleri yakalar ve eski sürüm kalıcı olarak durdurulmadan önce entegrasyonu uyarlar. Bu yapılmazsa, iş sürecinde ani bir kesinti yaşanır; örneğin ödemelerin artık geçmemesi gibi.

Ayrıca harici platformların koşulları ve işlevleri sürekli değişir. Reklam platformları veya yapay zeka araçları gibi hizmetler ölçüm ve entegrasyon seçeneklerini ayarladığında, tüm verileri doğru şekilde almaya ve işlemeye devam etmek için koddaki entegrasyonun güncellenmesi gerekir.

Beklenmedik API hatalarını doğrudan geliştiriciye ileten araçlar gibi otomatik hata izleme, sorunların son kullanıcı bunlardan rahatsız olmadan önce fark edilmesini sağlar.

Sonuç

Bir web sitesini veya platformu bakımda tutmak, karmaşık süreçler gerektirmez, ancak net bir yapı gerektirir. Teknik bakımı yeni özelliklerden ayırarak, güncellemeler için aylık bir ritim koruyarak ve entegrasyonlar için aktif izleme kurarak, dijital altyapınız güvenilir, güvenli ve hızlı kalır. Böylece yatırımınız, beklenmedik sürprizlerle karşılaşmadan uzun vadede kârlı kalır.

Mevcut web sitenizin bakımıyla ilgili sorularınız mı var, yoksa yeni bir platform hakkında fikir mi alışverişi yapmak istiyorsunuz? ferhat.io/contact üzerinden her zaman ücretsiz otuz dakikalık bir görüşme planlayabilirsiniz. Herhangi bir yükümlülük söz konusu değildir; sadece nerede olduğunuza ve durumunuz için neyin mantıklı olduğuna birlikte bakarız.