Master'sOpen Access

Application framework for supporting performance isolation in software as a service systems

2015
0 views
0 downloads
Advisor: Yrd. Doç. Dr. Bedir Tekinerdoğan

Abstract (TR)

Bir bulut yazılımının ölçeklenebilir olması için, herhangi bir müşterisinden herhangi bir zamanda gelen isteklere vereceği cevabı servis sözleşmesinde belirtilen kriterler içerisinde yapabilmesi gerekir. İzole olmamış bir servis yazılımında farklı müşteriler yazılım aracılığıyla sunucuya istek yollayarak, sunucunun donanımsal gücünü meşgul edebilirler. Donanımsal gücün aşırı istek gönderen kullanıcılar tarafından meşgul edilmesi sistem performansının düşmesine sebep olur ve düşen bu performanstan diğer kullanıcılar da olumsuz olarak etkilenirler. Müşterilerden gelebilecek yoğunluklara karşı sistem performansını iyi durumda tutabilmek için genellikle bulut yazılımlarında esneklik kavramı kullanılır. Ancak esneklik kavramı sistemin daha fazla donanımla birleşmesini sağlayarak performansın arttırılması veya daha az donanımın kullanılarak performansın azaltılması olarak kullanılabilir. Gereken donanım miktarını müşteriyle yapılan servis anlaşması belirleyebilir, ancak bu durum yine de performansın yalıtımını sağlayan bir çözüm değildir. Performans yalıtımı yapılmış olan sistemlerde amaç, müşterilerle yapılan servis anlaşmalarındaki minimum gereksinimlerin müşteriye mevcut donanımlarla sağlanabilmesidir. Bir sisteme performans yalıtımı uygulayabilmek için öncelikle bu sistemdeki kullanıcıların adil kullanım ilkelerine uymasını sağlamak gerekir. Bu ilkelere bağlı olarak farklı performans yalıtımı uygulayan yöntemler geliştirilmiştir. Bu yöntemler sanal bekletme, sırası gelene cevaplama, kara listeye alma ve işlem havuzu yöntemleridir. Ancak bu yöntemler hizmet yazılımlarında bulunan müşterilerin zayıf donanıma sahip olduğu varsayımıyla geliştirilmişlerdir. Bu tez Tork Yazılım Geliştirme Platformu'nu tanıtmaktadır. Bu platform ile ölçeklenebilir ve performans yalıtımı sağlayan hizmet yazılımları geliştirebilmek mümkün olmaktadır. Bu platform yeni bir yöntem ile en başından bir bulut tabanlı yazılım geliştirebilmeyi veya mevcutta olan bir yazılımı bulut tabanlı ölçeklenebilir bir yazılma dönüştürebilmeyi sağlar. Platform aynı zamanda veri tabanı, uygulama havuzu ve istemci tarafları için yazılım geliştirme kütüphanesi sağlamaktadır. Bu kütüphane sayesinde düzenlenen yazılımın güvenlik, işlem geçmişi tutma, veri tabanları için çoklu-kiracı altyapısı kullanabilme gibi özellikleri otomatik olarak sağlanabilmektedir. Bu özellikler nesne tabanlı bir mimaride geliştirilmiş ve istemci tarafının da farklı platformlarda da çalışabilecek bir yapıda çalışabilmesi sağlanmıştır. Aynı zamanda platformda bulunan bütünleşmiş yazılım geliştirme ortamı sayesinde yazılımın ayarlamaları ve yazılım mantığında değişecek yerler için kod yazabilmek mümkündür. Dolayısıyla yazılımı geliştirmek için sağlanan çevrimiçi, grafiksel kullanıcı ara yüzü, geliştiricileri başka bir yazılım geliştirme aracına ihtiyaç duymadan yazılımları geliştirebilmelerini sağlar. Bu platform yazılım tasarımını ve performans yalıtımı gerçekleştirebilen; aynı zamanda güçlü donanımsal istemcilerle çalışırken gereken işgücünü bu donanımlara yükleyebilmeye olanak sağlayan bir araçtır. Bu platform anlatmak ve kullanılan yöntemleri de onaylamak amacıyla örnek bir bulut yazılımının test edilmesi olayı ele alınmıştır. Bu yazılımın kullandığı farklı yalıtım teknikleri bu örnek olay üzerinde zayıf ve güçlü istemci senaryolarıyla test edilip değerlendirilmiştir.

Author

Dr. Orhun Alp Oral

How to Cite

Orhun Alp Oral (Yüksek Lisans Tezi). Application framework for supporting performance isolation in software as a service systems, 2015, Bilkent University.

License

Tüm Hakları Saklıdır

This work is shared under the specified license terms.

More theses from Bilkent University