CloudFlare etkisi

GÜNCELLEME: Şu anda beklenmedik erişim hataları oluşması ve çok stabil olmaması sebebiyle CloudFlare kullanmayı bıraktık.

CloudFlare‘i ilk fark ettiğim anda gönderdiğim tweet: “Uzun zamandır beni CloudFlare kadar heyecanlandıran bir servis olmamıştı…”

Sonra bir deneme yaptım, ilk denemede sorunlar yaşadık, çünkü CloudFlare subdomain’leri otomatik olarak görmemiş, ben de bu aşamada eklemeyi unutmuştum. Subdomainler ile çalışanlar A record’larını eklemeyi unutmasınlar…

İkinci denemede başarılı sonuca ulaştım. Sitemizdeki resimlerin açılma hızı yarıya indi.

CloudFlare’in bir çok lokasyonda sunucusu mevcut. Statik içeriğinizi (jpg,png,css,html,js) bu sunuculara cache’liyor ve isteği yapan istemciye en yakın sunucusundan statik içeriği istemciye iletiyor.

CloudFlare Aktif Değil…

CloudFlare‘in aktif olmadığı subdomain üzerinden bir jpg dosyası yüklediğimde dosya 627 ms’de yükleniyor.

Yüklenen bu dosyayı F5 ile yenilediğimde dosya 161 ms’de yükleniyor.

CloudFlare Aktif…

CloudFlare‘in aktif olduğu subdomain üzerinden bir jpg dosyası yüklediğimde dosya 474ms’de yükleniyor;

Yüklenen bu dosyayı F5 ile yenilediğimde dosya 63 ms’de yükleniyor.

 

Hız farkının sebepleri

CloudFlareaktif olmadığında direkt İngiltere’de bulunan kendi sunucumuza istek yapıyoruz.

CloudFlare aktif iken en yakın CloudFlare sunucusuna istek yapıyoruz. Türkiye’ye en yakın CloudFlare sunucusu Hollanda ve Almanya’da bulunuyor. İngiltere’den daha yakın olduğu için daha hızlı cevap dönüyor.

Eğer isteği yapan kişi Çin’de ise, CloudFlare’in Hong-Kong’daki sunucusu cevap verecek.

Farkın bir diğer sebebi bizim sunucuda Apache Keep-Alive özelliği aktif değil, istemci her seferinde dns lookup yapıyor.

Sonuç

Eğer sunucunuz yurtdışında ise CloudFlare‘i kullanmanızı öneririm.

CloudFlare’i kullandığımız site; Nefis Yemek Tarifleri bekleriz :)

11.08.2011 tarihinde bu yazınının devamı yayınlandı.

Git, Her “Push” Sonrası Otomatik Olarak E-posta Atsın

Güzel bir başlık olmadı. Git’te kod değişikliklerini depoya göndermek için “git push” komutunu kullanırız. Bu yazıda, her “git push” komutundan sonra belli bir e-posta adresine otomatik olarak bu “push” ile ilgili bilgi gitmesini nasıl sağlayacağınızı yazacağım.

SVN kullananlar için ise konuyu şöyle açıklayabilirim; svn’de her commit’ten sonra belli bir e-posta adresine commit hakkında bilgi gönderilebiliyor. Bu yazıda anlatacağım şey bunun git’te nasıl yapılacağı.

Git repository’lerinde hooks klasörü bulunuyor. Bu işlemi de bir hook dosyası sayesinde yapabiliyoruz. Bu hook dosyasını buradan indirebilirsiniz. İndirdikten sonra bu dosyayı git deponuzudaki hooks klasörü altına taşıyın. Dosya ismini post-receive olarak isimlendirin ve dosyayı çalıştırılabilir bir dosya haline getirin.

Ardından git deponuzdaki config dosyasını düzenleyin. Şuna benzer bir hale gelsin;

[core]
repositoryformatversion = 0
filemode = true
bare = true
[hooks]
mailinglist = “<commitler-bu-eposta>@<adresine-gelecek>.com”
senderemail = “git@<projeniz>.com”
emailprefix = “[<projeniz>-git] “

