@Hannibal_King, hocam yanlışın var. Reacti seo hizmeti yapmayacağın her projede kullanabilirsin diye düşünüyorum. Projenin başında mimariyi kurunca biraz vakit kaybı oluyor ama ondan sonra o kadar basit oluyor ki herşey. Single page olduğu için sayfa 1 defa yükleniyor. Ondan sonra her seferinde datayı sunucudan çekmiyorsun. Yük client de sadece api çekiyorsun. Sunucundaki yük inanılmaz derece artıyor. Yani sunucunun yükünü azaltmak için çok yntem var evet. İşte ne bileyim cache olayları vs. React ile projeyi yazdıktan sonra geliştirmeyi çok rahat yapıyorsun. Artısı çok fazla. React ile server side rendering yapman da mümkün diye biliyorum... Razor, blade vb enginelerin olayı react, angular gibi frameworklerden farklı. 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!

@musdawdaf hocam cok cok tesekkürler olaya bambaska boyut kattin. Ozellikle bu tokenlardaki acikalamalarin yol gsterici oldu benim icin. Güvenlik isini siki tutmam gerek. DB yi hem disari kapatmam hem de yedeklemem gerek. Müsterilere esit hizmet sunacagim bu proje icin. Firma ya da bireysel paket olacak, baya bir kapsamli isler var :) projenin lisanslama tarafini ben zaten nodejs ile yaptim, sanirim onu kullanacagim. Ama web servis tarafini da asp. net core ile yapmaya karar verdim. Linux makinelerin avantaji fiyat, windows makinelerin avantaji ise benim icin bilindik olmasi. O yüzden bilmedigim bir deryaya girip risk almak istemiyorum. Cloud czümler üzerinden gidecegim. hetzner firmasini cok nceleri incelemistim.. windows sunuculari oldugu aklimdan cikmis. Yine de hala ne icin cloud ne icin vps-dedicated server kullanacagima karar veremedim. Dedigin gibi sirket sitesi icin cok büyük seylere gerek yok. Onemli olan webservis ve database. NodeJS ile yazilmis admin panelini+license management systemini de eklerim, bunun icin iyi linux bir czüm sorun olmaz. Suan bu sistemi calistigim sirketin, windows serverina kurdum. Cok fazla is yükü yok, suan 150-200 kisinin lisansini kontrol ediyor ama bu sayi katlanacak. Cünkü yaptigimiz ürün dünyadaki bir cok ülkeye pazarlanmaya basladi.. Benim yapacagim uygulama da bir nevi byle olacak, isvicre icin hedefim 1000 müsteri, AB ülkeleri icin ise daha fazla olacak ama o sonraki asamalarda. GDPR nemli yer kapliyor. Isvicre de kabul etmis GDPR kurallarini ama tek basina yeter mi bilmiyorum. Daha nce yazdim, kisisel verilerin isvicre'de tutulma zorunlulugu gibi bir sey var ve bunlar da 3. kisilere gsterilmemesi gerekiyor. Ama yine de cok bilgim yok, dedigin gibi belki bir avukat ile konusmak lazim. Düsündükce daha cok seylerin farkina variyorum ve gittikce derinlesiyor bu da korkutuyor beni :) Tek basima bunlari yaptigim icin, isim daha zor. Ama byle olmasi bi yandan da iyi, daha cok motive ediyor ve daha cok sey grenebiliyorum. Web konusunda bilgim kisitli, daha cok desktop vemobil yazilimlari ve elektronik iyi biliyorum ama web tarafina da baya girmem ve cok ynlü düsünmek zorundayim. Buradan tecrübeli arkadaslarin bilgilerinden faydalaniyorum. Tesekkürler gercekten :) Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

MhmdAlmz bunu yazdı Eğer Input ve Output lar aynı olacaksa tek bir API Yazıp webde ve mobilde aynı apiyi kullanmalı bende onu sylüyorum. Ayrı bir dosyaya gerek yok. Peki hocam ben bu api'yi MVC catisi altinda yapsam, websitesi buradan kullansa, ve mobil de sadece API'yi kullansa ne olur? Avantaj-dezavantaj kismini merak ediyorum Ekstra efor olur. Ek olarak X bir işlemi yaptın mantıksal değişikliliğe gideceksin. Hem mobil API hemde web API değişecek her şeyi çift yapacaksın neredeyse. Benim yazdığım MPA komple AJAX ile çalışıyor. API'leri hep tek yazdım eğer ortak verilere sahipse. 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!

@MhmdAlmz hocam olay login degil, unut logini :) rnek verdim onu sadece.. Bi nceki mesajimda mesela tüm grencilerin listesini gstermek istiyorum. Bunu hem web tarafinda hem mobil tarafta yapmak istiyorum. Kurgu nasil olmali onu soruyorum. Mobil taraf belli servisi kullanacak Ama web tarafi ne olacak? API projesiyle ayni yerde mi yapayim, byle yaparsam direk business classslari kullanacagim. Yok ayri proje olacaksa o zaman o da ayni mobil projesi gibi web servisi kullanacak :) anlatmakta ne kadar bu kadar zorlaniyorum.. @coder2 anladigim kadariyla vue. js basit.. Ona bakayim hocam. Benim takip ettigim bir kanal var the net ninja diye. . onun vue videolari vardi ona bakarim. Kolayca adapte olurum. hangi panelleri satin aliyorsun stres test icin? bilgi verir misin? Cevap icin tesekkürler Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

Unbalanced hocam selamlar. Asp. Net Core Mvc ile yazman durumunda ben yine Windows bir makina kullanmanı tavsiye ederim. Çünkü Asp. Net Core da hosting olayı in-process ve out-of-process diye ikiye ayırıyoruz. Okuduğum kaynakların çoğunda ın-process ın daha performanslı olduğu yazıyor. Zaten mantıkende yle olması lazım. Linux makine kursan apache webserver olsa bu sefer içerde kestrel ismini verdiğimiz sunucu apache ile konuşacak. Tabi kestrel bizzat kendisi 1. web server grevi de grebiliyor ancak benim tercihim IIS. zetle ben Windows makine + IIS + Asp. Net Core Mvc diyorum. Windows için kesinlikle UpCloud. Forumda konusunu dahi açtım. 1 yıldır kullanıyorum. https://www.tahribat.com/forum/ucretsiz-35-dolar-vps-kredisi-242437 2 Cpu + 4gb ram + windows lisansı = 30 dolar aylık lokasyon frankfurt seç bence. Veritabanı içinde Amazonun Rds lerini kullanıyorum. MySql var 2 gb ramli bir makine 37 dolar aylık. Multi Avability Zone yaparsın. 2 x 37 = 74 dolar verirsin. Down falan olmaz veritabanı. Multi AZ ye ve Amazona güvenebilirsin bence hocam. Ayrıca sürekli otomatik snapshot alınıyor. Panelden grüyorsun. ScaleGrid.io isminde bir firma var yine amazon üzerinden hizmet veriyolar ama adamların iddaasına gre 2-3 kat performanslı. https://scalegrid.io/ bunların amazondakinden farklı bir master - slave yapısı var sanırım. İlk fırsatta bunlarınkini deniycem. Aynı dediğin şekilde bende nemli verileri şifreliyorum yle veritabanına kaydediyorum. Şifreleme işlemini upcloud frankfurttaki makinada yapıyorum. Amazondaki nemli verilerim şifreli. Google bence kullanma sorun olunca bittin demek. Kullandığım bir kartım vardı google playde kayıtlıydı. Sonra kartı çok fazla yere kaydettim unuttuğum üyelikler olabilir diye bankayı aradım iptal ettim. Bunun üzerine Google cloud hesabını sorgusuz sualsiz kapattılar. Birsürü mesaj attım hep otomatik mesaj geliyor cevap olarak. Politikaları gereği açıklama yapmak zorunda da değiller. Yani kesinlikle google ın cloud hizmetini kullanmam. Eve raspberry pi alır onun içinde barındırırım daha iyi. Güvenlik için; Asp. Net zaten birçok güvenlik nlemi bizim için alıyor. Aklıma ilk aşamada gelenler formlara CSRF saldırılarına karşı token yerleştirmek. Zaten asp. net te var. Ayrıca proje biitiği zaman asp. net projeni obfuscation yap yle sunucuya at hocam. Sonuçta cloud. Ve hatta şifreleme yapan kısmı C++ veya C ile yazıp projenden yle çağırsan dahada güzel olur. Makinaya birisi sızsa dahi nasıl şifreleme yaptığını anlayamasın. Websitesi için ve admin paneli için tema nerisi yapabilirim. Eğer frontend kısmı ile çok ilgili değilsen; https://themeforest.net/user/pixelcave bu elemanların yaptığı admin panellerinden birini kullanabilirsin hocam. Mobilde çok başarılı bir grünüme sahip temalar. Kurumsal site içinde yine hazır tema alıp editleyip asp. net core da yayınlamanı tavsiye ederim. Angular, react vs kullanma bence gerek yok. Zaten server side rendering yaptığımız zaman elimizde Razor gibi harika bir view engine var. Gerekli olduğu takdirde yalnızca Vue. js belli noktalarda kullanılabilir bence. Hani tüm veriler apiden gelecek olsa, ham veri gelse onu render edecek olsan tamam bir js framework olsun ama eğer yle değilse zaten razor ile server side rendering yapıyoruz. Son olarak resim ve video için Amazona alternatif https://cloudinary.com/solutions bunuda koyayım. SSL almasanda zaten cloudflare sana ssl veriyor hocam. https://sucuri.net/ buda cloudflare alternatifi

