CENG 433

İnternet için Ölçeklenebilir Yazılım Geliştirme

Mimari tasarım ve sunucu bileşenleri, performs ölçümleme, gelişmiş önbellek stratejileri, MySQL ile yatay ölçeklenebilirlik ve yoğun yük kaldırma.

Dersin Amacı

Bu dersin amacı Internet projeleri için gereken üst düzey yazılım geliştirme, mimari tasarım ve metodolojilerine giriş yapmaktır. Dönem sonunda, öğrencilerin binlerce eşzamanlı kullanıcıyı kaldıracak sistemleri dizayn ve geliştirmek için gerekli bilgi düzeyinin temel taşlarını almış olması hedeflenmektedir.

Kaynakça

http://www.infoq.com/ ,http://aws.amazon.com/ ,http://www.slideshare.net/Blaine/scaling-twitter ,Cal Henderson, Building Scalable Web Sites: Building, Scaling, and Optimizing the Next Generation of Web Applications, O Reilly Media, 2006 ,John Allspaw, The Art of Capacity Planning: Scaling Web Resources, O Reilly Media, 2008 ,Theo Schlossnagle, Scalable Internet Architectures, Sams, 2006 ,Martin L. Abbott and Michael T. Fisher, The Art of Scalability: Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise, Addison-Wesly, 2009 ,http://highscalability.com/ ,http://www.ahmetalpbalkan.com/blog/put-io-nun-altyapisi-ve-olceklenebilirligi-uzerine-roportaj/

Öğrenme Çıktıları

1. Binlerce kullanıcıyı kaldıracak web sitelerini kurabiliyor olmak

2. Play framework üzerinde bir proje geliştirebilmek

3. Çeşitli önbellek mekanizmalarını uygulayabilmek

4. Aşırı yük durumlarında MySQL ile yatay ölçeklenebilirliği sağlayabilme

KONU
Play Altyapısına giriş
Dönem Projesi
Internet mimari dizaynına giris ve ucuz donanım ile dayanıklı yapılar kurma .
Yük ve performans testleri
Önbellek stratejileri
Dağıtık data toplama ve queue sistemleri. Dağıtık DNS yapıları
Sunucu ve tarayıcıda performans loglama
Ölçeklenebilir very tabanları için yazılım geliştirme
MySQLi ölçeklendirme
Hadoop
Öngörülemeyen, en yoğun zamanlardaki veya hata durumlarındaki trafiği kaldırma
Gerçek zamanlı yazılım gönderme stratejileri
Öngörülemeyen, en yoğun zamanlardaki veya hata durumlarındaki trafiği kaldırma
Gerçek zamanlı yazılım gönderme stratejileri

Notlandırma

Vize 15%

Araştırma Sunumu 60%

Final 25%