Webmail

by

Mobil cihazlar üzerinden e-posta okumanın yaygın olmadığı zamanlarda, özellikle seyahat eden insanlar daha rahat e-posta okuyabilsin diye webmail hizmeti vermek istedik. Webmail derken web tarayıcı programı üzerinden herhangi bir ayar yapmak zorunda kalmadan e-postalara erişimi kastediyorum.

Biraz araştırma yaptıktan sonra Squirrelmail programını kullanmaya karar verdik. Webmail beklemediğimiz bir ilgi gördü. Bazı kişiler bilgisayarlarına bir mail programı kurmak yerine webmail kullanmayı tercih ettiler.

Squirrelmail’in geliştirilme süreçleri yavaşlayınca yeni bir arayüzle ortaya çıkan Roundcube’ü de sunmaya başladık. Roundcube, kullanım şekli olarak masaüstü uygulamalara daha çok benziyordu. Geçiş yapmak isteyenlerin işini kolaylaştırmak için adres defterini ve spam filtrelerini aktaran bir Roundcube eklentisi (plugin) de kurmuştuk. Bir süre sonra Squirrelmail’i tamamen kaldırdık. Yıllar sonra bazı kişilerden Squirrelmail’i çok sevdiklerine dair cümleler duyunca hayret etmiştim.

Bir gün asansörde gördüğüm bir öğrencinin webmail kullanma şekli beni çok şaşırtmıştı. Sadece bir kere ayarlarını yapıp kullanabileceği telefon e-posta uygulaması yerine webmail kullanıyordu. O zaman daha Roundcube’ün Elastic skin isimli mobil cihazlara uyumlu görünümü çıkmamıştı. Bu yüzden telefondan kullanıma pek de uygun olmayan bir uygulamayı tercih etmesine şaşırmıştım. Hatta neden webmail tercih ettiğini sorduğumda, telefon uygulamasının ayarlarını yapmanın zoruna gittiğini söylemişti.

Roundcube üzerindeki en önemli yenilik mobil cihaz desteği ile birlikte geldi. Larry skin olarak bilinen görünüme ilave olarak Elastic skin’i sunmaya başladılar. Böylece telefon ve tablet gibi cihazlardan e-posta işlemleri yapmak daha kolay hale geldi. Fakat bazı kişiler alıştıkları Larry skin’i kullanmaya devam ettiler. Bu, Roundcube’un Larry skin’i geliştirmeyi bırakmasına kadar devam etti. Şu anda sadece Elastic skin var.

Roundcube üzerinde bazı işlemler eklentiler ile yapılıyor. Roundcube kaynak kodu ile beraber dağıtılan eklentiler haricinde gönüllülerin geliştirdiği eklentiler de var. Ben bunları mümkün oldukça kullanmıyorum, çünkü özellikle harici olarak geliştirilenlerin çoğu kısa süreli bir hevesle yazılıyor ve devamı getirilmiyor. Mesela Roundcube versiyonu yenilendiğinde eklentide uyumsuzluk çıkabiliyor. Kimse ilginlenmediğinde o eklentiyi kaldırmak zorunda kalıyorum. Var olan bir özelliği iptal etmek ise hiç hoşuma gitmiyor. Ayrıca normal şartlarda Roundcube versiyonunu yenilemek kolay bir işlem, fakat her bir eklenti bu işlemi uzatıyor ve zorlaştırıyor.

Özellikle gençler, telefon, tablet ve bilgisayar arayüzlerinde koyu renkleri daha çok tercih ediyor. Roundcube’ün koyu kip seçeneği sunmaya başlaması bu açıdan da çok iyi oldu.

Roundcube kullanırken yükü kaldırabilmesi için birden fazla web sunucu kullanıyorum. Kullanıcı ayarları ve adres defteri gibi bilgiler için MariaDB’yi tercih ediyorum. Birden fazla web sunucunun, oturum bilgilerine hızlı bir şekilde ulaşması için memcache’i kullanıyorum. Sunucular arasındaki yük dağılımını ise HAProxy yapıyor. Yük dağılımı roundrobin yöntemi ile yapıldığı için bütün sunucuların aynı oturum bilgisine ulaşabilmesi ve e-posta gönderimi sırasında geçici olarak diske yazılan ekli dosyaların ortak bir disk alanında tutulması gerekiyor. Ortak disk alanı olarak NFS’i tercih ediyorum. Bu tasarımda, çalışan tek bir web sunucu kalsa bile hizmete devam edebiliyor. HAProxy ve MariaDB farklı sunucularda çalışıyor. Bu sunucularda sorun olursa en geç bir dakika içinde HAProxy ayrı bir sunucudan otomatik olarak çalışmaya başlıyor. Gerekirse yedek sunucudaki MariaDB manuel olarak devreye alınıyor.