Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Scalability


Soris

Öne çıkan mesajlar

Konuyla ilgili sorularım var:
Nedankonun uzmanlık alanı olduğunu biliyorum ama herkesin yardımını bekliyorum.

Mesela dinamik bir sitem var.
Şimdi mesela bir sanal sunucu aldım diyelim. Mesela atıyorum 100 bin hit i kaldırabiliyor. Fakat site büyüdü 1 tane daha sunucu aldım diyelim. Şimdi ben ne yapacağımda bu 100 bin kişinin girebildiği site 200 bin kişiye ulaşabilir olacak?

Mesela yapı olarak bir ÖSYM nin sorgu sayfasını düşünebiliriz.
Link to comment
Sosyal ağlarda paylaş

cloud baya iyi bi cozum bu konularda, adamlarin bulundugu konuma gore ordaki data centerlara falan yondendiriyor..

bunun yaninda iyi bi cache leme mekanizmasida onemli..

en nihayetinde donanimsal olarak guclenmek sart, ya daha fazla ram, cpu vs eklersin yada yanina yeni makina koyarsin falan filan
Link to comment
Sosyal ağlarda paylaş

Şimdi mesela veritabanı olayını şöyle hallettim diyelim:

Veritabanı tipim nosql diyelim verileri ramde tutuyorum hdd ye yedekliyorum sunucuları aldım ana web serverdaki veritabanına ekledim diyelim nodeları gösterdim işte şu 2. db serverım şu 3. db serverım diye bu veritabanı sistemi kendisi mapreduce ile halledecek mi istediğim veriyi nodelarım üzerinden çekip getirecek mi?
Birde veritabanı işi bitti web olayını da mı böyle yapacaz yani 2. bir sunucu alıp ona web server koyup web serverın config ayarlarında filan mı gösterecez işte bu 2. web serverım bu 3. webserverım gibisinden?
Yoksa yine ayrı makine alıp load balancer server ı kurup direk başka bir makinedeki web servera mı yönlendirecez?
Link to comment
Sosyal ağlarda paylaş

Yok yok onu demiyorum web için nasıl yapacağız bu işi? Yani çünkü siteye girecek adam hem web servera hem veritabanına yük olacak. Veritabanında yükü böldük web için nasıl bölücez? Yine 2. bir makine alıp onada web server yükleyip mi yapacaz? Öyleyse ana serverdan gösterecez mi bak benim 2. webserverımda bu makinedir. Herhangi bir yüklenme durumunda bunu kullan mı deniliyor? Nasıl oluyor ki?
Link to comment
Sosyal ağlarda paylaş

load balancer diye bi hardware war, cogunlukla round robin algoritmasi ile calisir ve gelen requestleri a ve b serverlarina paylastirir.

web serverda load balancer yapmak daha bir kolay db ye gore, cunku crud islemlerini db yapcagi icin bide onun sync isleri falan cok bas agrisi cidden
Link to comment
Sosyal ağlarda paylaş

Hardware'le çözüm ben görmedim açıkçası. Kolay bir çözüm olurdu heralde böyle bir seçenek varsa.

Genel olarak sunucu tarafındaki ayarlara bakar böyle şeyler. Senin web sunucunda buna uygun çözüm vardır heralde. Apache mi kullanıyorsunuz? Apache Load Balancing diye aratırsan çıkar bir şeyler.

"Ayarı yapıp geçecez"den çok bence hizmet aldığın yerle görüş. Onlara sor, yoğunluk sebebiyle biz load balancing yapmak istiyoruz. Bunu nasıl çözebiliriz diye. Adamlar sana "o ne la" derse, doğru yerle çalışmıyorsundur zaten. Ama illaki senden daha büyük müşterileri vardır; sana çözüm yolu söylerler. Standart yönetim panelinde falan bu türlü şeyler olduğunu hiç sanmıyorum, emin de değilim hani. Benim bildiğim, oturup ayar yapılması gerekir bu türlü şeylerde. O ayarlar da farklı farklıdır, tek bir noktadan değildir yani. Yok balancing yapacağın sunucuların IP'leri vs. bunların girilmesi lazım, ıvır zıvır. Dediğim gibi, web sunucusu neyse, onun ayarlarından yapılıyor olmalı. Ne kullanıyorsan, arat google'dan, evde bir denemesini yap. Sonra prod ortamında denersin.
Link to comment
Sosyal ağlarda paylaş

Yok biz nodejs veya meteor ile başlayacağız zaten öyle 2. bir sunucu alma durumu yok şu an için ama ileride olursa en azından yüzeysel bilgi sahibi olalımda çuvallamayalım diye soruyorum.

Bu arada dedicated veya sanal sunucu kullanan varmı veya herhangi bir firmanın cloudundan yararlanan?
Link to comment
Sosyal ağlarda paylaş

Bu aralar EC2'ye falan baktim yeni yakin ama ne yalan soyleyeyim, her sekilde pahaliya geliyor bana gore zira 24/7 calisan sunucularim + gece backup alirken cosan disk ve cpu kullanimim pek iyi yonde etkilemiyor maliyeti.

Bu arada development konusunda oyle kernel specific isler yapmayacaksaniz en ucuz VPS'ler bile isinizi gorebilir. Yok kernel specific olcak ya da daha guclu olmasi lazim derseniz VDS'lere bakabilirsiniz ama boyle video encoding gibi abarti islere girmicekseniz, islemci + ram ihtiyaciniz abarti olmayacaksa en basindan gidip dedicated almak para sacmak ile es anlamda.

Onceki mesajlari okumadim ama scalability olayini da kendi gozumden anlatayim.

Genelde -gelistikce ekleyelim- tarzi planlarin hemen hepsi veritabani ve webserver'i ayni sunucuya tikmakla baslanir. Haliyle kullanim arttiginda ilk yapabileceginiz islerden biri o ikisini ayri sunuculara koymak olabilir. Minimum maliyetli olmasi acisindan efektif bir yoldur.

Bundan sonraki asama load balancing'dir. Peki nedir ? Basitce datayi sunabilecek web server sayisini arttirip, gelen ziyaretciyi bu server'lardan birine yonlendirip yuku server'lar arasinda dagitmaktir.

Isler devasa hale gelene kadar cok basit yontemlerle ve setup'larla halledilebiliyor. Haliyle development asamasinda bununla ilgili ince planlar yapmaniza gerek yok.
Link to comment
Sosyal ağlarda paylaş

bi turk girisimcisinin cok dusunmesi gereken seyler degl bunlar. Bugun apache mysql gibi componentleri ayirarak zaten bayagi bi kullaniciya hizmet verirsin, oldukca kolay.

Is gunluk 3-4 milyon kullanici olunca, deli gibi data uretiyosan vs ciddilesiyor. Bu da forumda yazilamayacak kadar genis bir konu. Isin cok fazla component i var ve hangi software stack i kullandigina, applicationin dogasina vs gibi cok seye bakar.

sitelerin %99 u sadece mysql/apache vs ayirarak yeterince scale eder. O da yetmezse individual serverlari vertically scale ederek daha da kullanici kaldirirsin.

1-) milyonlarca kullanicin olur
2-) high availability istersin, yani herhangi bir sunucu oldugunde veya geri geldiginde data kaybi olusmaz, ve down time olusmaz.

Bu iki gereksiniminde isler ciddilesmeye baslar.
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...