Cosmos, CometBFT ile tanışın
Bugün, zincirler arası ve ötesi için bir durum makinesi çoğaltma motoru olan CometBFT'nin lansmanını duyuruyoruz! CometBFT, Tendermint Core'un bir çatalı ve halefidir ve Interchain Stack'e güç sağlayan resmi çoğaltma motoru olarak hizmet edecektir . CometBFT'nin uzun vadeli vizyonu, güvenilir, güvenli, büyük ölçekli, uygulamaya özel blok zincirleri için çoğaltma motorunun birincil tercihi olmaktır. Bloklarınızı CometBFT ile bugün taahhüt edin!
Interchain Foundation, Informal Systems, Cosmos SDK ekibi ve Cosmos ekosistemindeki diğer birçok ekip bu lansmanı hazırlamak için birlikte çalışıyor. Bu gönderi, bu lansmanla ilgili en önemli sorulardan bazılarını ele alıyor. İçiniz rahat olsun, CometBFT'ye yükseltmeyi veya onu benimsemeyi olabildiğince sorunsuz hale getirmek için çok çalışıyoruz. Arka plan ayrıntılarını, CometBFT vizyonunu ve hedeflerini, bu çabanın arkasındaki ekipleri ve teknik çıkarımlar açısından sonraki adımları ele alacağız.
Neden şimdi?
Ekosistemi kasıp kavuran çok sayıda önemli değişikliği işaretlemek için bu yeni ad altında amiral gemisi Cosmos konsensüs motorunu geliştirmeye karar verdik.
Teknik açıdan, zincirler arası son birkaç yılda önemli ölçüde gelişti. IBC'ye özgü, çok zincirli bir dünyada yaşıyoruz. ABCI 2.0, tıpkı modülerlik, entegrasyon veya titiz testler gibi tasarım veya kalite güvence özellikleri gibi Zincirler Arası Yığın'da eksik olan kritik bir parçadır. Ayrıca, Tendermint Core'un v0.35 ve v0.36 sürümlerinin terk edilmesi, geliştirmenin nasıl yapıldığına ilişkin teknik sınırlamaları ortaya çıkardı; daha fazla ayrıntı için buraya bakın .
2022'de Interchain Stack'i sürdüren kuruluşlar, yukarıdaki teknik sınırlamaları hafifletmek için stratejik bir yaklaşım başlattı. Bu yaklaşım, Gayri Resmi Sistemlerde Tendermint Core'a eksiksiz bir ekip oluşturmayı ve adamayı içeriyordu. Ek olarak, sürümleri hazırlarken kaliteye ve Interchain Stack'in geri kalanıyla (yani Cosmos SDK, IBC ve daha geniş zincirler arası yapı taşları) entegrasyona öncelik vermeye başladık.
İdari açıdan, ne tendmint GitHub organizasyonuna ne de “Tendermint” üzerindeki ticari marka haklarına sahibiz . All in Bits (AiB) sahibidir. Tendermint Core yazılımının geliştirilmesi, son üç yıldır All in Bits dışında gerçekleşti. Bununla birlikte, AiB'nin ticari markaya sahip olması, sürekli bir ticari marka davası riski oluşturuyordu. AiB ile karmaşık anlaşmalar olmadan, Interchain Stack'in en kritik parçasının geliştiricilerinin üzerine düşen bu riski tamamen azaltmak mümkün olmazdı.
Daha önce Twitter'da ve bu tartışmada belirttiğimiz gibi , AiB tek taraflı olarak Tendermint Core deposunu arşivlemeye karar verdi. Bu nedenle, AiB'nin teşvik ettiği gibi, geliştirme rotasına devam etmenin yolu, Tendermint Core deposunu çatallamaktı. CometBFT, kullanıcılara, kaliteye ve entegrasyona odaklanan yenilenmiş geliştirme ile Tendermint Core tarafından atılan temeller üzerine inşa edilecek.
Bu teknik ve idari kaygılar doğrultusunda, en önemli değişiklikler projenin uzun vadeli vizyonu, hedefleri ve yönetimindedir. Bu da bizi bu tartışmanın bir sonraki bölümüne getiriyor.
Sıradaki ne?
Cosmos ve zincirler arası ekosistemin kararlı bir temsilcisi olarak Interchain Foundation , kamu malları finansmanı ve varlıkları için güvenilir bir ev sahibi olarak hizmet eder. ICF, başlangıcından bu yana "Cosmos" ticari markasının sahibidir ve daha geniş topluluğun çıkarları doğrultusunda kullanımını korur. Benzer şekilde, ICF, "CometBFT" adını ticari marka haline getirdi ve CometBFT GitHub organizasyonunu kurdu ve her ikisini de uzun vadede büyüyen zincirler arası çıkarlar doğrultusunda yönetmeyi planlıyor. CometBFT, açık kaynaklı ve lisanslı Apache2.0 olarak kalacaktır. İlgili tüm tarafları bu yazılımın büyümesine ve gelişmesine katkıda bulunmaya ve açık kaynak değerlerini tanıtmaya davet ediyoruz.
Daha önce de belirtildiği gibi, CometBFT'nin uzun vadeli görevi, zincirler arası için birincil çoğaltma motoru seçimi olmaktır. CosmosSDK ekibi, IBC ekipleri, CometBFT bakımcıları ve hem uygulama düzeyinde hem de kamu mallarında zincirler arası zinciri oluşturan çok sayıda mühendislik ekibi, CometBFT'yi ekiplerin yeni özelliklerle deney yapabileceği bir yer haline getirme ortak vizyonunu paylaşıyor. ve optimizasyonlarla yineleyin ve yığının bütünlüğünü ve sağlamlığını korurken kullanıcılar için yüksek derecede esneklik sağlayın. Interchain Stack'e katkıda bulunuyorsanız, doğrulayıcıları veya düğümleri çalıştırıyorsanız, diğer ekosistemlerle entegre oluyorsanız veya yeni bir kullanıcı olarak Cosmos'ta yolunuzu buluyorsanız, bunu gerçeğe dönüştürmek için yardımınız çok makbule geçer. Bizimle nasıl iletişime geçeceğinizi öğrenmek için aşağıdaki "Referanslar" bölümüne bakın.
CometBFT'nin hedefleri nelerdir?
Yukarıda ve daha önce açıklandığı gibi , bu, zincirler arası yeni bir aşamaya işaret ediyor. Fikir birliği motoru, IBC'ye özgü bir dünya için uzmanlaşmış bir yapı taşı olacak şekilde gelişiyor. Cosmos SDK ekibi ve mevcut kullanıcılarla yakın bir şekilde çalışmaya devam ederken, ABCI ve IBC'nin üzerinde inşa edilen uygulama geliştiricilerinin büyüyen ekosisteminin benimsenmesini kolaylaştırmaya çalışıyoruz. CometBFT'nin altında yatan uzun vadeli hedef, zincirler arası büyümenin desteklenmesinde önemli bir rol oynamaktır.
Daha spesifik olarak, CometBFT hedefleri şunlardır:
- Kullanıcılarının ihtiyaçlarını her şeyden önce alan, açıkça ifade edilmiş bir ürün stratejisi ile güçlü kullanıcı odaklılık . Bu, CometBFT'nin alakalı olmasını ve fayda sağlamasını sağlamaya yönelik stratejik bir seçimdir.
- Model tabanlı testler gibi gelişmiş teknikler kullanarak uygulamamızı titizlikle belirlemeyi ve test etmeyi amaçlayan kalite güvencesini ve doğruluk garantilerini iyileştirmek . Halihazırda büyük ölçekli test çabalarıyla tamamlanan mevcut kalite güvencesini güçlendirmek için spesifikasyonlar ve resmi yöntemler konusundaki uzmanlığımızı getiriyoruz.
- Modülerlik , soyutlamanın doğru sınırlarına odaklanmak, gerektiğinde sistemin parçalara ayrılmasına izin vermek, ona bağlı projelerde parça parça entegrasyona izin vermek. CometBFT'nin bir kitaplık olarak giderek daha fazla kullanılmasına izin vermek ve sürekli büyüyen kullanım durumlarını desteklemek için yeni arabirimler sağlayarak çatallanmaları ve parçalanmayı en aza indirmek istiyoruz.
- Değişim için sağlam bir platform olarak hareket etmek üzere sistemin mimarisini kademeli olarak güncellemenin yanı sıra tüm Interchain Stack boyunca daha sorunsuz proje koordinasyonu yoluyla kaliteden ödün vermeden daha hızlı işlevsellik sunumu .
CometBFT'nin arkasında kim var?
CometBFT'yi başlatmak çok organizasyonlu bir karardı. CometBFT, çok sayıda Cosmos paydaşı ile işbirliği içinde Resmi Olmayan Sistemler tarafından yönetilmektedir. Lansman, Cosmos SDK, IBC, Osmosis, Cosmos Hub ve Agoric, Axelar, Oasis, Penumbra, Celestia, Anoma, Skip, Umee, Confio, Nomic, Numia, Sei, Evmos dahil olmak üzere zincirler arası çeşitli ekiplerde çalışmayı içeriyordu. , Sommelier, Andromeda, Cronos ve diğerleri.
Gayri resmi CometBFT ekibi, Cosmos'a katkıda bulunan en yetenekli ve tutkulu kişilerden bazılarını içermektedir. Çekirdek ekip üyelerinin yanı sıra diğer zincirler arası ekiplerden katkıda bulunan üyelerin tanıtımını Twitter'da takip edeceğiz. Şimdilik, çekirdek ekibin araştırma mühendisleri, kıdemli DevOps ve onlarca yıllık ortak deneyime sahip yazılım mühendislerinin yanı sıra Cosmos'ta 10 yıldan fazla toplam deneyime sahip proje, ürün ve teknoloji liderlerinden oluştuğunu söylemek yeterli.
Sonraki adımlar nelerdir?
CometBFT'yi başlatmak, halen devam eden önemli bir çabadır. İşte bilmeniz gereken birkaç önemli şey.
Çalışmanız CometBFT'ye bağlıysa , iki haftada bir Perşembe günleri düzenlenen topluluk çağrılarına katılmayı düşünün:https://groups.google.com/g/cometbft-community/. GitHub deposuna ek olarak topluluk çağrısı, CometBFT'nin gelişimini tartışmak için önemli bir forumdur. Geliştiricilerin sizden geri bildirim toplayacağı, soruları yanıtlayacağı ve bir kullanıcı olarak sizin için diğer kullanıcılarla değerli bilgi alışverişinde bulunabileceğiniz yerdir.
Uygulamanız Cosmos SDK üzerine kuruluysa: 0.45, 0.46 ve 0.47 satırları için yeni SDK sürümleri Cosmos SDK ekibi tarafından yayınlanacaktır. Bu sürümler, Interchain Stack katılımcıları ve projeleri arasındaki anlaşma uyarınca Tendermint Core 0.34 yerine CometBFT v0.34'ü kullanacak. Bu SDK sürümüne yükseltme, küçük bir sürüm değişikliği olduğundan koordineli bir yükseltme gerektirmez. Cosmos SDK değişiklik günlüğü, uygulamanıziçin ilgili değişiklikleri belgeleyecektir.
Doğrudan Tendermint Core'un üzerine inşa ediyorsanız: Bakımcılar olarak Tendermint Core v0.34'ten CometBFT v0.34'e geçmenizi öneririz. İlk sürümlerimizi kestikten sonra yükseltme talimatlarını sağlayacağız. Buradan Github deposuna bir göz atın.
Bir Tendermint Core çatalı kullanıyorsanız: Mümkün olan en kısa sürede CometBFT'ye geçiş yapmanızı öneririz, örneğin ilgili değişikliklerinizi bir CometBFT çatalına yeniden temel alarak veya özenle seçerek. Bu süreçte yardımcı olmaktan memnuniyet duyarız. Ek olarak, bir çatala sahip olmanıza olan ihtiyacı ortadan kaldırmaya yönelik özel gereksinimleriniz hakkındaki geri bildirimlerinizi ve bilgilerinizi memnuniyetle karşılıyoruz (aşağıdaki "topluluk" referansına bakın).
Referanslar
Burada Comet ile ilgili resmi bağlantıları ve talimatları bulacaksınız:
- CometBFT mutabakat motorunu nerede bulabilirim?https://github.com/cometbft/cometbft/. Repoya yıldız eklemeyi unutmayın!
- Destek nasıl bulunur? Bir geliştiriciyseniz, destek için en iyi yer "#cometbft" kanalındaki Cosmos Network Discord sunucusudur .
- Hızlı geri bildirim ve iletişime olanak sağlamak ve bu geçiş sürecini yönetmek için Telegram kanalını devreye aldık. Lütfen buradan katılın:https://t.me/CometBFT
- Belgelere bağlantı:https://docs.cometbft.com/
- Proje için yeni tanıtıcılar aşağıdaki gibidir. GitHub organizasyonu:https://github.com/cometbft/. Discord: Cosmos Network sunucusunda `#cometbft` kanalına katılın . Mevcut "#tendermint-core" kanalı kullanımdan kaldırılacak.
- Twitter: Duyurular ve güncellemeler @cometbft ve @informalinc adreslerinden yapılacaktır .
- Genel bilgi için: [email protected] .
- Güvenlik veya güvenlik açıkları için: [email protected] .
CometBFT'nin altında yatan mutabakat algoritması nedir?
CometBFT'nin altında yatan konsensüs algoritması şu anda Tendermint Consensus'a dayanmaktadır (yani, bir uygulamasıdır) .
CometBFT, Tendermint mutabakat algoritmasından uzaklaşacak mı?
İlk sürümlerde değil. CometBFT'yi, varsayılan mutabakat algoritmasının başkaları için kolayca değiştirilebildiği, ancak çekirdek bakıcılar tarafından uygulananlarla sınırlı olmadığı, şekillendirilebilir bir mutabakat kitaplığı olarak oluşturmayı hedefliyoruz.
Ayrıca, fikir birliği algoritmasında veya başka bir yerde ( LINE , PeggyJV , SeiNetwork veya Celestia Org çatallarına bakın) değişiklikler veya optimizasyonlar yapan ekiplerle, diğer kullanıcıların ihtiyaç duyduğu değişiklikleri ana geliştirme hattına aktarmak için çalışmayı planlıyoruz.
Zincirler arası güç sağlayan birden fazla Tendermint Core çatalı olacak mı?
Hepsi açık kaynak, yani olabilir. Bununla birlikte, standart yapı taşları CometBFT'nin üzerine inşa edilecektir. Cosmos zincirleri, CometBFT'nin üzerine inşa edilecek olan Cosmos SDK (@cosmossdk) ile oluşturulmuştur. Cosmos SDK geliştirmesi her zamanki gibi devam edecek.
IBC düzeyinde, kütüphaneler Tendermint hafif istemcilerini desteklemeye devam edecektir; CometBFT, Tendermint konsensüs algoritmasının bir uygulamasını içerir, bu nedenle Tendermint hafif istemciler, her zamanki gibi CometBFT ile çalışmaya devam edecektir.
Herhangi bir ekip CometBFT'yi çatallayabilir ve uygulamalarında çoğaltma motorunu değiştirebilir. Ancak, önemli değişikliklere ihtiyacınız varsa bizimle iletişime geçmenizi öneririz (yukarıdaki "Nasıl destek bulabilirim?" bölümüne bakın). İhtiyaçlarınızı göz önünde bulunduracağız ve mümkünse gereksiz veya güvensiz çatallanmalardan kaçınmak için teknik yol haritamızı buna göre uyarlayacağız.
Bu herhangi bir zincirin çatallanmasına neden olur mu?
Kesin bir “hayır”. Tendermint Core v0.34 tabanlı sistemler CometBFT v0.34'e yükseltilebilir. Ve CometBFT v0.34 serisi, Tendermint Core v0.34 ile uyumlu kalacaktır.
Tendermint Core tabanlı bir ağda doğrulama yapıyorsam, işlemlerim için herhangi bir endişem var mı?
Yayın değişiklik günlüğündeki son değişiklikleri dikkatli bir şekilde bildireceğiz ve önemli değişiklikler minimum düzeyde olacaktır. Tendermint Core'un ikili adı değiştirilecek, ancak çoğu uygulamanın Tendermint Core'un derlendiği (CometBFT ile değiştirildiği) uygulamaya özel bir ikili dosyası ( 'osmosisd' , 'gaiad' gibi) vardır. Ayrı bir Tendermint Core ikili dosyası çalıştırmadığınız sürece bu işlemlerinizi etkilemeyecektir. İlgili bir değişiklik, "TMHOME" env değişkeninin "CMTHOME" olarak yeniden adlandırılacak olmasıdır . "gaiad tendmint" gibi alt komutlar, ikili dosyanın bakımını yapan ekibe bağlı olarak zamanı geldiğinde yeniden adlandırılabilir. Bu ayrıca değişiklik günlüğünde açıkça işaretlenecektir.
Tendermint-rs'ye
( https://github.com/informalsystems/tendermint-rs/ ) ne olur?
Bu projenin adını kısa süre sonra cometbft-rs olarak değiştireceğiz ve geliştirmeye devam edeceğiz.
tm-db veya tm-load-test'e ne olur?
tm-db'yi çatallaştırdık ve cometbft-db olarak yeniden adlandırdık ve geliştirmeye devam edeceğiz. Hiçbir API başka şekilde bozulmamıştır ve farklı bir Go modülü olması dışında kullanım aynıdır: "github.com/cometbft/cometbft-db".
tm-load-test'i cmt-load-test olarak taşıyıp yeniden adlandıracağız ve geliştirmeye devam edeceğiz. Not: Yukarıdaki isimlerden bazıları hala değişim halinde olabilir.
PS. Kozmik bir zevkle, CometBFT'nin fırlatılması, C/2022 E3 Kuyruklu Yıldızı'nın (ZTF) gezegenimize en yakın yaklaşımını gerçekleştirmesiyle aynı zamana denk geliyor . Kuyruklu yıldızın parlaklığı bugün zirve yapacak ve onu gözlemleyenlere unutulmaz bir görsel deneyim sunacak.

![Bağlantılı Liste Nedir? [Bölüm 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































