Coding and testing are often considered separate areas of expertise. In this comprehensive guide, author and Java expert Scott Oaks takes the approach that anyone who works with Java should be equally adept at understanding how code behaves in the JVM, as well as the tunings likely to help its performance. You’ll gain in-depth knowledge of Java application performance, using the Java Virtual Machine (JVM) and the Java platform, including the language and API. Developers and performance engineers alike will learn a variety of features, tools, and processes for improving the way Java 7 and 8 applications perform.
Bol bol lablara katıldığım bu yüzden de derslerden geri kaldığım doğrudur. Çok oyuncak var, benim suçum değil. İnsan heves ediyor.
Önceki kitaplarda bahsettiğim bu kadar bilgi benim minik, miniminnacık hafızamda nasıl kalacak? Sorularım ve bunlara çözüm olarak nasıl haritalama, indekslemeler yaptığımdan bahsetmiştim. Burada sürece notebooklm’i de sisteme dahil ettim. Hiçbir dediğim işinize yaramadıysa bu kesin yarayacaktır. Şöyle ki: önce bölüme başlamadan diyorum ki işte şöyle bölüm okuyacağım bana bir prompt ver de podcast çıkarayım, çıkarıyorum podcast’i. Onu dinliyorum okumadan. Bölüm boyunca daha önce paylaştığım standartlarda da notlar çıkarmaya devam ediyorum. Bitince de bu sefer onları paylaşıyorum. Onun üzerinden bu sefer benim önemsediğim altını çizdiğim noktalarla ilgili podcast alıyorum. Böylece yürüyüş & koşu sırasında tekrar dinleme şansım oluyor. Haa konular ağır, bazen koşarken “Tamam birader biraz sus valla şiştim” dediğim oluyor mu oluyor. O kadar da olur. :)
Evet, kitap ağır. Şöyle ki java 8, 11 and beyond. Beyond kısmı önemli. Onu daha da genişletmekte fayda var. Öyle olunca bir kitabı değil bir dilin 20 yıllık tüm evrimini ele alıyorsunuz. Bu da hazmı kolay olmayan uzun ve yorucu bir yolculuk oluyor. Özellikle vaktiyle problem olan konuların bugün çözümü var mı diye tekrar bakmakta yarar var. Cloud özelinde k8s karşılaşılan memory, cpu yönetimine dair optimizasyonlar var mesela vaktiyle uygulanan, şu an daha akıllı jvm’ler var ve bunları kendi yönetebiliyor gibi gibi…
İş özellikle cpu, memo ve bunların mimarisine bolca çıkıyor bir yerden sonra. Bu da bir başka artısı kitabın. O kısımlarını ben gemini ile baktım. "Database Internals" tarafında da yine chatgpt ile bakmıştım. Şimdi gemini de epey kendini geliştirmeye başladı. Claude ise ben kitabı bitirene kadar hepsini geçti. :) Sonraki kitapta artık onunla devam edeceğim.
Son kısımlarda Database Internals ile de bu kitabı çarpıştırma şansım oldu. Network, Hardware, DB Internals eşliğinde büyük aydınlanmalar. 🥰🥰 Kitapta yok ama bu bölümleri virtual threads ile tekrar ele almak ve üzerine düşünmek önemli. Musluğu bir yerden sıkmak lazım. Yoksa iner o db. :( Proxy işleri de, db connection pool'da daha önemli oluyor bu yeni durumda.
Lab, lab dedik. Cpu, hardware dedik. Anlam ve önemine dair "False sharing" neymiş bir bakın derim. Şimdi "systems performance" kitabını okumak da farz oldu tabii. :) Evet, okudukça cehalet haritası genişliyor. Yapacak bir şey yok. Her kitap yenileriyle geliyor. Harita gittikçe büyüyor. Müthiş bir keyif. :)
Normalde ben metodoloji severim, pattern severim, best practice severim. Ama en azından bir dilin mimarisini iyi bilmek de gerek. Ama ama işte eskiyor meret. Java 25 için de Scott Oaks hocam tekrar bir el atsan ya? Third edişın!
Me encanta este libro muy muy muy bien. // Pedro’ya da selam olsun. Beğenerek izliyoruz. Ne alaka ise burayla. :)