• Yapay zekadan makale özeti

    • Bu video, Bilkent Üniversitesi Bilgisayar Mühendisliği mezunu ve Arçelik'te çalışan İbrahim adlı bir yazılım uzmanının sunduğu teknik bir eğitim içeriğidir.
    • Video, microservis mimarisi, platform servis mimarisi ve bulut kavramlarını ele almaktadır. İçerik üç ana bölümden oluşmaktadır: İlk bölümde microservis mimarisinin tanımı, avantajları ve zorlukları anlatılmakta, ikinci bölümde Spring Boot framework'ünün özellikleri ve kullanımı gösterilmekte, son bölümde ise Spring Cloud ve Cloud Foundry teknolojilerinin nasıl kullanılacağı adım adım açıklanmaktadır.
    • Eğitim, teorik bilgilerin yanı sıra pratik demo'lar ve Cloud Foundry'ye uygulama yükleme süreci gibi uygulamalı içerikler de içermektedir. Ayrıca, izleyicilerin Cloud Foundry ve Digital Ocean gibi platformlar arasındaki farkları anlamalarına yardımcı olacak soru-cevap bölümü de bulunmaktadır.
    Giriş ve Konuşmacının Kariyeri
    • Konuşmacı İbrahim, microservice, bulut konseptleri ve servis mimarisini anlatacak ve sonunda bir proje üzerinde deploy yapacak.
    • İbrahim, Bilkent Üniversitesi'nden 2013 yılında bilgisayar mühendisliği mezunu olup, kariyerine Vakıfbank'ta PHP ile veritabanı uygulamaları geliştirerek başlamıştır.
    • Mezun olduktan sonra Gate Elektrmiye P2 yazılım firmasında enterprise Java ile çalışmış, daha sonra Spring MX ile mobil Android ve iOS için back-end geliştirmiştir.
    02:27Arçelik'te Çalışma Deneyimi
    • Şu an Arçelik'te nesnelerin interneti için backend takımından iflamentasyon yapıyor ve Amazon üzerinde çalışıyor.
    • Arçelik, 30 bin çalışanı, 7 ülkede 18 farklı üretim tesisi olan büyük bir grup olup, Türkiye'de patent şampiyonu konumundadır.
    • Arçelik'te dijital trendleri yakalamak adına yazılımın dünyayı değiştirdiğini anlamış durumda ve sadece çamaşır makinesi üreten bir firma olmak yerine teknolojiye yön veren bir firma olma hedefi taşımaktadır.
    04:22Cloud Konseptleri ve Devops Kültürü
    • Kurumlar iletişim yapıları nasılsa o tarz ürünler üretir ve günümüzde devops kültürü popülerdir.
    • Başarılı bir firma olmak isteyenler yazılımlarını bulut ortamına hızlı bir şekilde atabilmek için çeşitli practisler geliştirmelidir.
    • Devops kültürü, operasyon takımıyla developer takımının bir arada etkin bir şekilde iletişim kurarak çalışmasını sağlayan kültürel bir değişimdir.
    05:02Cloud Application Deployment Modelleri
    • Cloud application deployment modellerinden biri infsrucci de service'dir, bu modelde geliştiriciler sadece business kodunu yazmak isteyip, uygulamanın nasıl ve nerede çalışacağından sorumlu olmak istemezler.
    • Bu model, geliştiricilerin hızlı prototip geliştirebilmesi, deploymen süresinin kısalması ve birden fazla program runtime'ında çalışabilmesi gibi avantajlar sunar.
    • Polyblood programming (birden fazla programlama dilinde uygulama geliştirme) ve slash effect (ekşi sözlük efekti) gibi kavramlar da bu modelde önemlidir.
    10:12Platform Servis Modelleri
    • Google App Engine, bir runtime sunarak uygulamaları geliştirmelerine olanak sağlar ancak API'lar portable değildir.
    • Heroku gibi firmalar, Ruby runtime gibi ufak runtime'lar sunarak production yeteneğini artırmıştır.
    • Open source çağı ile birlikte Kubernetes gibi framework'ler çıkmış, bu framework'ler servislerin birbirini bulması için gerekli olan araçları sağlar.
    11:42Microservice Kavramı
    • Microservice'in formal bir tanımı yoktur, monolitik tek bir uygulamadan kurguyu parçalara bölüp ayrı ayrı mutlu etmeye dayanan bir modeldir.
    • Gardner'ın hype side modelinde teknoloji önce ilgi görür, sonra tavan yapar, sonra acı çeker ve sonunda plato productivity denilen bir noktaya ulaşır.
    • Microservice hala hedefleme aşamasında olup, insanlar yeni şeyler denemektedir.
    12:21Monomit ve Mikro Servisler
    • Monomit uygulamasında tek bir uygulama tek bir container'ın içine atılır ve sunucu çökerse tüm uygulama çöker.
    • Mikro servisler, search servisleri, product servisleri gibi modülleri ayrı entity'ler olarak oluşturarak tek bir veritabanına bağımlılığı azaltır.
    • Mikro servislerin avantajları cloud friendly ve devops yapmaya itmesi, ancak network sorunları, güvenlik ve dağıtım zorlukları gibi zorlukları da vardır.
    14:38Mikro Servislerin Zorlukları
    • Mikro servislerde network zero'dur, yani bir sunucuya istek gönderdiğinizde hemen cevap geleceğini düşünürsünüz ancak arada bir network vardır.
    • Network güvenli değildir, kablo tarafı SF edebilir ve toplayıcı sürekli değişir.
    • Distribütü sistemlerde herkes dağınık çalışır ve network homojendir, yüksek trafik olurken bazı kısımlar astronot olabilir.
    16:06Mikro Servislerde Güvenlik ve Konfigürasyon
    • Mikro servislerde bir sürü kaynaktan gelen loglar tek bir yerde toplanıp sistem analiz edilir.
    • Cading pattern, gemilerin kompartman kompartman yapılması gibi çalışır; bir kompartman su alırsa sadece geminin belli bir kısmı su alır.
    • Netflix'in search API'si patladığında, default boş bir dönem servise sistemi boğmaz, bu da zincir reaksiyon başlatmasını engeller.
    17:28Bulut Ortamında Programlama
    • Bulut ortamında kendi networkünüzün içinde belli başlı veriler gitmeye başlayacak ve bunları güvenli etmeniz gerekiyor.
    • Konfigürasyonu dışarıya aldığınız için şifrelerinizi encript etmeniz gerekiyor.
    • Bulutta bir sunucunuz varsa, o sunucu her an yok olup yerine başkası gelebilir, bu nedenle programlama modelinizi ona göre geliştirmeniz gerekiyor.
    18:44Spring Boot
    • Spring Boot, Spring'in üzerine çalışan, izlemeyle konfigürasyon yapmayan ve annotationlarla çalışan kolay bir framework'dür.
    • Spring Boot'ta artık jar dosyası yok, bir jar dosyası ile sunucu ayağa kalkabiliyor.
    • Spring Boot, Spring Security, Spring Core, Spring NBC, Spring Hood gibi farklı teknolojileri bir araya getiriyor.
    20:55Spring Boot Projesi Oluşturma
    • Spring Boot proje sayfasından projenize isim verip, istediğiniz teknolojileri seçebilirsiniz.
    • REST API, JPA teknolojisi, Actuator gibi farklı teknolojileri projeye ekleyebilirsiniz.
    • Proje oluşturulduktan sonra gerekli kütüphaneler otomatik olarak eklenir ve sunucu çalıştırılabilir.
    24:53Spring Boot ile Rezervasyon Servisi
    • Spring Boot ile rezervasyon servisi oluşturmak için gerekli sınıflar ve repository tanımlanır.
    • Repository tanımlandığında otomatik olarak endpoint oluşturulur ve sunucu çalıştırılabilir.
    • Sunucu çalıştırıldığında rezervasyonlar liste halinde HTTP formatında görüntülenir ve sunucu ile ilgili metrikler (CPU, RAM kullanımı, disk kullanımı) görüntülenebilir.
    28:59Cloud Foundry ve Pom Generator
    • Cloud Foundry, uygulamaları bulut ortamına atmak için kullanılan bir platformdur.
    • Pom Generator, actuator için özel bir başlatma işlemi gerektirmeden, convention over configuration mantığıyla çalışır.
    • Bu generator, actuator'ı eklediğinizde default ayarlarda çalışır ve başka projelere kopyalandığında da aynı şekilde çalışır.
    30:11Spring Cloud Teknolojisi
    • Spring Cloud teknolojisi, microservis uygulamalarında kullanılabilen çeşitli teknolojileri içerir ve bunların en önemli geliştiricisi Netflix'tir.
    • Cloud Foundry üzerinden yazılan kodlar tek bir komutla cloud ortamına atılabilir.
    • Cloud patternler, servislerin birbirini keşfetmesi gerektiği anlamına gelir.
    31:04Cloud Patternler ve Servis Yönetimi
    • Web uygulamalarında dependency injection vardı, ancak cloud ortamında servisler discovery servisi aracılığıyla bulunur.
    • API gateway, ayrı ayrı servisleri dışarıya birleştirmek için kullanılır.
    • Konfigürasyon server'ı, servislerin IP bilgilerini tutar ve server breaker, bir servis çökerse ne yapılacağını belirler.
    33:44Konteyner Yönetimi ve Cloud Foundry Kullanımı
    • Spring Cloud, konteynerları orkestra etmek için Docker ve Kubernetes gibi teknolojileri kullanır.
    • Cloud Foundry, uygulamaları çalıştırmak için manifest.yml dosyası kullanır.
    • Cloud Foundry, ücretsiz versiyonu da olan bir platformdur ve uygulamaları tek bir komutla çalıştırabilir.
    36:48Cloud Foundry Avantajları
    • Cloud Foundry, mobil uygulamalara uygulama sunabilme imkanı sağlar.
    • Bu teknolojiler sayesinde geliştiriciler sadece business kodlarına odaklanabilir.
    • Cloud Foundry, uygulamaları ikiye çıkartma, çöktüğünde alarm oluşturma ve yeni uygulama başlatma gibi özellikler sunar.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor