folder Tahribat.com Forumları
linefolder Webmaster ve Yazılım Geliştiriciler
linefolder Web Sitesi-Web Servisleri Icin Host/Cloud Cözümleri Öneri (Asp.Net Core Icin) Ve Diger Sorular



Web Sitesi-Web Servisleri Icin Host/Cloud Cözümleri Öneri (Asp.Net Core Icin) Ve Diger Sorular

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    unbalanced
    unbalanced's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    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 (start-up diyelim) ürün gelistiriyorum ve bir kac sey icin bir cesitli cözümlere ihtiyacim var

    1- sirketin sitesi

    2- ürünlerin admin paneli (müsterileri, lisanslari vs görebilecegim, nodejsde yaptim aynisini asp.net core'a gecirmeml azim)

    3- Web servis (restful)

    bunlar haricinde resim ve videolari (ürünleri nasil kullanacaklarina dair) tutabilecegim bir yer ne önerirsiniz? CDN mantikli mi?

    Asp.net Core, cross platform calistigi icin linux tabanli bir cloud cözümü isimi görü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 (ilk asama icin en azindan).

    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 (WS kisminda görmedim hic). 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 cözü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ü görmek 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.
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    JPriest
    JPriest's avatar
    Kayıt Tarihi: 09/Mart/2007
    Erkek

    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 göz at derim hocam.


    Sen hiç kaval çaldın mı?
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    MhmdAlmz
    MhmdAlmz's avatar
    Kayıt Tarihi: 09/Ağustos/2015
    Erkek

    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ı (BOT NET diye geçiyordu herhalde) bundan korunmuş oluyorum ve hiçibir şekilde bot ağına yakalanmıyorum.

     

    Bu sayede hem maliyet düştü (Ciddi derecede) 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 (Bunun daha iyi bir yöntemi elbet vardır DevOPs cu olmadığım içn şuan bu şekilde yönetiyorum). Geçenlerde şöyle bir şey oldu Ana RACK sunucudaki power patladı (IT ci yoktu o zaman şirkette) 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 dönersek 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 görmü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 görünüme sahip olmalı. Baştan HTML(Responsive) 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 gönderiyor ordan resimleri görebiliyorsun. 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 gönderidğin datayı birde sen şifreleyebilirsin. Bu konuyu bende @rakkoc dan öğrendim. SSL'in de paypass edilidğini söylüyorlar bilmiyorum. Şuan çalıştığım yeri biliyorsun. Bizim yazdığımız uygulamada 2 key var elimizde. Her login olduğumuzda dataları göndermek 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 göre 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 (İndexleri sürekli güncellediği için sanırım). 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 (Eimden gelidğince güvenlik. SELinux, vsftpd, SSH private key vs.)

     

    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 (Bana şunu demeyin yok tüm datayı çekmeyiz sayıyı çekeriz falan filan. Önlemler her türlü alınır. Button'a basıca gösterirsin bildirimi vs. Sıkıntı yok da sonuçta kaç okunmamiş bildirimv arsa her seferinde sorgu atacaksın.) 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 (UI için falan biraz sıkıntılı çok fazla admin paneli yok template yok hazır Jquery gibi yada Bootstrap). Ve geliştirmesi çok daha rahat olacak. Geleceğe yöenlik en iyi yatırım bu olur.

     

    Mobil için de ReactNative yada Flutter (Bence ReactNative yazdır çünkü piyasada çok fazla RN yazan adam var yada Flutter sende bildiğin için seçim senin.) 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 göre 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 (ahiret dünyadan) 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 (doğru) yola koymadı mı? Seni bir yoksul iken zengin etmedi mi? Öyle ise, sakın yetime kahretme (onu horlama)! El açıp isteyeni de azarlama! Fakat Rabbinin nimetini anlat da anlat!
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    unbalanced
    unbalanced's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek
    JPriest bunu yazdı

    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 göz at derim hocam.

    tesekkürler hocam, dedigin gibi baya iddiali görünüyor ve fiyat da gayet uygun. Aslinda deneme amacli bakabilirim.. Hiz olarak ne kadar fark görüyorsun? Ben azure ile daha önce calistim (ama baya oluyor), 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 göre yüksege geliyor.

     

     

    @MhmdAlmz, hocam degerli bilgilerin icin cok tesekkürler :)

    RACK server olayi baya ilgincmis ancak cok is yükü var görü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 böyle 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 yöntemi 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 (sadece isteyen müsteriler kendi verilerinden sorumlu olacak sekilde tasarlayacagim)

    amazon'un cdn'ini duymustum daha önce ama kullanmadim hic.Bakayim ona.

    cloudflare'i hic kullanmadim ama cok gördü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 (asp.net core ile), sonra lisans olayini düsünürüm. Harika bir sistem kurdum (az cok senin de bilgin var).

    linux'a cok bogulmak istemiyorum. Eskiden biraz kullandim ama cok fazla terminal tarafinda calismadim. Linux dagitimlari her zaman gözümü korkutuyor.. MacOS dan biliyorum, bazen python script calistirmam gerek, 50 tane paket yüklettiriyor.. versiyonlari cok sikinti cikariyor vs vs.. Yönetimi, 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.
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    MhmdAlmz
    MhmdAlmz's avatar
    Kayıt Tarihi: 09/Ağustos/2015
    Erkek

    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 (ahiret dünyadan) 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 (doğru) yola koymadı mı? Seni bir yoksul iken zengin etmedi mi? Öyle ise, sakın yetime kahretme (onu horlama)! El açıp isteyeni de azarlama! Fakat Rabbinin nimetini anlat da anlat!
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    unbalanced
    unbalanced's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek
    MhmdAlmz bunu yazdı

    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.
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hannibal_King
    Hannibal_King's avatar
    Kayıt Tarihi: 22/Ağustos/2010
    Erkek

    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 (IIS) ve out-of-process (Kestrel) 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 görevi de görebiliyor 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 görüyorsun.

    ScaleGrid.io isminde bir firma var yine amazon üzerinden hizmet veriyolar ama adamların iddaasına göre 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 görü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

  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    unbalanced
    unbalanced's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    @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 (belki arkaplanda visual studio bi seyler kurdu bilmiyorum detayini). 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 görü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 gördü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 cözü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 görüstüm cözemedi 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 (web yazilim gelistiricisi degilim ve cok da dallanip budaklanma niyetinde degilim, zaten desktop, mobile uygulamalar yaziyorum, webe cok derine gitmek istemiyorum). 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.
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hannibal_King
    Hannibal_King's avatar
    Kayıt Tarihi: 22/Ağustos/2010
    Erkek

    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 :((

    Yarın tema önerisi, güvenlik hakkında detaylar ve javascript hakkında yazarım hocam şimdi uykum geldi uyuyayım :))

    Dipnot: MhmdAlmz hocamızın apiyi loglamasını bende çok beğendim :) hiç aklıma gelmemişti. Helal olsun :)

  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    unbalanced
    unbalanced's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek
    Hannibal_King bunu yazdı

    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 :((

    Yarın tema önerisi, güvenlik hakkında detaylar ve javascript hakkında yazarım hocam şimdi uykum geldi uyuyayım :))

    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 (iOs gelistirme ve suanki asp.net core calismalarimi macOS da yapiyorum). 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. söylenildigi 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.
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hannibal_King
    Hannibal_King's avatar
    Kayıt Tarihi: 22/Ağustos/2010
    Erkek

    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 gönderiyorlar, bizim uygulama da bir method olsun AES şifreleme yapsın. Bu method verileri şifreliyor ve veritabanına Amazona gönderiyor. 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. (Erişmez bence ama varsayım üzerinden gidiyoruz.) 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ı görür, Aes secret key, kullandığın apilerdeki tokenlar, mailgun kullanıyorsundur mailgun secret keylerini görü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 gönderdiğ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 göndermemizi engelleyen bir yapı yok. Yani ben editör 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 [ValidateAntiForgeryToken] 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 gösterirsin 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 görsellik varsa örneğin chat ekranları bildirim ekranları canlı canlı log basma vs vs. İşte bu durumlarda client side rendering yaptığımızda state yönetimi amaçlı js frameworklerı tercih ediliyor. State yönetiminden kastımız şu

    javascriptte nesne ve dizilerde bulunan elemanların html de oluşan görü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 yönetimi 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 yönelik.

     

    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.

Toplam Hit: 4420 Toplam Mesaj: 32
web servis asp.net core cloud öneri host öneri