inertia ya baktin mi? 29.99cm, titanyum kaplamalı, çift damarlı, su ve yağ soğutmalı.

Hocam peki proje büyüdü devasa bir kod var. Sürekli confilict yaşanıyor bu gibi durumları nasıl çzüyorsun? Proje büyüdükçe kod kalitesi de düşüyor ynetmesi zorlaşıyor. Bunu nasıl çzüyorsun? Son olarak da deployment sorunu var. Mesela React ile proje geliştiriyorsun versiyon çıkman gerekiyor. Versiyonu çıktın diyelim dosyaları değiştirdiğin anda biri ekranlarda bir işlem yaptığında hata alır sayfayı yenilemesi gerekiyor. Bunu nasıl çzüyorsun? Benzer sorunlar yaşıyorduk sonra yntemi syle değiştirdik. /var/ProjectName/v1/ çalışmakta olan version. /var/ProjectName/v1.1/ yeni version. v1.1 klasoru upload'u bittikten sonra bilgi işlemci apache den vHost path'i guncelliyor, Ayni sekilde backend makinelerinde de güncelleme farkli bir porttan ayağı kalkıyor. Prodda herseyin doğru tanımlandığı vs test edildikten sonra ngnix ve apache restart edilip yeni config ile ayağı kaldırılınıyor. Bu sayede güncelleme süresinde kesinti service restart süresine düşüyor. Bu aralar fazla yogunum. Unuttugum seyler oluyorsa affola. DM vs atın.

Merhaba Mürit ve Mürideler, Bir projemiz var çok nceden monorepo olarak geliştirmeye başladığımız. Backend kısmı tamamen microservice mimarisi ile yazdık fakat frontend tarafta proje büyüdüğü için PR işlemleri, unit test işlemleri ya da deploy işlemlerinde bir takım sıkıntılar yaşıyoruz. Tamamen ekrandaki her modülün farklı bir uygulama olarak çalışmasına geçiş yapacağız. Buradaki mimari araştırmalarım ile micro frontend yaklaşımına biraz soğuk bakmaya başladım. Artı ve Eksilerini düşününce işin içinden çıkamıyorum. Framework olarak React kullanıyoruz ve tüm ekip React biliyor. Monolitic bir app var elimizde normal React-Redux-Redux Saga şeklinde geliştirilen bir proje. Bu projeyi micro frontend'e çevirmekte bir problem yok fakat performans olarak ciddi kayıplara sebep olacağımızı düşünüyorum. Micro frontend olarak yazdığımızda ekrandaki tüm kodlar tekrar tekrar render olacak şekilde tasarlanmak zorunda yani Single Page Application mantığına ters geliyor bana. O zaman MVC den farkı ne burada biraz kafam karışıyor. Bir de maliyet olarak SPA daha az maliyetli geliyor bana. Micro frontend olarak tasarladığımda aynı buttonu ya da componentleri alt projelerde de kullanacağım ve sıfırdan tekrar yazılacak. Genel bir tasarımsal değişiklik ya da başka bir durum olduğunda tüm kod yapıları değişmeli. Hadi bu componentleri bir şekilde paket haline getirdik ve UI kit olarak local package manager üzerinden ynettik diyelim. State management ne olacak? Proje SPA olmadığı için herhangi bir state management yntemini nasıl kullanacağım ki? Sonuçta ekran içerisindeki fragmentler farklı farklı projeler. Yani bu şekilde düşündüğümde bana micro frontend backend gibi mantıklı gelmiyor. Daha fazla iş, Kod tekrarı, Performans gibi konularda çok geride kalıyor. Buradaki tek avantaj projelerin yatayda parçalanması ve deployment süreçleri. Bu konudaki yorumlarınızı çok merak ediyorum. Andolsun kuşluk vaktine ve dindiği zaman o geceye ki, Rabbin sana veda etmedi ve darılmadı! Ve kesinlikle senin için sonu nünden daha hayırlıdır. ileride Rabbin sana verecek de hoşnut olacaksın! O, seni bir yetim iken barındırmadı mı? Seni, yol bilmez iken yola koymadı mı? Seni bir yoksul iken zengin etmedi mi? yle ise, sakın yetime kahretme ! El açıp isteyeni de azarlama! Fakat Rabbinin nimetini anlat da anlat!