Yazan arkadaşların birçoğu hatta hepsi yazılım konusunda benden kat kat bilgili insanlar. Muhtelif konularda bana birçok defa yardım ettiğiniz için olsa gerek birşeyler yazma gereği hissediyorum. Frontend kısmında Vue. js kullanmanız performans açısından ve zaman açısından faydalı olacaktır. Temel JS bilginiz varsa dkümantasyon üzerinden çok rahatlıkla ilerleyebilirsiniz. Güvenlik konusunda kesinlikle CloudFlare kullanmanızı tavsiye ederim. Bazen müşterilerim için stress test lerine kullanmak için ddos saldırısı yapabileceğimiz paneller alıyorum ve cloudflare olmayn web siteleri birkaç saniye içinde kapanıyor. nceleri Kızlar Utanınca Kızarırdı Şimdilerde Kızarınca Utanıyorlar..

Cevaplar icin cok tesekkürler hocam :) eline koluna, yüregine ve emegine saglik 1- c/c++ ile yaz demeni anladim ama asp. net core icinde nasil kullanilir bilmiyorum ama o kadar da kasmaya gerek yok :) obfuscation yeterli olur.. Babel kullaniyorduk sirkette, onu kullanirim.. Bahsettigin upcloud to amazon olayi güzelmis :) 2-3- anladim hocam bu validation olayini ya da sql injection vs. Teorik ve biraz pratik bilgim var. Hatta uyguladim, hatta ajax tabanli bir tane validation da yazmistim ve custom membership ve role provider yazmistim asp. net mvc ile.. Ama sonra webten uzaklastim :) 4- bu syledigin cok hosuma gitti. Biliyordum ama aklima gelmedi :) bu baya güvenli yapar hocam tesekkürler :) 5- evet bazen tbt'de grünüyor, cs dosyalarinin yolu bile belli oluyor :) onla ilgili de arastirma yaparim wordpress hosuma gitmiyor hocam, ama kafamda taa eski wordpress var.. Dedigin sey güzelse bakalim hocam :) Ama ücretli vermissen, güzelse satin alirim sorun yok :) diger templatelerini de bekiyorm ayrica. son yazdigin seyi anladim hocam ama kücük bir sorum olacak. Ben angular ve react bilmiyorum grenme niyetimde pek yok ama mecbur kalirsam grenirim. SignalR'i bu sekilde kullanmam mümkün müdür? Ya da push notification tarzi bi sey kullanam mi? JS framework alternatiflerine bakiyorum yani. Tesekkürler tekrar. Kafamdaki tüm sorularin cevabini buldum sayilir. Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

https://www.tahribat.com/forum/themeforest-html-temalar-27-adet-28-aralik-2019-244015 Hocam temalar burda, google slide, email template, image cropper gbi harika seyler de var. Konusunu açtım. Js hakkında detaylı olarak yazacağım.

He aklıma gelmişken Google Cloud alabilirsin demoları yayınlamak için. 300$ yıllık hediye kredi veriyor aylık 30$ sunucu alsan 10 ay kullanırsın. Sil boz tekrar yükle sil boz tekrar yükle sıkıntı yok. 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!

Güvenlik üzerine aklıma gelenler 1-) Uygulamanın obfuscation edilmesi Diyelimki UpCloud üzerinden Windows makina aldın ve Amazonda da veritabanı var. Son kullanıcılar verileri UpCloud da bulunan makineye gnderiyorlar, bizim uygulama da bir method olsun AES şifreleme yapsın. Bu method verileri şifreliyor ve veritabanına Amazona gnderiyor. Bu durumda amazondaki veritabanı çalınmış olsa veriler şifreli Aes ile sıkıntı yok. Salt veri yok. Ancak UpCloud da çalışan bir teknik eleman senin windows makinene erişebilir. Bu durumda uygulama. net core ile yazıldıysa eğer, dnSpy yükler. dnSpy ile senin kodunu açar. https://github.com/0xd4d/dnSpy/releases Ne var ne yok tüm kodlarını grür, Aes secret key, kullandığın apilerdeki tokenlar, mailgun kullanıyorsundur mailgun secret keylerini grür. Çzümde uygulamayı obfuscate etmek olabilir. Ücretli ve ücretsiz obfuscate araçları var. Veya kodun nemli olan bazı kısımlarını C++ veya C ile yazıp, . Net Core uygulamamız içerisinden çağırmakta buna bir çzüm olabilir. Çzüm demeyelimde saldırganın işini zorlaştırır. 2-) Kullanıcının girdiği her türlü veri tehlikelidir mantığı Web uygulaması geliştirirken kullanıcının uygulamaya gnderdiği her türlü veriyi tehlikeli sayarız. Altın kural bu. Asp. Net bu konuda bizi daha fazla koruyor. Elimizde 2 adet junior web developer olsun. 1 tanesi php ci diğeri asp. net. Bunların bilinç seviyeleri aynı olsun. Bu iki developer bir editor ile makale içeriğini alıp veritabanına kaydedip sonrada ekrana basacaklar. Bildiğim kadarı ile pure php de bizim zel karakterleri gndermemizi engelleyen bir yapı yok. Yani ben editr alanına "<script>location. href='siteadi.com'</script>" yazsam. Site sıçtı. Ancak asp. net default durumda buna izin vermiyo. Bunu yapabilmen için ValidateInput False diye attribute ekliyosun methodun başına. Veya php ci adam CSRF koruması için bir framework kullanmıyor ise kendisi implemente etmek zorunda, ancak asp. net te html formuna gelip @Html. AntiForgeryToken yazıyoruz html formunu handle edecek action methoda da yazıyoruz. 2 satırda iş tamam. Buna benzer rnekler çoğaltılabilir. 3-) Eksik yapılan yetki rol kontrolleri Mesela bir admin panelin vardır. Bizlerde müşteri olabiliriz. Ben müşteri olarak panele girerim. Bir hizmet veya ürünü sil derim. Atıyorum silme işleminden nce o ürün gerçekten bana mı ait yoksa bir başka müşteriye mi ait bunun kontrolunun yapılması lazım. Burada da yine kullanıcıdan gelen tüm veriler manipüle edilmiştir gibi düşünüyoruz hep. 4-) Yalnızca izin verilen ip adresleri sisteme erişebilir. Burada amazondaki veritabanı için yalnızca upcloudda bulunan makina erişebilsin diyebilirsin. Aynı şekilde windows server a da yalnızca belirli ip adresleri erişebilsin vs diyebilirsin. 5-) Hata sayfalarını gizleme Burası nemli; uygulamada bir hata olusunca default bir hata sayfası olur onu gsterirsin asp. net mvc de web. config dosyasına customErrorsMode="on" yazıyorduk ancak. net core da incelemedim henüz. Aklıma gelenler bunlar şimdilik hocam güvenlikle alakalı. Şirketin kişisel sitesi için avada isminde orjinal wordpress tema lisansım var. Sana onu verebilirim zaten kitap alışverişinden sana borçluyum. Bahsettiğim tüm html temalarını ayrıca konu açıp yükleyeceğim oradan indirirsin. Kurumsal html temaları da koyacağım. Js Hakkında Okuduğum ve Sevdiğim bir makaleden çıkarım yapayım.. Şimdi ui kısmında çok fazla değişen miktarda grsellik varsa rneğin chat ekranları bildirim ekranları canlı canlı log basma vs vs. İşte bu durumlarda client side rendering yaptığımızda state ynetimi amaçlı js frameworklerı tercih ediliyor. State ynetiminden kastımız şu javascriptte nesne ve dizilerde bulunan elemanların html de oluşan grüntü ile senkron olması. Mesela javascriptte bir dizin var 5 elemanlı. Yukarda navigation barda bildirim cubugunda 5 yazıyor. Sayfa yenilenmeden refresh olmadan serverden js dizimizi güncellediğimiz zaman bu durumda navigation bardaki bildirim cubuguda kolayca güncellensin istersek js frameworkler imdadımıza yeetişiyor. Tüm state ynetimi onlara geçiyor. Sen tek tek olay ataması yapmıyosun vs vs... Yoksa ui kısmı dinamik değilse, anlık değişim olmazsa hiç bulaşma angular, react vs vs https://medium.com/dailyjs/the-deepest-reason-why-modern-javascript-frameworks-exist-933b86ebc445 burada eleman açıklamış. Okumakta fayda var hangi sebeple js frameworklerın tercih edildiğine ynelik. Yardımcı olabildiysem ne mutlu bana hocam. Senin burda yardım etmediğin insan yok :)) Başka sorular varsa bildiğim şeyleri paylaşırım hocam web e dair.

