Blockchain ortamları, bir blockchain’i çalıştırmak ve yönetmek için kullanılan altyapı ve kurulumdur. Bu ortamlar, blockchain’in çalışmasını desteklemek için kullanılan donanım, yazılım ve ağ kaynaklarının yanı sıra işleyişini yöneten kurallar ve protokolleri içerir. Bir blockchain ortamının belirli özellikleri, amaçlanan kullanım durumuna ve ilgili paydaşların hedeflerine bağlıdır. Blockchain ortamlarının farklı türlerini ve amaçlarını anlamak, blockchain teknolojisi ile çalışan veya onunla ilgilenen herkes için çok önemlidir.
Mainnet Nedir?
Mainnet, bir blok zincirinin üzerinde çalıştığı birincil ağdır. Bu nedenle Türkçe’de ana ağ olarak da kullanımı görülür. Blok zincirinin yerel kripto para birimi veya tokenları kullanılarak gerçek işlemlerin ve etkileşimlerin gerçekleştiği blok zincirinin canlı, üretim versiyonudur.
Blockchain geliştirme bağlamında mainnet, bir dizi test ortamında test edildikten ve rafine edildikten sonra bir blockchain projesi için nihai hedeftir. Testnet olarak bilinen bu test ortamları, mainnet ortamını simüle etmek için kullanılır ve geliştiricilerin ana ağa dağıtılmadan önce blok zincirinin işlevselliğini ve performansını test etmesine olanak tanır.
Mainnet’lerin teknik özellikleri genel olarak şöyledir:
- Mutabakat mekanizması: Mainnet, işlemleri doğrulamak ve blok zincirinin durumu hakkında fikir birliğine varmak için belirli bir mutabakat mekanizması kullanır. Örneğin; Bitcoin ağı tarafından mutabakat mekanizması olarak Proof of Work mekanizması kullanılırken Ethereum ağı Proof of Stake kullanmaktadır.
- Ağ düğümleri: Mainnet, blockchain yazılımını çalıştıran ve işlemleri doğrulamak ve kaydetmek için birbirleriyle iletişim kuran bir düğüm ağı tarafından desteklenir. Bu düğümler herkes tarafından çalıştırılabilir ve blok zincirinin güvenliğini ve merkezileşmesini sağlamada çok önemli bir rol oynarlar.
- Yerel kripto para birimi: Mainnet, genellikle işlemleri kolaylaştırmak ve ağa düğümlerin katılımını teşvik etmek için kullanılan belirli bir coin veya tokena sahiptir.
- Akıllı sözleşmeler: Ethereum gibi bazı blok zincirleri, alıcı ve satıcı arasındaki anlaşmanın şartlarının doğrudan kod satırlarına yazıldığı kendi kendini yürüten sözleşmeler olan akıllı sözleşmeleri yürütme yeteneğine sahiptir.
- Merkezi olmayan uygulamalar (dApp’ler): Bir mainnet, bir blok zinciri üzerinde çalışan ve akıllı sözleşmeler kullanılarak oluşturulan uygulamaları yani dApp’leri barındırabilir.
Kısacası mainnet, işlemlerin, etkileşimlerin ve uygulamaların gerçekleşmesi için altyapı ve platform sağlayan bir blockchain projesinin belkemiğidir. Mainnet, çalışan, işlevsel bir blockchaini tanımlamak için kullanılır. Örneğin Ethereum blokzincirinin ana ağı tamamen dağıtıldı ve şu an üretimde. Ağda işlemler doğrulanıyor ve kaydediliyor.
Testnet Nedir?
Blockchain testnet, mainnet ortamını simüle etmek için kullanılan blok zinciri geliştirme için bir test ortamıdır. Testnetler, bir blok zincirinin işlevselliğini ve performansını, blok zincirinin canlı üretim versiyonu olan mainnete dağıtılmadan önce test edilmesi için kullanılır. Örneğin, Ethereum’un her biri farklı programlama parametrelerine sahip Kovan, Rinkeby, Sokol, Goerli ve Ropsten olmak üzere beş testnet’i vardır.
Testnet’ler genellikle mainnetten ayrıdır ve farklı protokoller, mutabakat mekanizmaları ve kripto para birimleri kullanabilirler. Ayrıca mainnete göre farklı kurallara ve sınırlamalara sahip olabilirler. Testnet’teki işlemler sadece simülasyon olduğu için ağdaki kripto paraların gerçek bir değeri yoktur. Bu sayede geliştiriciler kripto para kaybetme riski olmadan işlemlerini yürütebilirler.
Testnetlerin kullanım amaçları genel olarak şöyledir:
- Yeni özelliklerin ve iyileştirmelerin test edilmesi: Geliştiricilerin yeni özellikleri ve iyileştirmeleri mainnette yayınlanmadan önce test etmelerine olanak tanır. Böylece geliştiriciler ana ağı etkilemeden önce herhangi bir sorunu veya hatayı belirleyip düzeltebilmektedir.
- Ölçeklenebilirliği değerlendirme: Blok zincirinin farklı yükler ve koşullar altında nasıl performans gösterdiğini görmek için test edilmesi gerekir. Ölçeklenebilirliğini değerlendirmek için yapılan bu testler, mainnet yerine testnetlerde gerçekleştirilir.
- Eğitim ve öğretim: Testnetler, eğitim ve öğretim için kullanılabilir ve geliştiricilerin ve kullanıcıların blok zinciri kullanmayı öğrenmelerine ve bunun üzerinde uygulamalar geliştirmelerine olanak tanır.
- Deney ve araştırma: Testnetler, deney ve araştırma için güvenli ve kontrollü bir ortam sağlayarak geliştiricilerin ana ağı etkilemeden yeni fikirleri ve kavramları keşfetmelerine olanak tanır.
Devnet Nedir?
Devnet veya geliştirme ağı, bir blok zincirinin üzerinde uygulamalar ve fonksiyonlar oluşturmak ve test etmek için kullanılan blok zinciri geliştirmeye yönelik bir test ortamıdır. Devnet’ler, mainnet ortamını simüle etmek için kullanılır ve geliştiricilerin kodlarını test etmelerine, canlı bir ortamda nasıl performans gösterdiğini görmelerine olanak tanır.
Devnet’ler genellikle yalnızca geliştirme ve test amacıyla kullanılır; blok zincirinin canlı üretim versiyonu olan mainnet’ten ayrıdır. Devnet’ler, mainnet’ten farklı protokoller, mutabakat mekanizmaları ve kripto para birimleri kullanabilir; farklı kural ve sınırlamalara sahip olabilir.
Blok zinciri geliştirme için devnet kullanmanın çeşitli faydaları vardır. Bunlar şu şekildedir;
- Test etme ve deneme: Devnet’ler, test etme ve deneme için güvenli ve kontrollü bir ortam sağlayarak geliştiricilerin yeni fikirleri denemelerine ve bunların canlı bir ortamda nasıl performans gösterdiğini görmelerine olanak tanır.
- İş birliği ve paylaşım: Devnet’ler, diğer geliştiricilerle kod paylaşmak ve iş birliği yapmak için kullanılabilir. Bu da uygulamaları birlikte oluşturmayı ve test etmeyi kolaylaştırır.
- Eğitim ve öğretim: Devnet’ler eğitim ve öğretim için kullanılabilir. Geliştiricilerin ve kullanıcıların blok zinciri kullanmayı öğrenmelerine ve bunun üzerinde uygulamalar geliştirmelerine olanak tanır.
Subnet Nedir?
Yan zincir veya alt ağ olarak da bilinen subnet, birlikte çalışabilirlik adı verilen bir süreç aracılığıyla ana blok zincirine veya mainnet’e bağlanan ayrı bir blok zinciridir. Birlikte çalışabilirlik, subnet’in mainnet ile iletişim kurmasına ve veri alışverişinde bulunmasına izin vererek kendi ayrı kimliğini ve kural dizisini korurken mainnet ile belirli özellikleri ve avantajları paylaşmasına izin verir. Subnet’lerin kullanım amaçları şöyledir:
- Ölçeklendirme: Belirli işlemleri veya etkinlikleri subnet’e aktarılarak mainnet ölçeklendirilebilir. Böylece mainnet üzerindeki yükü azaltılır ve performansını artışı görülür.
- Deney: Subnet’ler, mainnet’i etkilemeden yeni özellikler, protokoller ve konsensüs mekanizmalarını denemek için kullanılabilir.
- Özel kullanım durumları: Subnet’ler, tedarik zinciri yönetimi veya kimlik doğrulama gibi belirli kullanım durumlarını veya uygulamaları desteklemek için kullanılabilir.
- Özelleştirme: Subnet’ler, farklı paydaşların özel ihtiyaçlarını karşılamak veya farklı işlem türlerini desteklemek için özelleştirilebilir.
Sonuç
Sonuç olarak, mainnet, testnet, devnet ve subnet blok zincirinin geliştirilmesi ve işletilmesinde belirli bir amaca hizmet eden blok zinciri ekosisteminin önemli bileşenleridir. Blok zinciri ortamları, bir blok zinciri ekosisteminin geliştirilmesinde, işletilmesinde ve evriminde çok önemli bir rol oynar.
En son gelişmelerden haberdar olmak için Twitter, Instagram, YouTube ve LinkedIn üzerinden bizi takip edebilirsiniz. Soru ve görüşlerinizi Telegram kanalından bize iletebilirsiniz.