Bu ayarı da yaptıktan sonra her “git push” sonrası post-receive hook’u otomatik olarak mailinglist’in karşısında bulunan e-posta adresine bir e-posta gönderecek.

E-postalarda proje adınız “UNNAMED PROJECT” olarak görünüyorsa git deponuzdaki description dosyasının içine proje adınızı yazın.

Daha detaylı ingilizce bir yazı; //pkill.info/blog/post/setting-up-git-commit-email-notification.html

PayPal’da Üyelik Gerektirmeden Kredi Kartı Ödemesi Alma Devri Başladı

Bugün açıklanan Adaptive Payments API sayesinde artık PayPal üyeliği olmayanlardan da kredi kartı ile ödeme alabileceksiniz. Daha detaylı bilgi almak için PayPal X Developer Network‘te duyurusu yapılan 13 Temmuz’da yapılacak olan webinara kayıt olabilirsiniz. PayPal X Developer Network’e kayıt olmadıysanız, kayıt olmanızı öneririm.

Bu gelişme özellikle internetten satış yapan/yapmayı düşünen kişiler için güzel bir haber. PayPal API’leri ile kolayca kredi kartı ödemesi alabilmek mümkün olacak. Geliştiriciler için de PayPal API’lerini kullanmak hiç zor değil. Daha önce kullandım, oradan biliyorum.

PayPal’dan gelen e-postayı da paylaşmış olayım;

Hello Huseyin Berberoglu,

The #1 request we’ve heard from you is to change Adaptive Payments to accept credit cards without a PayPal account. Done. We’ve launched Guest Payments to create a better payment experience for customers.

If you’ve already integrated Chained or Split Payments into your app, Guest Payments will launch automatically.

If you haven’t yet built a solution with our Adaptive Payments APIs, it’s easy to get started now

Thanks for developing with PayPal X. Keep the feedback coming.

WP Hide Pages Yayınlandı

WordPress’te wp_list_pages() fonksyionu tüm sayfaları listeler. Eğer listelemek istemediğiniz sayfa var ise o sayfanın idsini exclude parametresi ile fonksiyona göndermeliydiniz ta ki bu eklenti yazılana kadar.

WP Hide Pages eklentisi ile sayfa gizleme işini basit yönetim arayüzü sayesinde kolayca yapabileceksiniz.

Eklentinin son versiyonunu buradan indirebilirsiniz.

Yazdığım diğer WordPress eklentilerini buradan görebilirsiniz.

BP Posts on Profile yayınlandı !

Merhaba !

BuddyPress için BP Posts on Profile adında yeni bir eklenti yazdım. Bu eklenti bir üyenin gönderdiği yazıların üyenin profil sayfasında görüntülenmesini sağlıyor. Eklenti ile ilgili daha detaylı bilgi için sizi eklenti sayfasına alalım.

İlk WordPress eklentim olan WP Favorite Posts‘u duymuştunuz herhalde? Tekrar hatırlatmama gerek yok sanırım.

WordPress için 1 eklenti daha yolda…

WordPress.org Profilim

WordPress ile geliştirme yapanların uğrak yeri olan Wordperss.org‘a yeni bir modül eklenmiş; WP Profiles. Bu profil sayları sayesinde bir kullanıcının sitede yaptığı tüm aktivite rahatlıkla takip edilebilir hale geldi. Özellikle eklenti geliştiricilerini kolaylıkla takip etmeyi sağlıyor bu sistem.

Bu modül oluşturulurken BuddyPress kullanılmış. Henüz sadece profil özelliği kullanılıyor ancak ilerleyen aşamalarda arkadaş olarak ekleme ve gruplar oluşturma da kullanılırsa güzel olur diye düşünüyorum.

Ben de bir WP Profili oluşturdum, beklerim; //profiles.wordpress.org/hberberoglu/

Ek bilgi; 3.0 sürümü ile birlikte WordPress ile WordPress Mu birleşecekmiş.