He aklıma gelmişken Google Cloud alabilirsin demoları yayınlamak için. 300$ yıllık hediye kredi veriyor aylık 30$ sunucu alsan 10 ay kullanırsın. Sil boz tekrar yükle sil boz tekrar yükle sıkıntı yok. evet google un kredi olayini da biliyorum hocam.. Henüz karar veremedim neyi kullanacagima.. UpCloud'u da incelemek istiyorum bakalim. tesekkürler Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

@MhmdAlmz hocam elbette isterseniz Reactı tüm projelerinizde kullanabilirsiniz. Ancak benim sylemek istediğim şudur; Js frameworklerinin ortaya çıkmasındaki temel sebep state managementtır. rneğin React niçin ortaya çıktı? Facebook anasayfa üzerinde çok sayıda sürekli olarak güncellenmesi gereken alanlara sahipti. Sayfa yenilenmeden chat blümü, zaman tüneli, bildirimler hepsi sürekli güncelleniyordu. İşte burada bize veri geldikçe UI otomatik olarak güncellensin dediler. Bu sebeple React benzeri frameworkler ortaya çıktı. https://www.freecodecamp.org/news/do-we-still-need-javascript-frameworks-42576735949b/ bu veya buna benzer makaleleri okursanız Synchronization of state and view gibi gerekçeleri grürsünüz. Yani Js frameworkler insanlar kolayca Single Page Application yapabilsinler diye üretilmediler. Yoksa bir framework e ihtiyaç duymadanda Single Page Application üretilebilir. rnek; https://dev.to/itnext/do-i-really-need-a-spa-framework-3occ kodları da burada https://github.com/softchris/vanilla-spa/tree/master/frontend. Eğer bir framework ile SPA oluşturmak istersek Vue, React veya Angular bu kadar popüler olmadan ncede başka birsürü framework vardı ve yine SPA lar oluşturulabiliyordu. Yani eğer şyle dersek daha doğru olur; "Js frameworkler Single Page Application yapımını kolaylaştırır." Çünkü içinde bir takım bileşenler vardır; Routing, Component, Template vs vs... Mesela ben hayatımda hiç Single Page Application yapmadım. Multi Page Application yaptım hep. Ancak neredeyse tüm uygulamalarımda Vue. Js kullanırım. Neden çünkü illaki bazı ekranlarda veri akışı fazla oluyor işte bu gibi durumlarda kullanıcı sürekli sayfayı yenilemesin, iyi bir kullanıcı deneyimi ortaya çıksın diye yükü javascript e yüklüyorum. Vue. Js yardımı ile durum ynetimini ve UI güncellemelerini yapıyorum. Elbetteki seninde dediğin gibi Razor ve Js Frameworkleri farklı kulvarlarda. İşte bende o sebeple diyorumki @unbalanced hocam eğerki çok değişken ve sürekli canlı verinin aktığı ekranlara sahip değilse, bu durumda razor işini çok güzel grecektir. Yani tüm rendering işi server side da olacak. Ancak olurda zaman zaman client side rendering yapmak isterse bu durumda da Vue. js i minimal düzeyde kullanabilir. Yine tamamını ğrenmesine gerek yok. unbalanced hocamın signalr sorusuna istinaden; Hayır signalr ı js frameworklerinin yerine kullanamazsınız. Signalr ile realtime verileri taşıdınız tamam. Ama onu bağlama işini bir js frameworkü ile yapmanızı tavsiye ederim veya Pure Javascript. Sonuçta client side rendering yapıcaksınız. Diyelim canlı chat yapıyorsunuz. Signalr veriyi getirecek mesela sonra bu veriyi javascript ile ekranda gstereceksiniz. Webservis sorusu için Direk js ile webservisi çağırabilirsiniz hocam. Çünkü eğer nce sunucuya istek atarsanız şyle olacak; browser -> sunucu -> api ancak siz direk api yi çağırırsanız browser -> api olacak. Doğru anladıysam eğer soruyu sanırım bunu sormak istediniz.

@Hannibal_King hocam amacım ukalalık etmek değil. Sadece tartışıyoruz elbette benden daha tecrübeli ve bilgilisindir. Bunun bilincinde tartışmayı devam ettirelim. Şimdi benim de bir çok projemde sayfada sürekli veri değişiyor. Hatta bende bir panel var https://muhammedalmaz.com/urunlerim/alkosis/#Operasyon. Buradaki operasyon ekranı var ya her şey hemen hemen her şey Socket. IO üzerinden geliyor. Tüm datalar hepsi real-time orada grdüğün siparişlerden tut Oradaki üstünde 2-3-4 yazan renkli buttonların rengine kadar Bunu ben tümüyle JQuery ile yaptım. React bilseydim React ile yazardım. Şimdi React'in avantajları nedir. Component olayı. Şimdi bildiğin Class bir obje yaratıyorsun ve bunu dilediğin ekrana ekliyorsun. ne bir UI ile uğraşıyorsun nede bir KOD ile. yani bir class'ı 1 kere yazdığında başka kod eklemene gerek yok. Buda sana hız kazandırıyor. Bunu tabiki normal bir JQuery+HTML yapısında da yaparsın. Gidersin footer'a bir script yerleştirirsin bu script ile o ui çağırırsın. Yada Razor ile oluşturduğun ufak HTML Dosyasını sayafnın içine include edersin. Aynı işi grüyor günün sonunda ama birisi direkt kendi yapısı diğerinde uğraşıyorsun ve global bir değişiklik yaptığında React de bir tarafı değiştirirken bazı durumlarda yazdığın JQuery+HTML dosyasında bir çok yeri değiştirmen gerekebiliyor. Onun dışında HTML Objelerin diffini alıyor. Sen bir sayfanın state güncellediğinde eğer nceki ve sonraki state aynı ise sayfada bir güncelleme olmuyor. Bunun dışında tüm yük Client da ki bence bu çok iyi bir şey. bür türlü sürekli IIS veya Apache ve Nginx den sayfayı çekiyorsun... Bunun avantajı da var. Yani anlamak istediğim senin de dediğin gibi gerçi. React'in yaptığını HTML+JQuery ile gene yaparsın. Ama bir tarafta tamamen bunun için yapılmış bir Framework varken diğer tarafta normal bir HTML+JQuery yapısı ile senin kendi kurguların var. Yani mesela bir MVC mimarin var dotnet. Her sayfaya bir şey eklemen gerekiyor. Sayfaların içerisinde de public dosya yok. Yani header yada footer gibi bir dosyayı include etmiyorsun yada buralardaki kodlara koymak işi çzmüyor. Bu durumda ne yapacaksın? Her dosyaya tek tek gidip kodu eklemen gerekiyor ama SPA da index dosyasına ekledin mi iş bitiyor. Ek olarak da rneğin sayfanın ortasında bir modal açtırıyorsun ve bu yapı bir çok yerde işine yarıyor. İhtiyacın olan ekranlarda bu modal'ı import edip kullanabiliyorsun . Birde şyle bir şey var SPA da rotuing işlemlerinde sayfa refresh olmadığından çok daha hızlı reaksiyon veriyor ekranlar. MPA da her seferinde son kullanıcı sayfayı render ettiğinden biraz yavaş hissiyatına bürünebiliyor. Ek olarak adamın interneti yavaş. adam sadece 3-5 TEXT grecek bunu API ile rahatlıkla çekebiliyor. MPA kullanan adam için sayfayı tekrar refresh ettiğinde bu adam bekliyorda bekliyor. Fakat SPA olsaydı sadece API de istekte bulunup çok ufak TEXT'leri çekebilir. SPA hız açısından MPA dan çok daha hızlı bunun tartışmasını zaten yapmıyorum. Sen MPA yazdın gittin bir kütüphane buldun Mozilla da desteklemiyor kütüphane. Fakat SPA da kodlar direkt Pure Javascript'e dndüğü için bir çok browser da çalışıyor zaten. Sen MPA yazdığın için bu versiyon uyuşmazılığından muzdarip oluyorsun. Çok fazla MPA Projesi yazdım 1 defa başıma gelmişti zaten. Pek başımıza gelecek bir durum değil ama bu da bir problem. SPA teknolojileri ile çok rahatlıkla Design Patterleri uygulayabiliyorsun. rneğin Redux+Redux Thunk ile MVI mimarisini uygulayabiliyorsun stateleri componentlere map ederek kullanıyorsun. Sen apilere istek attığında çok rahatlıkla sayfalarını ynetebiliyorsun. JQuery ile her seferinde Ajaxlar ile kontrol edersin. Fakat sen tüm sayfaya tek bir dosya içerisinde hakim olduğundan her türlü işlemi yapabiliyorsun. Daha rahat yani. Bazı saldırılardan da kaçınıyorsun bu durumda XSS gibi. Yani hız kalite bakımından SPA nın MPA dan daha iyi olacağını düşünüyorum. Yani bir adamın web sitesini açtığında bir uygulama gibi yada bir masaüstü program gibi davranması hem son kullanıcının gzünü boyuyor hemde geliştirme yaparken componentleri yazdıktan sonra gerisi çok daha kolay oluyor. Bence yeni teknolojilerin kullanılması yeni bir start-up için gayet ideal bir seçim. @Unbalanced, Olay şu. Login olduktan sonra bir JWT tokeni aldık. Header den bunu gndereceğiz zaten içerisinde UserID vb datalar olacak Sen bunu zaten bir middleware ile yneteceğin için adamın tokeni yanlış, expired olmuş, banlanmış ile 401 -403 vb hatalar dneceksin. Bunu da client yorumlayıp ona gre login ekranına geri atacak falan. Şimdi bunun aynısını Web de de yapacaksın. Ajax ile login isteği atacaksın. Sana bir token verecek bu token'i localStorage veya cookie artık nerde tutmak istersen orada tutacaksın. Daha sonra ekranı ynlendirip yeni AJAX isteklerinde bu token ile gideceksin sunucuya tıpkı bir mobil uygulama yazar gibi. Ajax'ın header'ine her seferinde bu token'i ekleyip istek atacaksın auth işlemlerini mobildeki gibi web de yapacaksın. Mobilin aynısı yani abi. bu durumda sadece controller'in oluyor View yok. Mimari Modal->Controller oluyor. Çünkü viewlar artık senin için bir anlam ifade etmeyecek. Bu bahsettiğim mimaride SESSION vs yok. Dilersen session ynetimi de yaparsın MhmdAlmz tarafından 31/Ara/19 08:29 tarihinde düzenlenmiştir 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!