microfrontend yapısını ilk kez duydum. biraz inceledim. ŞAHSİ GRÜŞÜM => bana aşırı gereksiz geldi. frontend dediğin tek bir proje tek bir katman olması lazım benim gzümde. blazora bulaştığımdan beri mvc bile hammaliye gelmeye başladı hatat. araştırdığım kadarıyla tam microfrontend mimarisini uygulayacağım dersen, backendde harcadığın eforun daha fazlasını harcayacakmışsın gibi geliyor. frontendde testlerini ufak bir araştırmayla selenium csharp webdriver ile yapabilrsni bence. onun haricinde hangi ortam hızlıysa veya duruma gre hangi ortamda daha hızlı kod geliştirebileceksen ona ynlenebilirsin. ben frontenddeki razor componentlerini ve servisleri bot ile oluşturuyorum coremodel'deki Name, Id, IsDeleted, vb core fieldlardan sadece Name alanını frontendde alacak şekilde razor hazır bottan geliyor. modele yeni fieldlar ekleyeceksem blazorun bir güzelliği olarak sadece 1 yerde o modelin o field'ine atama yapıp işimi bitiriyorum. biraz hızlı yazdım dediklerim karışmış olabilir. kolay gelsin. türk kızlarından sabun yapalım, rus kızları elini yıkasın.:)

Buyuk ekiplerle gelistirilen buyuk uygulamalar icin mantiklidir. Yeni ekleyecegin seylerde butun uygulamanin cortlamayacagini bilirsin, kafan rahat olur. ayrica bahsettigin dependency conflict sorununu da cozer. monolit projelerde bazen yeni bir kutuphane eklemek istedigin oluyor, ve o yeni kutuphane projende hali hazirda kullandigin baska bir projenin bagimli oldugu paketin daha guncel veya daha eski surumune bagimli olabiliyor, kullanamiyorsun haliyle; digerini etkiliyor cunku. Sorunu cozebilmek icin butun ilgili yerleri guncellemen gerekiyor, corba gibi oluyor kafan. Ayrica react disinda farkli farkli frameworkler kullanmana da olanak taniyor bu yapi. Projen kucuk-orta olcekliyse cok da luzumlu degil bence. 0x0480 takilin madem

Hocam peki proje büyüdü devasa bir kod var. Sürekli confilict yaşanıyor bu gibi durumları nasıl çzüyorsun? Proje büyüdükçe kod kalitesi de düşüyor ynetmesi zorlaşıyor. Bunu nasıl çzüyorsun? Son olarak da deployment sorunu var. Mesela React ile proje geliştiriyorsun versiyon çıkman gerekiyor. Versiyonu çıktın diyelim dosyaları değiştirdiğin anda biri ekranlarda bir işlem yaptığında hata alır sayfayı yenilemesi gerekiyor. Bunu nasıl çzüyorsun? teker teker gitmeye çalışayım hocam. 1-) Hocam peki proje büyüdü devasa bir kod var. Sürekli confilict yaşanıyor bu gibi durumları nasıl çzüyorsun? => aynı ekipteki arkadaşlar sürekli olarak aynı frontendi değiştirmiyorlar. Zaten yukarıda da bahsettiğim gibi bir servis ekleneceği zaman bu servisi kendi yazdığım bot ile ekliyorum. bylece o service ait aşağıdakilerin hepsi otomatik olarak ekleniyor - Service Interface - Service Implementation - Service Client Implementation - API Controller - Model - Generic Repository Implementation - Core Model için Blazor RAZOR CRUD sayfasıdolayısıyla bir modele yeni bir field ekleneceği zaman sadece o sayfada küçük bir değişiklik yapılıyor businesslogic ler zaten servis katmanında yapılıyor ve aynı anda aynı serviste GENELDE tek kişi çalışıyor. buna rağmen conflict olursa kişilerle konuşup resolve ediyoruz şimdiye kadar büyük sıkıntıyla karşılaşmadık. 2-) Proje büyüdükçe kod kalitesi de düşüyor ynetmesi zorlaşıyor. Bunu nasıl çzüyorsun? => proje büyüse bile kod kalitesi düşmüyor. kod kalitesi hep standart çünkü core işlemlerin hepsi zaten standart şekilde bot ile üretiliyor. yeni eklenen servisleri de mecburen aynı servisin interface'ine eklemek zorunda kalıyor. kod bunu zorunlu kılıyor. ayrıca. net core da DI zorunlu olduğu için biz kod kalitesinden yana sıkıntı çekmiyoruz. he dersenk yazılımcıalr ktü bu mimaride saçma kod yazıyorlar onu liderin takip ve tespit etmesi gerekecek. 3-) Son olarak da deployment sorunu var. Mesela React ile proje geliştiriyorsun versiyon çıkman gerekiyor. Versiyonu çıktın diyelim dosyaları değiştirdiğin anda biri ekranlarda bir işlem yaptığında hata alır sayfayı yenilemesi gerekiyor. Bunu nasıl çzüyorsun? => biz genelde müşterilere 10 dklık bir publish için 30 dk maintenance randevusu alıyoruz. sıkıntı çıkarsa manuel müdahil olmak için. şu anda azure CI/CD lerini kullanıyoruz. bazı küçük projelerde iisten copy paste ile yayına alıyoruz. Blazor ekrandaki kesintiyi 5 kez deniyor ve bağlanabilrise kaldığı yerden devam ediyor sıkıntı olmuyor. ama MVC tarzı siteler sıkıntı her halükarda refresh gerekli. türk kızlarından sabun yapalım, rus kızları elini yıkasın.:)

