dc.contributor.advisor | Ceyhan, Salim | |
dc.contributor.author | Talaş, Uğur | |
dc.date.accessioned | 2020-12-21T14:40:13Z | |
dc.date.available | 2020-12-21T14:40:13Z | |
dc.date.issued | 2019 | en_US |
dc.date.submitted | 2019-04-30 | |
dc.identifier.citation | Talaş, Uğur. (2019). Düşük başarımlı web uygulaması problem analizi ve iyileştirme çalışması: Öğrenci bilgi sistemi ders seçme modülü örneği. (Yayımlanmamış yüksek lisans tezi). Bilecik Şeyh Edebali Üniversitesi, Fen Bilimleri Enstitüsü, Bilecik. | en_US |
dc.identifier.uri | https://hdl.handle.net/11552/1442 | |
dc.description.abstract | Üniversitelerin tamamında, öğrencinin tüm eğitim süreçlerinin takip edildiği
öğrenci bilgi otomasyon sistemleri bulunmaktadır. Ders seçme haftalarında yaşanan
aşırı yoğunluk nedeniyle, birçok üniversitede sunucular gelen talep trafiğine cevap
veremediğinden sistemin durmasına yol açmaktadır. Bu çalışma kapsamında, Bilecik
Şeyh Edebali Üniversitesinin kullanmış olduğu öğrenci bilgi sistemi yazılımı incelenip,
yazılım mimarisinde kullanılan sorgulama teknolojilerinde ve sunucu yapılandırmasında
geliştirmeler yapılarak bu problemin önüne geçilmiştir. Yeni geliştirilen sistemde
ASP.Net mimarisi yerine MVC mimarisi kullanılmıştır. Bu mimariyle birlikte tasarım
kısmında Bootstrap kullanılmıştır. Tasarım farklı boyutlardaki ekranlarda uyumlu
çalışması sağlanmıştır. Eski sistem incelendiğinde birçok hesaplama C#’ta, yani sunucu
tarafında yapılıyorken sunucuya binen yükü istemcilere taşımak amacıyla
hesaplamaların birçoğu JavaScript’te alınmıştır. Bu sayede yapılacak hesaplamaların
her birini sunucu değil öğrencinin kullandığı bilgisayarın yapması sağlanmıştır. Bu
hesaplamaları yapmak için kullanılan verilerin birbirinin sonucuna bağlı olmayan
karmaşık sorguları multi-thread yöntemi ile paralel şekilde sorgulanarak işlemlerin
hızlandırılması sağlanmıştır. Sistemde bir kullanıcının işlem yapması için geçen süre
geliştirmeler sayesinde yaklaşık 10 kattan fazla zaman kazancı elde edilerek, IIS’te
oluşan kuyrukta bekleme süreleri azaltılıp sistemin hataya düşmesi engellemiştir.
Yapılan yazılımsal geliştirmelere ek olarak, uygulama tek bir sunucu üzerinde çalışırken
Load Banlance işlemi yapılarak gelen client yoğunluğu dört sunucuya dağıtılmış ve
sunucuların önüne talepleri karşılayan bir balancer sunucusu konulmuştur. Bu sayede
tekrar benzeri bir problem ile karşılaşılırsa arkada worker olarak çalışan sunucuların
sayısı arttırılıp sistemin ayakta kalması sağlanmıştır. Genel olarak, hata ve uygulanan
çözüm yöntemine bakıldığında sadece öğrenci otomasyonunda ders seçme modülünde
değil yoğunluğa bağlı problem yaşayan tüm otomasyon yazılımları için bu çözümlerin
uygulanabilir olduğu düşünülmektedir. | en_US |
dc.description.abstract | All of the universities have student automation systems in which all of the
student's education processes are monitored. It is known that in the course selection
week at the start of the semester, these systems or underlying structure usually cannot
handle the high traffic and service outages are experienced. In this study, the student
information system used in Bilecik Seyh Edebali University is re-analyzed and service
disruption eliminated by optimizing software architecture, SQL query structure and
server configuration. MVC architecture is used instead of Web Form architecture in the
re-designed system. Design of the front-end is implemented with Bootstrap and pages
are designed to be responsive for different window, screen sizes. While analyzing the
old system it is seen that most calculations are done in C# back-end and these
calculations are moved to client side by using JavaScript. This allowed the calculations
to be performed by the student computers instead of web server. Complex database
queries that are not depended on each other's results for these calculations are queried in
parallel with multi-threading method in order to achieve speed. Typical system delay for
an operation to this eliminated service outage by reducing waiting time in the queue for
IIS. In addition to software improvements, a load balancer application is employed in
order to distribute the client traffic to four servers with a balancer server in front of them
instead of running the software in a single server. Even if high client traffic leads to
problems, this method allows the system to operate without service interruption by
adding additional worker servers in the load-balancing configuration. The solutions
described here for eliminating the service outage for the student automation system can
be applied to all automation systems that suffer from same problem due to high volumes
of traffic. | en_US |
dc.language.iso | tur | en_US |
dc.publisher | Bilecik Şeyh Edebali Üniversitesi, Fen Bilimleri Enstitüsü | en_US |
dc.rights | info:eu-repo/semantics/openAccess | en_US |
dc.subject | MVC | en_US |
dc.subject | Load Balance | en_US |
dc.subject | Multi Thread | en_US |
dc.subject | Yazılım Performansı | en_US |
dc.subject | Otomasyon | en_US |
dc.subject | Software Performance | en_US |
dc.subject | Automation | en_US |
dc.title | Düşük başarımlı web uygulaması problem analizi ve iyileştirme çalışması: Öğrenci bilgi sistemi ders seçme modülü örneği | en_US |
dc.title.alternative | Problem analysis and improvement study of low-performance web application: An example of Student Information System course selection module | en_US |
dc.type | masterThesis | en_US |
dc.department | Enstitüler, Fen Bilimleri Enstitüsü, Bilgisayar Mühendisliği Ana Bilim Dalı | en_US |
dc.authorid | 0000-0002-9287-413X | en_US |
dc.relation.publicationcategory | Tez | en_US |
dc.identifier.yoktezid | 557403 | en_US |
dc.identifier.yoktezid | 10249856 | en_US |