@MhmdAlmz hocam yle degil iste. API ler MVC yapisi altinda Controller tarafinda olacak ve mobil buna erisecek. MVC altinda oldugu icin View de bundan nasiplenecek ve harici bir api cagirmadan kendi controller classlarini kullanacak. O yüzdn ekstra efor olmasi icin bir sorun yok. Yani syle bi sey olacak. Bir tane MVC projesi yapiyorum ve ayni zamanda bu projeyi api olarak da kullanabilecegim. Mantiksiz gelmiyor bana? Ama asp. net core tarafinda cok bilgi sahibi degilim. Byle bir yaklasim iyi mi kestiremiyorum %100 @coder2 pattern olaylarini hallederim hocam. Her seyi Interfacelere yikacagim. Asp. net core'daki en cok sevdigim zellik ise DI kullanilmasi. Harici bir DI framework'u kullanmadan direk startup classi üzerinden, tüm interface-classlarini registir edip uygulamanin her yerinde kullanabiliyorsun. Ayrica middleware olayi da harika yapilmis. Benim cok hosuma gitti asp. net core ciddi anlamda. asp. net core 1.0 iken macOS'a kurdum ama o zaman cok zayifti ve ugrasmaya deger grmedim ama suan zellikle 3.0 harika cidden. Dikkat ediyorum da gere mobile gerekse webde cok iyi gelismeler oluyor. Isler acayip kolaylasiyor ve pratiklesiyor ve daha kisa zamanda daha iyi uygulamalar cikarilabiliyor. Xamarin alternatif flutter, asp. net alternatifi asp. net core.. DB olarak mysql kullanacagim. Performans acisindan dapper kullanmayi düsünüyordum nhibernate olarak ama EF core da sanirim hizli. Karsilastirmalarina bakacagim. EF core yapisi zaten cok uyumlu calisiyor. Contextini olusturup daha sonra migrate yapip DB'ni olusturuyorsun . Sonra da yaz kodu gitsin :) Diger grendigim bir sey de automapper :) Mesela EF'nin ürettigi bir class var , bu class'i kullanmak yerine kendi classini kullanmak istiyorun (mesela db de firstname ve surname farkli fieldler ama senin class'inda sadece name var ve first+surname birlesimini gstermek istiyorsun. Bu tür classlara surrounding class deniyor. Tüm propertyleri tek tek elle veriyorsun, su esit bu, bu esit su gibisinden. Ama automapper diye bir library var, otomatik olarak bu zelligi olusturuyor ayrica istedigin propertyler icin cesitli degerler olusturabiliyorsun .. Baya pratik seyler var.. Ogrendikce daha cok sevdim :)) Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

Abi kendim için konuşuyorum. Şuan 4 senedir geliştirdiğim proje üzerinden şu şekilde ilerledim. nce Azure dan Linux bir makina aldık 3 yıl nce. Fakat fiyatları pahalı geldi. Daha sonra Yoncu denen gereksiz firmadan ucuz bir linux makina aldık fakat saçma sapan hatalar alıyorduk açılmıyordu bazen sistem falan filan. Bu yüzden şyle bir karar aldık. 2 Tane RACK server aldık. Bunları ofise bir kabinet alarak yerleştirdik ve 2 adet internet hattı aldık. Biri GSM hattı ile çalışıyor diğeri sabit hatta çalışıyor. İnternetin gitmesine GSM Hattından intenreti çekiyoruz. Şimdi 1 tane RACK sunucuya ana projeyi kurdum. Bu sunucunun güvenliğini nasıl alıyorum. Bu sunucuların dışında bir adet firewall var ve bu firewall'a L2TP bağlantısı yapıyorum. Bağlantıyı sağladığım anda localağda olduğum için SSH vb erişimler açık oluyor. Firewall da dışarıya sadece 80 ve 443 portu açık. Onun dışında bir port yok dışarıya açık olan. Bu sayede gelebilecek SSH saldırıları bundan korunmuş oluyorum ve hiçibir şekilde bot ağına yakalanmıyorum. Bu sayede hem maliyet düştü hemde elimde 2 adet sunucu var. Biri gitse diğeriyle yoluma devam ediyorum MASTER-MASTER replication oluşturdum. Bazen bir sunucuyu bakıma alıp diğeriyle devam edebilmemizi sağlıyor bu. SESSION'lar vs hepsi JWT 'de olduğu için bunu Redis'e atıyorum. Redis'i de diğer sunucuya attığım zaman kullanıcıların oturumları da kapanmıyor . Geçenlerde şyle bir şey oldu Ana RACK sunucudaki power patladı 2 saat boyunca diğer sunucudan devam ettiler. Session / Kodlar ve DB eşit olduğu için 0 veri kaybı yaşadılar hemde. 2 sunucunun gittiği durumda da şyle oluyor. Bir adet Google Drive satın aldık ve her 15 dk da bir bu drive bağlanıp MYSQL DB yedeğini alıp rarlayan bir script yazdım nodeJS de bu dosyayı da en son Drive upload ediyorum. yani elimde her zaman son 15 dakikanın DB Si garanti olmuş oluyor Drive da. Diyelim ki sisteme sızdılar DB yi adam sildi DELETE Komutu ile. REplikasyon olduğu için 2 db deki datada gidecek. 15 dakika da bir sürü şey oldu geri dnersek zararımız büyük olur diye. Dışarıdan 10 $ bir makina aldık. Buraya mongodb kurdum. Tetiklenen her apiyi oraya log olarak yazıyorum. Yani bende bu zamana kadar olan tüm apilerin tetiklenme senaryosu var. İstersem sistemi kurup apileri tekrar tetikletip sunucunun son haline getirebiliyorum. Bunun dışında bir nlem almadım db ile ilgili. CloudFlare kesinlikle olmazsa olmaz bence abi hem senin IP Gizliyor hemde saldırı aldığın anda sunucun zarar grmüyor vs vs. Bildiğim kadarıyla senin domaine gelen tüm trafik nce cloudflare den geçip sonra senin sunucuya geliyor. Bu sayede tüm yükü aslında onlar çekiyor... Saldırıları vs de o nlüyor. Belki yılda 1 kere bile olmaz ama olduğunda hem itibar hemde para kaybın büyük olabilir. Olmaz deme direkt al. Şirketin sitesi bence kaliteli grünüme sahip olmalı. Baştan HTML olarak bir web sitesi yaptıabilirsin yada satın alıp editleyebilirsin. Admin paneli olmaması senin için avantaj daha sonra geliştirirsin. Bence lisanlamaları vs nodejs ile yaptı isen ordan devam et. DotnetCore Linux üzerinde çalıştığında sana ne gibi dezavantajı olacak onları araştırmalısın bence bilgim yok ama dezavantajı varsa bence nodeJS/GoLang gibi alternatiflere bakabilirsin. Start-up için open-source çok daha mantıklı lisans maliyetlerinden ziyade.. Gerçi bir çok şirket de opensource projelere geçti... Resim ve videolar için amazon bence çok iyi bir tercih olur senin adına. Amazonun resim servisleri var resimlerini orada tutabiliyorsun sana bir uniqueid gnderiyor ordan resimleri grebiliyorsun. Ek olarak yedekleme sıralarında resimlerle uğraşmıyorsun. Fiyatları da gayet makuldü sanırsam... İlk aşamalar içinde bence 10-15$ lık bir makina alabilirsin diye düşünüyorum hem linux ğrenmiş olursun hemde linuxun 3-4 GB RAM 1-2 CPU ile neler yapabildiğini herkes biliyordur. Windows'un güncelleştirmeleri başlı başına sorun zaten :D Anlatmaya gerek yok. Güvenliği arttırmak istiyorum diyorsan gnderidğin datayı birde sen şifreleyebilirsin. Bu konuyu bende @rakkoc dan ğrendim. SSL'in de paypass edilidğini sylüyorlar bilmiyorum. Şuan çalıştığım yeri biliyorsun. Bizim yazdığımız uygulamada 2 key var elimizde. Her login olduğumuzda dataları gndermek için şifreleme yapacağımız key birde public key var bu key ile şifreli datayı onalra veriyoruz onlar sunucuda bu JSON objeyi açıp apileri çalıştırıyorlar. Bu sayede araya giren kişi SSL geçse bile senin key'i bulması gerekiyor o şifrelenen datayı açması içinde. Şifreleme algoritması için de SHA-256 kullanıyorlar. DB için loglarını kesinlikle mongoda tut. MYSQL De de INNODB kullanıyorum ben myisam vs de kullanabilirsin. MYSQL'i MYSQL Yapan engine olayı. Engine olayına gre mimariyi değiştirebiliyorsun. Mesela birinde insert işlem çok hızlı diğerinde select işlemi hızlı ama insert işlemi anasını ağlatıyor . Onun dışında sen daha bilgilisin bu konuda :P Mysql için engine nemli. Linux için de elimden gelidğince destek olurum. Kurulumlar hatalar Sana kesinlikle tavsiyem şudur. Eğer kaliteli ürün çıkarmak istiyorsan kesinlikle React/Angular vb. front-end teknolojileri kullan. Hem zaman olarak daha kısa sürede proje bitiyor hemde sunucudaki yükün çok fazla azalıyor. rneğin. NET MVC bir proje oluşturdun headerde bildirimleri çekiyorsun. her sayfa reload olduğunda DB ye sorgu atman gerekiyor React olunca En dış componentte bir defa çekiyorsun iş bitiyor. Bir daha ne zaman çekmen gerekirse o zaman çekiyorsun. Mobil gibi düşün. Sanki MainActivity de datayı çektin de Obversable gibi bir tane View değiştireceksen view'a datayı şutluyorsun gibi düşün umarım anlatabildim. Hem senin sunucunun yükünü azaltacak hem projeyi hızlı çırakcaksın . Ve geliştirmesi çok daha rahat olacak. Geleceğe yenlik en iyi yatırım bu olur. Mobil için de ReactNative yada Flutter yaz kesinlikle. Eğer komplike bir şey yapamyacaksan. Ve sunucu alırken şunu kesinlikle düşün. Yav 10 GB ram olsun az olmasın fazla olsıun deme. Her zaman ihtiyacın kadar al sonra yükseltirsin zaten cloudlar bunu destekliyor. Rahat rahat sunucunun yüküne gre sunucunun kapasitesini arttırırsın. 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!

Selam arkadaslar Normalde webci degilim ancak sartlar geregi bazen el atmak zorunda kaliyorum. Asp. net/asp. net mvc ile biraz calistim, daha sonra nodejs ile ve suan asp. net core'a gecmis bulunmaktayim. Kendi firmam icin ürün gelistiriyorum ve bir kac sey icin bir cesitli czümlere ihtiyacim var 1- sirketin sitesi 2- ürünlerin admin paneli 3- Web servis bunlar haricinde resim ve videolari tutabilecegim bir yer ne nerirsiniz? CDN mantikli mi? Asp. net Core, cross platform calistigi icin linux tabanli bir cloud czümü isimi grür diye düsünüyorum ancak kolayca halledebilmeliyim cünkü linux tecrübem cok yok. Aklim digital ocean'daydi ama emin olamadim.. Azure'un maliyetli olacagini düsünüyorum, ya da ilk asamada gereksiz oldugunu.. Baska alternatif olarak ne neririsiniz ve ortalama maliyet bicer misiniz? (pay as you go tarzi bir paket mi seceyim yoksa fix paketler mi . Güvenlik cok ama cok nemli ve verileri tutmak da yle. Oncelikle bir SSL sertifikasi satin alacagim, güvenlik icin saldirilara karsi neler nerirsiniz zellikle webservis icin? Cloudflare ise yarar mi . JWS token kullanmayi düsünüyorum. Ayrica bilgileri sifreleyip db'ye kaydetmeyi düsünüyorum en azindan bazilarini. Veritabani olarak her ne kadar firmada noSql czümü olarak mongodb kullansam da, icime sinmedi kendi projemde kullanmaya. MySql üzerinden devam etmek istiyorum ama büyük firmalar gibi kismi olarak nosql'de tutabilirim. Ama yedekleme sistemim harika olmali, cünkü dedigim gibi veriler cok nemli ve bu konuda sorun yasamayi hiic istemiyorum. Yukaridaki sorulardan bildiklerinize cevap verebilirsiniz ve bunlar disinda nereceginiz, dikkat etmem gereken kisimlar nelerdir? Her türlü neriye, bilgiye acigim. Uzmani olmadigim bir alan, o yüzden nümü grmek adina fikirlerinize ihtiyacim var. Bunla ilgili kitap-video vs de tavsiye edebilirsiniz. Tesekkürler Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

tekrar tesekkürler hocam temalar icin. Aklima bir soru geldi gece gece onu da sorayim.. Simdi benim kafamdaki modele gre web ayagi 3 kisimdan olacak 1- firma websitesi 2- webservis 3- admin paneli simdi webservisi, mobile uygulama consume edecek . Burada bir sikinti yok. Sorum su: admin paneli de bu webservisin fonksiyonlarina erismesi lazim. Bu panel icinde webservisi mi direk cagirayim yoksa business class'i mi kullansin admin paneli? bu ayrimi yapmam nemli baslamadan nce. Tesekkürler Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

Ben mobil uygulama geliştirmiyorum hocam ama sanırım servis ile authentication yapmak için tokenları kullaniyorsunuz. Web tarafindada asp. net core cookie authentication kullanacaksiniz. Mobil bilmediğim için çok bişey diyemedim. Ancak web te auth ile ilgili sorunuz olursa cevaplarim. Hocam angular, react, typescript bence boşverin. Backend geliştiricisiniz siz. Sadece minimal düzeyde js ile dom manipülasyonu veya jquery, birazda temel vue. js gayet yeterli. List rendering vue. js diye bakarsaniz dkumanlara yeterli olur.

Eğer Input ve Output lar aynı olacaksa tek bir API Yazıp webde ve mobilde aynı apiyi kullanmalı bende onu sylüyorum. Ayrı bir dosyaya gerek yok. Peki hocam ben bu api'yi MVC catisi altinda yapsam, websitesi buradan kullansa, ve mobil de sadece API'yi kullansa ne olur? Avantaj-dezavantaj kismini merak ediyorum Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

DigitalOcean, Google Cloud ve Azure kullanmıştım daha nce. Şimdi bi proje için birkaç aydır UpCloud kullanıyoruz, şimdiye kadar memnunuz. AWS EC2, Azure, Digital Ocean, Linode ve Vultr ile karşılaştırma yapmışlar, bayağı da iddialı grafikler yayınlamışlar. rnek: https://upcloud.com/compare/azure/ Bi gz at derim hocam. Sen hiç kaval çaldın mı?

hocam sorumu anlamadin. olay sadece login degil :) Yani web servisimin arkaplaninda metodlar var. Atiyorum grencileri listeleme, grenci bilgileri vs. Bunu mobil uygulama ile webservis kullanarak erisebiliyor. Ben ayni seyi web sitesinde de yapmak istiyorum. Yani grenci listesi, grenci bilgilerini vs gstermek istiyorum. Bunun icin bu websitesinde webservisi mi cagirayim yoksa, web servisin arkasinda olan business projesini mi . Yani rest webservisi, bir MVC projesinde mi kullanayim yoksa MVC olustururken bunu ayni zamanda APIli yapip, mobilde mi bunu kullanayim :) farkediyorum türkcem gittikce ktülesiyor :) kendimi ifade edecek kelime bulamiyorum Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

