Iki Admin Template Arasinda Kaldim - Hangisini Secmeliyim?
-
simdilik template'i degistirmeme karari aldim.. lazim olan componentleri de buluyorum bi sekilde..
bu sitede hemen hemen tüm componentler var vue icin.. belki ilerde 2.0 yaparsam tema degismesi gerekirse degistiririm..
Yaptigim projede tek bir rakip var onlar da gecen aralikta satisa cikmislar ama websiteleri cok karmasik, kontrolü zor (ama avantaj olarak muhasebe kismi vs var ben suan eklemeyi düsünmüyorum). Ben User Centered Design ve Interaction Design diye dersler almistim, o yüzden az cok kullaniciya hitap edecek sekilde düsünebilliyorum (her ne kadar tasarimci olmasam da ).. Kullaniciyi basit seviye düsünüp ona göre en basit olabilecek sekilde menüleri, navigasyonu vs ayarliyorum
@esinti, dosya silinmisse vs upload edebilirim. Sagolsun @yolbulucu paylasti template'i
unbalanced tarafından 04/May/20 03:38 tarihinde düzenlenmiştir -
unbalanced bunu yazdı
simdilik template'i degistirmeme karari aldim.. lazim olan componentleri de buluyorum bi sekilde..
bu sitede hemen hemen tüm componentler var vue icin.. belki ilerde 2.0 yaparsam tema degismesi gerekirse degistiririm..
Yaptigim projede tek bir rakip var onlar da gecen aralikta satisa cikmislar ama websiteleri cok karmasik, kontrolü zor (ama avantaj olarak muhasebe kismi vs var ben suan eklemeyi düsünmüyorum). Ben User Centered Design ve Interaction Design diye dersler almistim, o yüzden az cok kullaniciya hitap edecek sekilde düsünebilliyorum (her ne kadar tasarimci olmasam da ).. Kullaniciyi basit seviye düsünüp ona göre en basit olabilecek sekilde menüleri, navigasyonu vs ayarliyorum
@esinti, dosya silinmisse vs upload edebilirim. Sagolsun @yolbulucu paylasti template'i
Yok Hocam silinmemiş.
Eğer update felan yoksa upload etmene gerek yok.
Teşekkürler. -
Js framework lafı duyunca kendimi kaybediyorum :)) Temanın sürekli olarak değiştirilmesi bir tür yazılımcı hastalığı :)) Değiştirme hocam aynen kalsın..
-
Hannibal_King bunu yazdı
Js framework lafı duyunca kendimi kaybediyorum :)) Temanın sürekli olarak değiştirilmesi bir tür yazılımcı hastalığı :)) Değiştirme hocam aynen kalsın..
:)) devam ediyorum hocam. Sana daha önce dediğim gibi bazı componentler eksik ama onu da paylaştığım siteden temin ediyorum.
güzel bir kaç calendar da buldum. Ayrıca geçmek isteyen olursa vue'yu şiddetle tavsiye ederim. Çok zevk alarak çalışıyorum :) tabi react ve angular ile çalışmadığım için karşılaştırma yapamam ama vue ile kolayca bir çok işi yapabiliyorum ki ben bir web developer değilim.
Hatta web'ten Nefret eden biriydim ama vue ile Web'i sevmeye başladım :) O derece
Bundan sonra desktop ve backend de c#
mobilde flutter (ki ben Xamarin üzerine çalışıyorum)frontend'de vuejs :)
Hocam sana da bir soru sormak istiyorum redis ile ilgili..
Redis use case'ler nelerdir.. Örneklerde herkes üç beş değeri kaydedip bitiriyor. Teorik olarak biliyorum serilize edip kaydedilebilir hash olarak. Ancak nerelerde kullanmalıyım sorusu açık
mesela token-refresh token için kullanmak mantıklı
userların dinamik olarak değiştirdiği kısımlarda kullanmak mantıklı mı?
replika kullanımı ne kadar önemli eğer veriler bir süre sonra silinecekse
ayrıca subscribe olayını web tarafında hangi alanda kullanacağım.
bunun haricinde nerelerde kullanmak mantıklı?Diğer arkadaşlar da cevap verebilir :)
-
Ben kendim redis i hangi amaçla kullanıyorum? Şuan uğraştığım büyük çaplı bir projem var. Aslında büyük çaplı değilde büyük çaplı olmasını umuyorum.
1-) Gelen yeni üyelik kayıtlarını doğrudan redise yazıyorum. Uyelik onaylandığı anda redisten alıp postgresql e yazıyorum. Tabiki bu işlem için redis e gerek yok. Üyelik tablosuna is_approved 1 veya 2 yazarsın olur biter.
2-) Önemli. Asp.Net Core un kendi auth mekanizmasını kullanmıyorum. Uye kullanıcı adı ve şifre girdi diyelim. Uye için bir token oluşturup bunu rediste saklıyorum. Cookie ye de hem member_id hem de tokenı yazıyorum. Her requestte cookie de bulunan member_id ve token ile rediste bulunan member id ve tokenı karşılaştırıyorum. Redis zaten çok hızlı olduğu olduğu için gönül rahatlığı ile bu şekilde kullanılabilir. Yani özetle oturum bilgilerini saklamak için redisi kullanıyorum.
Peki neden böyle yapıyorum? Çünkü cloudflare load balancing kullanıyorum. 2 adet web sunucum var belki ilerde dahada artar bu nedenle oturum bilgilerini merkezi bir yerden yönetme ihtiyacım var. Bunun Asp.Net Core da çözümü Data Protection. https://docs.microsoft.com/en-us/aspnet/core/security/data-protection/introduction?view=aspnetcore-3.1 bu ve bunun gibi linklere bakılabilir. Yani normalde Asp.Net Core, authentication olayında kriptoloma yaptığı için bu kriptoyu çözecek anahtarlar aynı olmalı. Bunu Asp.Net üzerinde webconfig dosyasına gelip aynı MachineKey değerini yazarak çözüyorduk. Asp.Net Core da ise sanırım kriptolama için kullanılan keyler "Kayıt Defteri Düzenleyicisi" nde saklanıyor. Data protectionı apiyi denedim baktım olmadı. Sonra uğraşamam dedim. Kendim bastım verileri redis e.
3-) Önemli. CSRF koruması için yine kendim bir çözüm yaptım. @Html.AntiForgeryToken kullanmıyorum. Neden çünkü aynı muhabbetten. 2 farklı server var. Asp.Net Core ve Asp.Net üzerinde bulunan [ValidateAntiforgeryToken] attribute u cookie de bulunan değeri alıyor bunu anahtar ile açıyor.Ama Asp.net Core da; data protection api kullanmazsan ve user önce 1 numaralı server a istek atarsa, karşısına bir form gelirse, sonra forma bilgilerini girerse ve kaydet derse bu seferde istek 2 numaralı server a giderse sıçış. Patladı. Ben de sisteme giriş yapmış her kullanıcı için, her ekranda ayrı kod üretiyorum. Bu kodları da rediste saklıyorum.
Diyelim senin üye id değerin 35. Yapılacak işlem "passwordChange". Kod DH736GXHD736EPPO92QWE0832U
Bunu redise Key = 35passwordChange Value = DH736GXHD736EPPO92QWE0832U olarak kaydediyorum. Sen şifre değiştirme ekranını ziyaret ettiğinde
http://prntscr.com/sb3x87 şeklinde 1 tag helper html içine gizli bir input gömüyor. Sonra birde kendin bir Filter yazıyorsun her requestte htmlden gelen veri ile redisteki veriyi karşılaştırıyorsun. Tabi burdaki key her requestte değişiyor. Dilersen cookie de kullanırsın aslında ama ben doğrudan Redis kullandım.
Yani redisi bir nevi merkezi RAM(Bellek) olarak kullanıyoruz. Zaten mantığı da o.
Userların dinamik olarak değiştirdiği kısımlarda kullanmak mantıklı mı?
Evet kesinlikle mantıklı. User interface ayarları olur. Renk seçenekleri. Her requestte gönül rahatlığı ile gidip bakarsın. Roket gibi çalışır.
Token refresh muhabbetleri içi
Evet mantıklı. Tam kullanmalık senaryo.
replika kullanımı ne kadar önemli eğer veriler bir süre sonra silinecekse
Veriler silinecek diye bir şey yok. Rediste her 30 saniyede 1 veya 20 saniyede 1 diske yaz gibi seçenekler var. Yani redis kapanıp açılsa dahi, sen verilerine aynen erişiyorsun. Tabi bunu yaptığın zaman performansa olumsuz etkisi oluyor. Diyelim replika yapmadın. Bence çok ciddi bir proje değilse gerek yok. Bu durumda eğerki authentication amaçlı redis kullandıysak, ne olacak? Oturumlar gitti insanlar tekrar login olacak tekrar giriş yapacak. Veya sen web api için token saklıyorsan bu web apiyi kullanan cihazlar 3-5 dakika çalışmayacak. Artık önem derecesine kendin karar vermen lazım. Redisi çalıştırmak ve deploy etmek için; scalegrid.io yu kullanabilirsin. Ben orayı kullanıyorum.
ayrıca subscribe olayını web tarafında hangi alanda kullanacağım.
Redisin bir diğer kullanım alanı da chat uygulamalarıdır diyebiliriz. Aslında chat uygulamaları pub/sub olayından bağımsız. Ama beraber bir örnek verecek olursak. 20 kişilik bir chat odasında birisi yeni mesaj yazdı diyelim. Sen bunu redis ile subscriberlara dağıtabiliyorsun. Telegramdan bildirim atarsın mesela kendine. Yani her türlü tetikleme senaryolarında redis pub/sub olayı kullanılabilir. Chat amaçlı 4 sene önce kullanmıştım. Şimdi ayrıntısını hatırlamıyorum ama kullanım alanı olarak doğrudur.
bunun haricinde nerelerde kullanmak mantıklı?
1-) Efsane derecede erişim hızı gerektiren her türlü veri.Bir nevi merkezi bellek. (Auth session bilgileri, user settings, custom Csrf koruması vb.)
2-) Full Page Cache. Mesela php ile uygulama yazmış olsak orada .Net te olduğu gibi RAM üzerinde bir şey saklama olayı yokya. Sayfa çıktısını doğrudan redis e yaz. Bizde [Outputcache] attribute u var. Kullanıp geçiyoruz. Ama php için olmazsa olmaz bence.
3-) Pub/Sub muhabbeti ile chat veya notification sistemleri. Gerçi Pub/Sub olmadan da chat yazarız istersek.
4-) Queues yazmışlar internette. pub/sub ile birlikte implemente de edilebilir sanırım. Hiç denemedim bilmiyorum. Ama işleri sıraya koymak için baya bir örnek yapmışlar.Python vs. farklı farklı dillerle.
5-) Anket, stat , like , dislike muhabbetleri. Bir anket açarsın 1 saat sürecek. insanlar çılgınlar gibi oy verir. Oy verildikçe gider sorted set e yazarsın. Zaten rediste bulunan Sorted Set veri türü bu amaçla kullanılıyor. https://redis.io/topics/data-types. En son 1 saat bitince gider sonuçları veritabanına yazarsın. Bu use case için internette "Leaderboard" kelimesini kullanmışlar. Şahsen bu amaçla kullanmadım hiç.
-
Vuexy olan varsa son versıyonu atabılır mı acaba
