Lütfen, "Sık Sorulan Sorular" sayfasını dikkatli bir biçimde okuyun.


27 Ocak - 3 Şubat
2018
Karabük Üniversitesi

       

Ana Sayfa

Kurs Listesi

Güncellemeler için takip edin.

Python ile Mikroservis Mimarisinde Uygulama Geliştirme

 
Kursun temel içeriği, mikroservis mimarileri ve Python yazılım dilini kullanarak bu mimaride nasıl uygulama geliştirilebileceğidir. Ayrıca Mikroervis mimarilerinde kullanılan Özgür Yazılımlar ve bunların nasıl kullanılacağı konusunda bilgiler verilecektir.
 
Kurs Sorumlusu/Sorumluları: Ali Rıza Keleş, Anıl Can Aydın
Eğitmen/Eğitmenler: Ali Rıza Keleş, Anıl Can Aydın
 
Katılımcılar için ön-şartlar:

* Temel GNU/Linux bilgisi
* Temel Python bilgisi
* Temel veri yapıları bilgisi
* Katılımcıların bilgisayarlarında Python 3.6 versiyonun kurulu olması
* Katılımcıların bilgisayarlarında Docker servisinin kurulu olması
* Katılımcıların biglisayarlarında Redis ve Rabbitmq docker servislerinin çalışır olması gerekmektedir.

Katılımcıların kursa getirilmesi gereken donanım/yazılım:

Kişisel bilgisayar.

Kurs İçeriği:

Aşağıda adı geçen konular ile paralel bir uygulama geliştirilecektir. Konularla birlikte adım adım ilerlenecek ve kursun sonunda çalışan bir uygulamaya sahip olunacaktır.

* Mikroservis nedir?
* Neden mikroservis mimarisi?
** Avantajları
** Dezavantajları
* Mikroservis mimarisi ve REST?
* Servislerin planlanması
* Servisler arası iletişim nasıl sağlanır?
** rpc
** http
** websockets
* Deployment çözümleri
*Örnek uygulama tekil servisler ve elle yapılandırılmış deployment parametreleri ile gerçekleşecek, daha karmaşık, yüksek bulunurluklu, ölçeklenebilir senaryolar hakkında bilgi verilecek ve sorular yanıtlanacaktır.
** Konteynerlaştırmak (containerization) ne faydalar sağlar?
** Service discovery. Servislerin keşfedilmesi ve ilgili yerlere bildirilmesi / kaydedilmesi
** Servislerin izlenmesi (health check)

Değinilecek Konular:
1) Python
* Python ile asenkron / eş zamanlı yazılım pratikleri
* threading, multiprocessing
* queues
* event loops
* python ile rest framework
* python ile JWT

2) Redis
* KV veritabanları ve Redis
* Veri yapıları
* Mikroservislerle kullanmak için Redis üzerinde
* iş kuyrukları
* pub / sub
* geçici veri depolama stratejileri

3) RabbitMQ
* Protokol AMQP
* Temel kavramlar
** Exchange
** Queues
* RabbitMQ client Pika
** Blocking / Non-blocking bağlantı türleri

4) Docker
* Temel kavramlar ve temel komutlar
* Docker compose ile servislerin birlikte çalıştırılması