-Okudum postlari biraz ama tam bilmiyorum ne kadarina ihtiyacin var. O yuzden sifirdan yazacagim- 1) firma websitesini sal gitsin nginx. arkasina static website dursun. ssl ile calisan standard bir ayar ve kucuk server isini cok rahat gorur. 2) web servis kisminda bunu role based bir yapi ile ayarlayabilirsin. asp yazmadim hic ama kesin vardir onda da. ozet olarak sistemi design ederken rollerini de dusunurek yapiyorsun. biliyor olabilirsin ama okuyanlara ornek olsun diye: root-> api/ system spesifik servisleradmin-> api/ user, post, mail iceren tum servislermanager-> api/ post ve mail iceren sadece okuma izni olan servislermobile-> api/ mobile application icin gereken servislerpleb-> api/ public access? api level'inde bu tarz ayarlayip admin panel'inden gelen login'leri sadece root, admin, ve manager olacak sekilde kabul edebilirsin. jwt kullaniyorsan decode ettigin data icinde gibi tutup direk validation bunun ustunden yapilabilir. ozet olarak-> user servise request atinca decode edersin role'e bakarsin. mobile user admin'e gitmeye calisiyorsa 403 yapistirirsin sen hayirdir diye. jwt ya da auth token sistemleri uygun bu gibi bir sistemde. ikisinin de guzel ve sinir bozucu yanlari var. jwt + state olmadan kullanilabildigi icin cok rahat. yani kullanici jwt token ile request atinca sen onu validate ettin mi hem `user_id` hem de `role` u biliyorsun. eger user ile alakali bir islem yapmiyorsan direk baska yere gitmeden request'i process edebilirsin. - bir user'i banlamak istiyoruz veya user parola degistirdi. simdi eski tokenlari nasil silecegiz? kisa cevap silemezsin. bunun icin blacklist tarzi bir sey tutup kontrol etmen gerekiyor. her gelen token once key ile validate ediliyor sonra ya in-memory ya da redis tarzi bir yerde tutulan blacklist icinde var mi diye bakiliyor. - ikinci kisim nasil token refresh ederim. token suren 1 gun olsun ama sen diyorsun ki user parola girip durmasin eger ip-agent ayni ise. burada ya token bitmesine cok az kala client request atacak ben yeni token istiyorum diye ya da ikinci bir token koyacaksin refresh_token diye. . refresh token koyarken genel yapi login olunca { token: , refreshToken: } seklinde ayarlaman lazim. user mobile app kullanirken jwt expire olursa 401 alir. senin client 401 alinca daha once store ettigi refreshToken ile servise gidip benim token'i yenile der. o token hala valid ve blacklist'te falan degilse yeni token'i alir ve user bir onceki request'e geri doner. bu kadar bos konustuktan sonra server ve database 3) bence ilk asamada otomatik storage resize eden bir cloud'dan rds al. hem hicbir isle ugrasmazsin hem de guvenlik-backup tarzi dertlerin olmaz. auto resize eden dedigim mesela baslangicta 10GB lik db aciyorsun ve sistem senin datan 7-8 GB olunca otomatik 20GB'a cikartiyor disk'i database'i kapatmadan. Bunu yapan Google cloud ve AWS var ve bu seviyede free use'a giriyor cogu ya da cok ucuz $10 gibi. Yukarida google cloud kullanmam demis arkadas ama farketmez herhangi bir yerde credit-card fraud durumuna dusersen aynisi olacak. millet calinti kart ile makine alip coin mine ediyor o yuzden bu tarz islemlerde direk hesap kapatilip 6 ay sonra cevap aliyorsun ticket'lara. - request cache icin ayni makine'de redis kurup cok rahat bir sekilde cache isini halledebilirsin. - mongo vs icin aman diyorum. rds'ler TB data bile tutup process edebilir. illa ki musterilere bir sey sunmam lazim diyorsan ayir sistemi. storage options normal ve premium diye. hatta bunu marifetmis gibi (50GB datasi olan sirketler 20-makineli distributed sistemler kullanmak istiyor kullandik demek icin o yuzden boyle diyorum) anlatirsin. "Do you have TB's of data? No Problem. Our premium storage option provides horizontal scaling with Cassandra for your unlimited data storage needs with ease." - bu konularda maymun seviyesinde turkcem oldugu icin ingilizceye gectim :) - -resim vs falan google cloud storage ya da aws s3. db'yi nereden alirsan orada ac bence. ayarlamasi kolay olur. windows makine isi sinir bozucu genel olarak. ne kadar ihtiyacin var windows'a bilmiyorum. sadece lisans parasi aylik 20-30 euro odeyeceksin makine basi. bir tane windows alip geri kalan makineleri kucuk vps'ler ile halledebilirsin. - windows makine? yukarida oneriler var. benim kullandigim almanlar satiyor. belki https://www.hetzner.com/dedicated-rootserver/matrix-ax bu tarz makine alip windows ekleyebilirsin 20euro lisans parasi verip. cok uzun suredir kullaniyorum piyasadaki en saglam makineler ama windows ile sifir tecrubem var. - kucuk vps'ler icin hepsi olur. digitalocean, vultr, hetzner. 5 euro'ya 2vcpu 4GB ram veriyor almanlar . 20 tane falan kullaniyorum ben ve performans digerlerinin abartisiz 1.5-2 kati. - ddos icin cloudflare vs oldukca mantikli. ucretsiz olan hizmetler limitli. herhangi bir parali uyelik alman gerekebilir. - guvenlik icin cok genel seyler soyleyebilirim. ssl zorunlu. her request https ustunden gitsin. http'yi sadece http gelen request'i https'e redirect icin kullan. makineler'de genelde 80-443 disinda tum portlari kapat. db vs erisim varsa ip limitle key ile login ol. server'lar icin de bu gecerli. root parola ile login'i kapat sadece key bazli erisim olsun . sql injection icin genel kurallari takip etsen sikinti olmaz. ama her turlu https://github.com/sqlmapproject/sqlmap vs ile surekli test et. - gdpr icin avrupa ulkeleri olur. rusya'da falan tutarsan anca sikinti. user ile alakali ne tutabilirsin tutamazsin baya detayli ama storage icin bizi ilgilendiren kismi bu tuttugun datayi kabak gibi acik tutmamak. genel olarak sirketler sadece user bilgilerini gibi bir key'le sifreleyip oyle tutuyor. o key de vault tarzi bir yapida tutulup bunlara erisim yaparken geri aciliyor. bunlari yaparken her design decision'i aciklayip belirtiyorsun. bu datalara tekrar ihtiyacim vardi vs. encryption boyle calisiyor cunku diger turlu implement edecek para yoktu. ama ozet olarak duzgun bir avukat'la oturup konusmak lazim detaylari. verdigim ornekler oldukca genel. gece yazdim gozumden kacan veya hatali olan yer varsa durtebilirsiniz. musdawdaf tarafından 29/Ara/19 14:08 tarihinde düzenlenmiştir