selamlar hocalar bende bu soruya paralel bir soru sorayım ;FE tarafında anlık 50 K / Request per second gibi bir durum olduğunu varsayalım bu noktada nodejs bu yükü kaldıramıyoru bu noktada nasıl bir çzüm izliyorsunuz? Micro frontend ile mi? bunun çok farkli çzümleri olabilir. rneğin bi loadbalancer ile paylaşım yapilabilir. Burada senin yapina hangisi uyacaktir ona bakmak lazim. Bu aralar fazla yogunum. Unuttugum seyler oluyorsa affola. DM vs atın.

Bilemedim ya arafta kaldım. Projemiz aslında stabil ve iyi fakat bayağı büyümeye başladı proje. Bazen ana yapılarda değişiklikler meydana geliyor ve projenin anası ağlıyor. Hatta bir paket değiştirdik geçenlerde React 0.67 çektik projeyi yükselttik projenin genelinde bir değişiklik yapmak zorunda kaldık. Bundan dolayı ekip 3 gün boyunca çalışamadı sadece core ekip çalıştı diğerleri çalışmanın bitmesini bekledi gibi gibi.. Proje micro olsaydı bu yaşanmazdı ama bilemedim... Araştırmaya devam edeceğim. https://www.youtube.com/watch?v=w58aZjACETQ&ab_channel=JackHerrington Şu adamın videolarını izliyorum bir şeyler ortaya çıkıca konuyu güncellemeye devam edeceğim. Farklı yaklaşımları olan varsa ve bizimle paylaşabilirse çok sevinirim. Hocam bir paket değişikliğinden dolayı 3 gün ekibin beklediğini sylemişsin. Bu durum ne sıklıkta bir yaşanacak? Her ay yaşanacak mı? Eğer sık sık olmayacaksa Micro frontend falan uğraşmayın. Yeni bir mimarinin implementasyonu, çalışanların ğrenmesi araştırması benimsemesi derken süreç uzar iyice. Toplam 1 yılda 10 gün kar yapmak için 30 gün harcamaya gerek yok. Ha şunu dersen anlarım. Ekrandaki her bir modül farklı bir uygulama olacak demişsin. Tamam olsun. Uygulamalar arası geçişlerde bir şekilde halledersin Authentication ve Authorization olayını. Ama yine bunun için Micro Frontend muhabbetine gerek var mı? Ben gerekmedikçe yeni icat çıkarılmasına karşıyım. Zaten her gün bir sürü yeni şey çıkıyor. Yazılımcıları bunaltmaya gerek yok.

piyasada grdüğüm kadarıyla güncel teknolojileri kullanmam lazım, kurallara uyulması gerekli, solidde şu olmazsa olmaz bu olmazsa olmaz diye diye 3 kişilik 5 kişilik yazılım grupları ufacık projeleri o kadar kompleks hale getirmeye başladılar ki altından kalkılamaz bir iş yükü meydana gelmeye başladı. Aynı methodu yok classa yazim, yok abstrac class yapalım, yok interface'de çağıralım, bu design pattern olmazsa olmaz diye diye 50 farklı yere kod yazıp çağırmaya çalışıyorlar. bu tarz geliştirmeleri yaparken proje ihtiyacı neyse onu iyi belirlemek, çok dallanmasına izin vermemek, ve ekibin iş gücünü unutmamak lazım. Konuya gelecek olursakta frontend tarafında microservice olayı bana çok saçma geliyor. Kaynak tüketimi kaygın zaten frontend tarafında olmaması gerekiyor. en fazla tercih sebebi modüller olması için olabilir. bir modülün bakım ve geliştirmeleri yapılırken diğer tarafın etkilenmemesi için tercih edilebilir ki bu da zaten dün çıkan bir mevzu değil. sessionı uzak bir yerde tutup tüm projelerin içinde ortak session kullanımıyla zaten yıllardır yapıyoruz. Ha state management yapmak zorunda olduğun react gibi yapılarda durum farklı tabi ama rneğin. netle yaptığında subdomainlerde vs. yürüyor ama mantık aynı aslında. o tarafta çok tecrübem olmadığı için bilen arkadaşlar ynlendirir ben genel içimi dkeyim dedim :D

