JAMSTACK Mimarisi Nedir? ve Neden Önemlidir?

JAMSTACK Mimarisi Nedir? ve Neden Önemlidir?

Tolgahan Tolu

Tolgahan Tolu

-

Feb 18, 2023

Bu yazımda sizlere web teknolojilerinin gelişimi ile birlikte ortaya çıkan yaklaşımlardan veya mimarilerden birisi olan JAMstack'den bahsedeceğim.

JAMstack Nedir?

JAMstack, Javascript, API ve son olarak Markup kelimelerinin baş harflerinden türetilmiştir. Daha iyi performans, daha iyi geliştirici deneyimi, daha yüksek güvenlik ve daha kolay ölçeklenebilirlik sunmayı amaçlayan bir yaklaşımdır diyebiliriz.

jamstack.org'a göre JAMstack: "web'i daha hızlı, daha güvenli ve daha kolay ölçeklendirmek için tasarlanmış bir mimaridir. Geliştiricilerin sevdiği ve maksimum üretkenlik sağlayan birçok araç ve iş akışı üzerine kuruludur. pre-rendering ve decoupling temel ilkeleri, sitelerin ve uygulamaların her zamankinden daha fazla güven ve dayanıklılıkla sunulmasını sağlar."

JAMstack ile tüm frontend, build işlemi sırasında yüksek düzeyde optimize edilmiş, statik html sayfalar haline getirilir (pre-rendering). Bu sayfalar direkt olarak CDN üzerinden sunulabilir.

Bunu dinamik bir siteye göre avantajıysa, statik web sitelerinde kullanıcıya zaten oluşturulmuş olan html'lerin CDN sayesinde en yakın sunucudan ulaştırılmasıdır.

qvik-com-jamstack.png

image: qvik.com

JAMstack'in Avantajları

- Hız: JAMstack siteleri, veritabanı gibi farklı katmanlarım oluşturduğu ek yükü içermez. Dolayısıyla geleneksek web mimarilerine göre daha hızlı çalışır. Tamamen statik ve cache'lenmiştir.

- Esneklik: Statik dosyalar oldukları için her yerde barındırılabilirler.

- Geliştirici Deneyimi: Frontend Developer'lar, server taraflı işlem yapmadan, server tarafını bilmemelerine rağmen siteler oluşturabilirler. Backend Developer'lar ise API'Lar oluştururlar.

- Yüksek Güvenlik: Veritabanı veya farklı katmanların olmaması, sitelerin SQL Injection gibi saldırılara karşı daha güvenli olmasını sağlar. Sayfalar pre-render edildiğinden, server taraflı injecton riski taşımazlar.

- SEO Avantajı: Daha hızlı yükleme süresine sahip olması daha iyi SEO anlamına gelir.

JAMstack'in Dezavantajları

- Eğer sitenizin çok fazla sayfası varsa build süresi uzun sürecektir.

- Siteniz dinamik özellikler gerektiriyorsa bazı potansiyel sorunlarla karşılaşabilirsiniz. İstekleri işleyecek bir veritabanı olmadan, kendi kodunuz veya API çağrılarınız ile daha fazla işi, yükü kendiniz yapmanız gerekecektir.

Nasıl Oluşturulur?

JAMstack siteler için Statik Site Oluşturucuların Listesi: https://jamstack.org/generators/

Daha detaylı bilgiye resmi web sitesinde erişebilirsiniz.

featured image: pixabay.com - FrankWinkler