@MhmdAlmz hocam benim senden tecrübeli olmam gibi bir durum yok. O tarz ego muhabbetlerini hiç sevmiyorum. O yüzden benle yazılım konuşurken hiç o tarz şeyler düşünmene gerek yok. Gereksiz triplere girmem :)) Yazılım dünyası uçsuz bucaksız herkes birbirinden birşeyler ğrenmeye çalışmalı bence. Zaten unbalanced hepimizden tecrübeli ama bizim fikirlerimizi almak istemiş. Mesela bu post altında api loglama fikrini senden ğrendik ve efsane hoşumuza gitti. SPA vs MPA, veya js frameworklerine ilişkin vurgulamak istediklerim şunlardı. 1-) İnsanların aklına Js Frameworkler denildiğinde; Js Framework = SPA gelmesin. State ynetimi gelsin. 2-) Blog sitesi yapacaksam içinde uzun uzun blog yazılarım olacaksa mesela SPA gereksiz bence. Zaten ziyaretçi sitede sürekli sayfa değiştirmeyecek. Okuyacak sadece. Senin kişisel sitende MPA zaten :)) 3-) Birde benim yaptığım sitelerde sayfa yenilemede header ve footer değişmiyor. Zaten Http/2 ve internetinde hızlanması ile MPA lar ile SPA lar arasında farkedilir bir performans yok bence https://bulutdoktor.net/Home/Index burada yukarıdaki menüde gez mesela bende çat çat açılıo jet gibi. @unbalanced hocam asp. net core da aynı controllerı aynı zamanda api olarakta kullanabiliyoruz diye biliyorum. Asp. Net te olduğu gibi base classlar farklı değil. Birde ben mongodb yi efsane merak ettim. Şimdiye dek productionda hiç kullanmadım. Neden mongodb kullanmak içinize sinmedi hocam? Başka bir arkadaş daha yazmış. @musdawdaf hocam neden mongodb için aman dediniz?