Bilemedim ya arafta kaldım. Projemiz aslında stabil ve iyi fakat bayağı büyümeye başladı proje. Bazen ana yapılarda değişiklikler meydana geliyor ve projenin anası ağlıyor. Hatta bir paket değiştirdik geçenlerde React 0.67 çektik projeyi yükselttik projenin genelinde bir değişiklik yapmak zorunda kaldık. Bundan dolayı ekip 3 gün boyunca çalışamadı sadece core ekip çalıştı diğerleri çalışmanın bitmesini bekledi gibi gibi.. Proje micro olsaydı bu yaşanmazdı ama bilemedim... Araştırmaya devam edeceğim. https://www.youtube.com/watch?v=w58aZjACETQ&ab_channel=JackHerrington Şu adamın videolarını izliyorum bir şeyler ortaya çıkıca konuyu güncellemeye devam edeceğim. Farklı yaklaşımları olan varsa ve bizimle paylaşabilirse çok sevinirim. Andolsun kuşluk vaktine ve dindiği zaman o geceye ki, Rabbin sana veda etmedi ve darılmadı! Ve kesinlikle senin için sonu nünden daha hayırlıdır. ileride Rabbin sana verecek de hoşnut olacaksın! O, seni bir yetim iken barındırmadı mı? Seni, yol bilmez iken yola koymadı mı? Seni bir yoksul iken zengin etmedi mi? yle ise, sakın yetime kahretme ! El açıp isteyeni de azarlama! Fakat Rabbinin nimetini anlat da anlat!

Micro frontend kullanmaya karar verdim. Şu an Redux-saga ve Redux'u aynı projede nasıl kullanacağıma bakıyorum. Onu da çzdüğüm zaman microservice yapısından devam edeceğim. EventBus kullanmak istemiyorum EventBus olmadan projeyi tek bir redux üzerinden ilerletmeye başlayacağım. Andolsun kuşluk vaktine ve dindiği zaman o geceye ki, Rabbin sana veda etmedi ve darılmadı! Ve kesinlikle senin için sonu nünden daha hayırlıdır. ileride Rabbin sana verecek de hoşnut olacaksın! O, seni bir yetim iken barındırmadı mı? Seni, yol bilmez iken yola koymadı mı? Seni bir yoksul iken zengin etmedi mi? yle ise, sakın yetime kahretme ! El açıp isteyeni de azarlama! Fakat Rabbinin nimetini anlat da anlat!

Micro frontend kullanmaya karar verdim. Şu an Redux-saga ve Redux'u aynı projede nasıl kullanacağıma bakıyorum. Onu da çzdüğüm zaman microservice yapısından devam edeceğim. EventBus kullanmak istemiyorum EventBus olmadan projeyi tek bir redux üzerinden ilerletmeye başlayacağım. Rtk query ile base api Replace reducer ile dynamic reducer Slice ile de derli toplu code splitting yapabilirsin Bu 3ünü kullandığında reduxı tam olarak mfe uygun halde kullanıyor olursun hocam iyibu! yeniden..

selamlar hocalar bende bu soruya paralel bir soru sorayım ;FE tarafında anlık 50 K / Request per second gibi bir durum olduğunu varsayalım bu noktada nodejs bu yükü kaldıramıyoru bu noktada nasıl bir çzüm izliyorsunuz? Micro frontend ile mi? Memento Mori

Hocam peki proje büyüdü devasa bir kod var. Sürekli confilict yaşanıyor bu gibi durumları nasıl çzüyorsun? Proje büyüdükçe kod kalitesi de düşüyor ynetmesi zorlaşıyor. Bunu nasıl çzüyorsun? Son olarak da deployment sorunu var. Mesela React ile proje geliştiriyorsun versiyon çıkman gerekiyor. Versiyonu çıktın diyelim dosyaları değiştirdiğin anda biri ekranlarda bir işlem yaptığında hata alır sayfayı yenilemesi gerekiyor. Bunu nasıl çzüyorsun? Andolsun kuşluk vaktine ve dindiği zaman o geceye ki, Rabbin sana veda etmedi ve darılmadı! Ve kesinlikle senin için sonu nünden daha hayırlıdır. ileride Rabbin sana verecek de hoşnut olacaksın! O, seni bir yetim iken barındırmadı mı? Seni, yol bilmez iken yola koymadı mı? Seni bir yoksul iken zengin etmedi mi? yle ise, sakın yetime kahretme ! El açıp isteyeni de azarlama! Fakat Rabbinin nimetini anlat da anlat!

Şuan büyük bir firmanın mf yapısını yapıyoruz. Sanılandan çok daha farklı yaklaşımlar var. Birkaç aya büyük bir dkümantasyon hazırlamayı planlıyorum iyibu! yeniden..