Elasticsearch gerçek zamanlı olarak çalışabilen bir arama motoru. Index’lediğiniz veri üzerinden çok hızlı bir şekilde arama ve filtreleme yapma imkanı sunuyor. İstenilen arama ve filtreleme sonuçlarına ulaşabilmek için öncelikle verinin doğru bir şekilde Elasticsearch’e tanıtılması gerekiyor. Bunu da index oluştururken belirttiğimiz mapping ayarıyla yapıyoruz. Mapping bize; verinin yapısı, türü, index’lenirken ve aranırken hangi analyzer’ların kullanılacağı gibi bir çok tanım yapma imkanı sunuyor.
Category: Development
Cache Sistemlerinde “Dog-pile Effect” den Korunmak
Standart bir web uygulamasında, cache araçlarını kullanmak basit görünebilir. Bir değerin cache’de var olup olmadğı kontrol edilir, varsa değer alınır, yoksa yeniden üretilip daha sonraki isteklere sunulmak üzere cache’e yazılır. Fakat yüksek trafiğe sahip bir uygulamada, cache süresi bittiğinde aynı anda gelen istekler, cache’lenmiş içeriği eş zamanlı tazelemeye çalışabilirler. Bu da kullandığınız veri kaynağına (veritabanı, web servis vb..) extra yük getirecektir.
Node.js + Redis Pub/Sub Örneği
Örnek uygulamada, iki üye arasındaki mesajlaşma sayfasında, bir üye diğerine mesaj yazarken karşı tarafa “X mesaj yazıyor..” şeklinde anlık durum bilgisi vereceğiz.
Continue reading Node.js + Redis Pub/Sub Örneği
GitHub Web Hook ile Deployment
Git hosting olarak Github kullanılan projelerde, Github’a gönderilen her yeni commit’de bir web adresinin tetiklenmesini sağlayabilirsiniz. Service Hooks menüsü altında yer alan WebHook URLs sayfasından, kaynak kodda değişiklik olduğu zaman, önceden tanımlanmış adres(ler)e POST methoduyla, güncelleme bilgilerini içeren JSON-encoded data ile beraber istek gönderilir. Burada örnek içeriğini bulacağınız payload bilgisine bakarak isteğin Github’dan gelip gelmediğini kontrol edebiliriz.
Continue reading GitHub Web Hook ile Deployment
Amazon EBS üzerinde MySQL Çalıştırmak
Amazon EC2 instance’larında, instance’dan bağımsız olarak çalışan EBS (Elastic Block Store) alanları, MySQL gibi hassas data’lara sahip yazılımların verilerini saklamak için tercih ediliyor. Burada MySQL için EBS alanlarının kullanımının faydaları mevcut.
Continue reading Amazon EBS üzerinde MySQL Çalıştırmak