@Hannibal_King hocam cok tesekkürler ayrintili ve nokta atisi bilgilendirmelerin icin :) IIS konusunda haklisin hocam, ben suan tatilde oldugum icin yanimda macbook var ve kücük bir proje yapiyorum macOs ortaminda.. Herhangi bir container yüklemeden yapiyorum . Performans olayina bi sey diyemeyecegim ama asp. net ile IIS in zaten en iyi performans vermesini beklerim. ama Core olayinda sanki bu olayi asariz gibi bir hissiyatim vardi :) Ama biraz düsününce IIS yine nde olabilir.. Linux deme sebebim, windows host/cloudlara oranla daha uygun fiyatli. Performanstan verilen dül bu fiyata deger mi suan yorum yapamayacagim. Upcloud'a bakacagim hocam. Deneme olayi varmis. Webservisimi tamamlayinca canli olarak onun üzerinde denerim. Stres testleri vs yapmak istiyorum. Üye olunca senin hesabini mi kullanmami istiyorsun? Tam emin degilim ama verileri sanirim isvicre'deki bir bilgisayarda tutma zorunlulugum var. Avrupa birligi GDPR denilen bir yasayi kabul etti ve isvicre'de bunun bir kismina uymak zorunda AB üyesi olmasa da. Bu da verilerin korunmasi, paylasilmasi ile ilgili. Müsterinin zel bilgilerinin sadece müsteri ve izin verdigi kisiler tarafindan grünmesi gerekiyor. Ve bu verilerin saklanma bicimi güvenli olmali ve güvenlige nem veren ülkelerde tutulmali. Tam emin olamadigim nokta, isvicre'de tutma zorunlulugu olup olmadigi. Arastirdim ama bir türlü bilgi bulamadim bununla ilgili. Bahsettigin 4gb ram + 2 cpu linux makinelerde 20 dolar. Yillik 120 dolar fark var. Aslinda cok da fark yok.. Windows olayini düsüneyim.. Linux'un korktugum tarafi, anlamadigim bi sikinti cikacak ve bana cok zaman kaybettirecek. ScaleGrid'in mysql makinesi 20 dolar diyor 2 gb ram icin. Yakin zamanda denersen sonuclari paylasirsan sevinirim. edit: master-slave secenekleri de varmis simdi grdüm.. Simdi biraz düsününce korkutucu oluyor.. Düsünsene, uygulamanin dosyalari upcloud'da, database amazonda, resim-videolar bilmem nerede :) bunlari toparlamak da kolay olmayacaktir.. Bir start-up icin 74 dolar aylik sadece DB'ye vermek biraz fazla.. Daha uygun fiyatli bir czüm iyi olur ama su var. Benim projem bir anda kullanilabilecek, müsterilerle bulusabilecek bir uygulama o yüzden bi yandan da cok mantiksiz gelmiyor :) benim admob hesabim vardi ancak kapanin bir domain ile almistim. Domain'in google email servisle anlasmasi bitti, o yüzden google üzerinden login olamiyorum. Bir türlü olmadi.. Irlanda'daki ofisle bile grüstüm czemedi kimse sorunu yle kaldi, icerideki tüm paralar da kaldi. Hesabim hala aktif ama login olamiyorum cünkü mail adresi google üzerinden login olamiyor.. O yüzden bahsettigin sikintiyi anladim. Google'un firebase olayi zellikle flutter ile baya popüler ama ben kullanmayi düsünmüyorum google'u. güvenlikle ilgili biraz daha fazla detay verme sansin var mi? nasil nlemler aliyorsun tam olarak? Kisaca bahsedersen sevinirim. Bir de c/c++ ile yazma kismini anlayamadim. Ne demek istedin? admin paneli tavsiyen güzel hocam, bir yazilim firmasi icin de tavsiye template'in varsa alabilirim :) js tabanli kütüphaneler icin neredeyse hic fikrim yok. Nodejs kullanirken ejs view engine kullandim ama dedigin gibi asp. net tarafinda razor var. vue. js'yi cok duydum ama onun hakkinda da cok bilgim yok . Mesela Mobile tarafinda MVVM pattern kullanirken INotification interface araciligi ile modelde olan bir degisikligi UI tarafina ya da tam tersi sekilde olan degisikligi de model tarafina iletebiliyoruz. Bu tarz bir islem icin core tarafinda bir yapi var mi? verdigin alternatif linkler icin de tesekkürler hocam. Ve diger cevaplar icin de tekrar tesekkür ederim unbalanced tarafından 28/Ara/19 00:39 tarihinde düzenlenmiştir Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

1-) Fiyat uygun diye linux tercih edilir mi? https://weblog.west-wind.com/posts/2019/Mar/16/ASPNET-Core-Hosting-on-IIS-with-ASPNET-Core-22 burada request karşılaştırması yapmış. IIS açık ara nde. Bu adamın yazılarını çok seviyorum ben. Benim linux bilgimde 0. O sebeple bende de bişey olursa müdahale edemem korkusu var. Ondan biraz windows lisans parası veriyoruz mecburen. Bence linux bilgisi yoksa ve IIS de bulunan performans farkından dolayı cevap Windows. 2-) Upcloud ve stres testi Tam sizin ürünü bilmiyorum hocam ama anlık yüzlerce binlerce request gelmeyecekse stres testine çok gerek yok bence. Daha nce web ile ilgilenmediğiniz için belki biraz panik yapmış olabilirsiniz. Bence UpCloud 2 cpu 4 gb ram çok rahat yeter. Olası bir yüksek trafikte sunucu zelliklerini yükseltirsiniz zaten. UpCloud için benim yada başka birisinin referans linkinden kaydolursanız 25 dolar kazanıosunuz. 3-) Veritabanı, Uygulama ve Assetler farklı yerlerde bu durum korkutucu olur mu? Olması gereken bence o zaten hocam. İlerde lçelenebilirlik kolay olsun diye veritabanını genelde ayırıyorlar. Ben amazon a baya güveniyorum. Zaten devops bilgim de pek yok o sebeple mecburuz bu tarz servislere. Scalegrid i bi 3-4 ay sonra denerim muhtemelen : Dipnot: MhmdAlmz hocamızın apiyi loglamasını bende çok beğendim :) hiç aklıma gelmemişti. Helal olsun :) cevaplar icin tesekkürler hocam tekrar 1- verdigin linki biraz okudum hocam, adam cidden cok detayli yazmis :) IIS konusunu düsünecegim. Dedigim gibi aralarinda cok fark yok o yüzden alinabilir bir sey. Ve linux'un olasi problemleri büyük sikinti cikartir korkusu var hep :) cok eskiden bir süre ubuntu, pardus gibi dagitimlar kullandim. raspberry pi den dolayi Raspbian kullandim. Sahsi dizüstü bilgisayarim MacOS ama yazilim islerimi hep windowsla yaptim . o yüzden windows benim icin daha uygun.. Ama cross platformdan da faydalanmak istiyorum. Mesela nodejs'in linux da daha randimanli calisacagini düsünüyorum.. 2- upcloud olayini deneyecegim bakalim nasil olacak. sylenildigi gibi güzelse onu kullanirim. Senin referans ile üye olurum tesekkürler :) 3- dagitik olmasi avantaj ama iste korkutucu :) amazon'a bakayim hocam.. Ama yine de db pahali geliyor. amazon alternatiflerine de bakayim.. Scalegrid'i de inceleyecegim o zaman :) diger nerileri de bekliyorum. Tesekkürler Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

Eğer Input ve Output lar aynı olacaksa tek bir API Yazıp webde ve mobilde aynı apiyi kullanmalı bende onu sylüyorum. Ayrı bir dosyaya gerek yok. 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!

1-) Fiyat uygun diye linux tercih edilir mi? https://weblog.west-wind.com/posts/2019/Mar/16/ASPNET-Core-Hosting-on-IIS-with-ASPNET-Core-22 burada request karşılaştırması yapmış. IIS açık ara nde. Bu adamın yazılarını çok seviyorum ben. Benim linux bilgimde 0. O sebeple bende de bişey olursa müdahale edemem korkusu var. Ondan biraz windows lisans parası veriyoruz mecburen. Bence linux bilgisi yoksa ve IIS de bulunan performans farkından dolayı cevap Windows. 2-) Upcloud ve stres testi Tam sizin ürünü bilmiyorum hocam ama anlık yüzlerce binlerce request gelmeyecekse stres testine çok gerek yok bence. Daha nce web ile ilgilenmediğiniz için belki biraz panik yapmış olabilirsiniz. Bence UpCloud 2 cpu 4 gb ram çok rahat yeter. Olası bir yüksek trafikte sunucu zelliklerini yükseltirsiniz zaten. UpCloud için benim yada başka birisinin referans linkinden kaydolursanız 25 dolar kazanıosunuz. 3-) Veritabanı, Uygulama ve Assetler farklı yerlerde bu durum korkutucu olur mu? Olması gereken bence o zaten hocam. İlerde lçelenebilirlik kolay olsun diye veritabanını genelde ayırıyorlar. Ben amazon a baya güveniyorum. Zaten devops bilgim de pek yok o sebeple mecburuz bu tarz servislere. Scalegrid i bi 3-4 ay sonra denerim muhtemelen : Dipnot: MhmdAlmz hocamızın apiyi loglamasını bende çok beğendim :) hiç aklıma gelmemişti. Helal olsun :)

@Hannibal_King cevap icin cok tesekkürler hocam. Vue. js ye bakyim. React'e baslamistim iyi gidiyordu ama sonra bi anda bi ic ses duydum :) , ya sen webci degilsin ne diye byle seyler greniyorsun diye.. O dakika tüm react hevesim kacti, ben de kapattim her seyi :) Vue. js yi temel seviyede bilmem isime yarabilir. Bi de type script var ama emin degilim o ne kadar kullanilir bu tür durumlarda Soruma gelince; tekrar yazayim.. bir web servisim olacak. Mesela login islemi var.. adam telefonla login oluyor ve webservisi kullaniyor. Burada bi sikinti yok. Ben mobile app yerine bi de bunun web versiyonunu yapiyorum diyelim. Ayni login olayi bunda da var.. Simd ben bu servisi nasil kullanacagim? Dedigin gibi direk js üzerinde mi cagirayim? Yoksa bu login metodu benim business projemde ve ben Web versiyonuna bu business projesini referans olarak kullanip mi login oldurayim. Soru buydu. Umarim anlasilir olmustur Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

DigitalOcean, Google Cloud ve Azure kullanmıştım daha nce. Şimdi bi proje için birkaç aydır UpCloud kullanıyoruz, şimdiye kadar memnunuz. AWS EC2, Azure, Digital Ocean, Linode ve Vultr ile karşılaştırma yapmışlar, bayağı da iddialı grafikler yayınlamışlar. rnek: https://upcloud.com/compare/azure/ Bi gz at derim hocam. tesekkürler hocam, dedigin gibi baya iddiali grünüyor ve fiyat da gayet uygun. Aslinda deneme amacli bakabilirim.. Hiz olarak ne kadar fark grüyorsun? Ben azure ile daha nce calistim , sonra amazon aws ile de calistim güzel sistemler. Amazon aws'yi pek sevemedim ama azure güzel. Suan biraz kredim var deneme vs yapabiliyorum.. Ama fiyatlar digerlerine gre yüksege geliyor. @MhmdAlmz, hocam degerli bilgilerin icin cok tesekkürler :) RACK server olayi baya ilgincmis ancak cok is yükü var grünüyor. Ama güvenlik anlaminda baya güzel sevdim ama suan icin cloud üzerinden gitmeyi düsünüyorum. Load balancer yapmak lazim, ona da bakayim. Ozellikle api kayitlarini tutman cok hosuma gitti, ilk kez byle bir fikir duydum ve etkilendim :) Tebrik ederim.. Bununla dedigin gibi her seyi bastan olusturabilirsin zaten. Ve bu sekilde dagitik calisman güzel olmus. Google drive'a da otomatik veritabani attirma olayi da güzelmis. Bu yntemi ben de yapacagim. Suan sinirsiz google hesabim var ama kapanma ihtimali var o yüzden satin almak mantikli. Not: müsterilerime zaten datalarini kendi telefonlarinda/cloudlarinda tutmalari secenegi sunacagim. O zaman da veriler bende olmayacak ve sorumlulugu da bende olmayacak.. Ama genel olarak verileri ben saklayacagim amazon'un cdn'ini duymustum daha nce ama kullanmadim hic. Bakayim ona. cloudflare'i hic kullanmadim ama cok grdüm tabi. Isleyisi iyi grenmek gerek.. Firmanin websitesi icin bir hazir script alip onu düzeltmeyi planliyorum, bakalim artik :) nodejs gayet stabil calisiyor, dedigin gibi de yapabilirim.. Düsünmem lazim. Once uygulama icin bir Webservisi bitireyim de , sonra lisans olayini düsünürüm. Harika bir sistem kurdum . linux'a cok bogulmak istemiyorum. Eskiden biraz kullandim ama cok fazla terminal tarafinda calismadim. Linux dagitimlari her zaman gzümü korkutuyor.. MacOS dan biliyorum, bazen python script calistirmam gerek, 50 tane paket yüklettiriyor.. versiyonlari cok sikinti cikariyor vs vs.. Ynetimi, hata bulmasi zor React ile biraz calistim, ama webci olmadigim icin cok derine girmek istemedim. Belki angular'a bakarim. Asp. net core ile birlikte kullanabilirim. mobile icin ise kararim kesinlikle flutter :)) ben flutter'i cok sevdim.. Yoksa xamarin ile yapardim ama flutter'a yatirim yapmak istiyorum.. Bilen sayisi az ama, o zaman da grenmek zorundalar :) Ilk baslarda zaten yüksek kaynak almayi düsünmüyorum, kademe kademe arttiracagim. Dedigin gibi cloudlarda bu zellik var... Tesekkürler tekrar detayli cevabin icin Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

Login, listeleme vs işlemleri yaparken repository pattern kullanarak işlemleri yaparsanız eğer ynetimi daha kolay olur diye düşünüyorum. Controller de website için ilgili sınıf kullanılır, api için de ayrı yazdığınız sınıfı kullanırsınız. Arayüze yazacağınız kurallar doğal olarak website içinde api içinde uygulanmış olur. Api ile website kısmı ayrı yazılması bence uygun değil. E-devlet uygulamasını kullanıyorsanız eğer orada şyle bir sorun çok dikkatimi çekiyor; bazı işlemler uygulama üzerinde grünmüyor ve işlem yapılamıyor sadece website üzerinden girerek yapabiliyoruz. Muhtemelen arka planda uygulama için kullanılan api ile websitenin kullandığı sınıflar birbirinden bağımsız işliyor ve bir yerde yapılan işlem diğer tarafta tekrar yazılmak zorunda kalınıyor. nceleri Kızlar Utanınca Kızarırdı Şimdilerde Kızarınca Utanıyorlar..

@Hannibal_King Hocam senin o attığın sitede sadece HTML var bizim bahsettiğimiz admin paneli yada müşteri paneli. Yani sürekli api isteklerinde bulunacak bir web sitesi SPA için daha mantıklı. Bir blog sitesi yada şirketi anlatan web siteleri kesinlikle MPA Olmalı zaten. MPA Olmazsa google da seo çalışması yapamazsınız. Çünkü sayfa komple JavaScript ile oluşturuluyor. Senin o attığın web sitesi internet hızından kaynaklı çok yavaşlama yapacaktır. Yani müşteri beyaz bir sayfa grecek, bundan ziyade yükleniyor ekranını grmek müşteriye cevap verebilme açısından iyi. Büyük sistemelrde SPA kullanılması taraftarıyım. Fakat ufak admin panellerinde ve web sitelerinde kesinlikle MPA kullanılmalı gerek yok SPA ya zaten. 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!

O zaman bir middleware yazıp headerden from device from web diye bir şey parametrede kontrol edersin. Birinde view dnersin diğerinde sadece JSON OBJECT. Sana kalmış abi her türlü yaparsın ama ilerte tıkanır mısın bilmiyorum. 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!