02-12-2019, Saat: 15:59
Bir kaç gündür Android için RestApi ile Get ve Put işlemi için örnek arıyorum fakat bulamadım. Yardımlarınızı Please
Firemonkey - RestFull - Get - Put İşlemleri
|
02-12-2019, Saat: 15:59
Bir kaç gündür Android için RestApi ile Get ve Put işlemi için örnek arıyorum fakat bulamadım. Yardımlarınızı Please
02-12-2019, Saat: 17:00
Merhaba,
Aşağıdaki eğitim dizisinde bu konu detaylı (sunucu konfigürasyonları dahil) bir şekilde anlatılmıştır. Mobil Uygulama + REST Sunucu Eğitimi - Fesih ARSLAN - 2019
03-12-2019, Saat: 22:49
Konu gelmişken fikrinizi almak istiyorum...
DataSnap uygulamasından program açılışında SQLConnection sürekli açık kalsa nasıl sorun yaşarız yoksa verileri çektikçe açık kapatsak daha uygun olur mu
04-12-2019, Saat: 01:36
(04-12-2019, Saat: 01:21)emre21 Adlı Kullanıcıdan Alıntı: sql server in bağlantı limiti vardır, açık tutacağı yarım ve tam soket limiti vardır, kaç kişinin kullandığına bağlı, Sanırım bunları MSSQL server için yazıyorsunuz. MSSQL Server'de bağlantıyı kullanmadan önce açıp kullandıktan sonra hemen kapatırsanız sorun olmaz. Neredeyse tüm C# ASP.Net uygulamaları bu mantığa göre yazılıyor. Zaten aksi söz konusu olamaz. Web server'e her client bağlantısı ayrı bir thread içinde yapılır (ya da seçeneklerden birisi budur), web server'de yazılı uygulama client'in her başvurusunda MSSQL sunucuya bağlanır cevabı oluşturup gönderir ve çıkar, bağlantıyı kapatma işini Garbage Collector'e bırakır. Hemen sonra da GAC bu bağlantıyı yok eder. Sistematik budur. Biz Windows masaüstü uygulamalarında bu şekilde uygulamıyoruz, bunun yerine bir bağlantıyı açıp programı kapatana kadar o bağlantıyı kullanıyoruz. Bunun sebebi açıp kapatma sürelerinden tasarruf etmek. Ama eğer DB'ye bağlanma süresi gözardı edilebilecek kadar kısa sürüyorsa masaüstü uygulamalarda da bu sistem uygulanabilir.
04-12-2019, Saat: 02:12
(04-12-2019, Saat: 01:38)emre21 Adlı Kullanıcıdan Alıntı:(04-12-2019, Saat: 01:36)mustafaozpinar Adlı Kullanıcıdan Alıntı: Sanırım bunları MSSQL server için yazıyorsunuz. MSSQL Server'de bağlantıyı kullanmadan önce açıp kullandıktan sonra hemen kapatırsanız sorun olmaz. Neredeyse tüm C# ASP.Net uygulamaları bu mantığa göre yazılıyor. Zaten aksi söz konusu olamaz. Web server'e her client bağlantısı ayrı bir thread içinde yapılır (ya da seçeneklerden birisi budur), web server'de yazılı uygulama client'in her başvurusunda MSSQL sunucuya bağlanır cevabı oluşturup gönderir ve çıkar, bağlantıyı kapatma işini Garbage Collector'e bırakır. Hemen sonra da GAC bu bağlantıyı yok eder. Sistematik budur. Windows Server 2008 için eşzamanlı bağlantı (concurrent connection) sayısı 70,000'in üzerinde. Linux'ta bunun çok daha üzerinde olduğunu düşünüyorum. https://stackoverflow.com/questions/1636...erver-2008 Aksi halde dev web alışveriş sitelerinin çalışması imkansız olurdu.
04-12-2019, Saat: 14:35
(04-12-2019, Saat: 04:59)emre21 Adlı Kullanıcıdan Alıntı: unuttum söylemeyi kusura bakmayın, biliyorsunuz trendyol üye mahazaları ile ayakda kalır, üye mahazaları satış geldikçe periyodik stok güncelleme gönderirler partner trendyol dan, bu stok dosyaları içinde 1000 lerce ürün ve stok bilgisi vardır, en basiti ile 1000ürün*3(buna birde renk beden kombinasyonları ekleyin)*250firma = 750k record u alacaksın Merhaba, Ben trafiği, şunu bunu, herşeyi DB ile hallederim demedim. Dediğim sadece bir SQL sunucunun 70000'den fazla bağlantıyı kabul edebileceği. Bunun dışında performans ayrı bir sorun. Elbette bu tür durumlar için farklı farklı çözümler var. Ben sadece programcı değilim, geçmişte oldukça büyük bir data center'i de yönettim. Yani donanımlar, konfigürasyonlar vb. konularda da epey bilgim var. Benim kastettiğim sadece MSSQL serverin 70,000 bağlantıdan fazla bağlantıyı kabul edeceğidir. Performansı ne olur ne olmaz o ayrı bir mevzu. Performans konusu için elinizdeki tüm olanakları kullanırsınız. Veritabanlarını bölersiniz, cluster oluşturusunuz, veritabanını sunucuda SSD disk üzerine kurarsınız, belleği Terrabyte seviyelerine getirirsiniz vs. Araya iş yükünü azaltacak cache katmanları oluşturursunuz vs. Bir de yarım açık bağlantı konusu var. Bir bağlantının bu tanıma girebilmesi için, bir client bir sunucuya bağlandıktan sonra, bağlantının bir tarafta kırılması ve diğer tarafın bundan haberdar olmadığı için bağlantıyı canlı tutması. Burada arızi bir durum var. Tüm bağlantıların böyle arızi durumla karşılaşacağı düşünülemez. İyi bir donanım ve geniş ağ yapısında bunun oranı %10'u geçmez diye düşünüyorum (bu bir bilgi değil bir varsayım). Saygılarımla
04-12-2019, Saat: 16:33
(Son Düzenleme: 04-12-2019, Saat: 16:34, Düzenleyen: mustafaozpinar.)
(04-12-2019, Saat: 15:41)emre21 Adlı Kullanıcıdan Alıntı: ben yapamayacağınız kanısındayim, deneyin isterseniz, tcpview den screen atarsanız, Bu rakam 350GB demektir. Eğer 2TB memory koyarsanız kaldırır. Benim 398GB memory koyduğum mikro sunucu vardı (HP 980, buna bağlı iki 3PAR storage, herbirinin disk kapasitesi 40TB.). Tabii ki buna rağmen sistem zorlanacaktır. MSSQL olarak düşündüğümüzde benim bildiğim load balance anlamında çok da fazla bir seçenek yok. En çok cluster oluşturma olabilir. Ancak bu da high availability (arızi durumlardaki backup sistemi) vazifesi görecektir. MSSQL'in daha hızlı çalışmasını sağlayacak fazla bir opsiyon yok. MSSQL 2012 ile birlikte gelen Load Balancing 2016'da AlwaysOn yapısı getirilmiş. Ancak bu replika sunuculara gereksinim duyuyor. MSSQL Server Replika sunucularını yönetmekse son derece zor. Çünkü birbirleri arasındaki senkronizasyonu sağlayabilmek için her tabloda ayrı bir ID alanı kullanıyorlar bu alandaki rakamların birbiriyle (replikalar arasında) karışmaması gerekiyor vs. Tabii bu sistem hız için değil high availability için getirilmiş bir sistem öncelikle. Elbette burada öncelikle yazılımlara çok iş düşüyor. Özellikle DB'den veri çekerken, her türlü optimizasyonu yapması gerekiyor. Bunu zaten yadsımıyorum. Özellikle Web yazılımcılarının (Soap ve Rest de buna dahil) bu konularda çok hassas olması gerekiyor. İşlem süresi ve aradaki bilgi alışverişinin minimize edilmesi şart. Hatta dediğiniz gibi bağlantı sayılarının bile. Belki araya bir cache katmanı yazıp (cache sunucularını kullanan) bununla da sunucuyu desteklemek gerekebilir.
04-12-2019, Saat: 20:29
(03-12-2019, Saat: 22:49)ikurt07 Adlı Kullanıcıdan Alıntı: Konu gelmişken fikrinizi almak istiyorum... Tebrikler @ikurt07; konuyu başlığından fena saptırmışsın
There's no place like 127.0.0.1
23-01-2020, Saat: 10:55
(03-12-2019, Saat: 22:49)ikurt07 Adlı Kullanıcıdan Alıntı: Konu gelmişken fikrinizi almak istiyorum... DataSnap'te bir method'u çalıştırdığında & işlem bittiğinde, servermethod kapanır... yani SQLConnection, variables, vs... hepsi kapanır... method'u bir sonraki çalıştırdığında, sanki programı baştan açmışsın gibi olur memory şişmesinin sebebi, TSQLConnection değildir (başıma geldi) TSQLConnection nesnesi otomatik sıfırlandığı için, hafızayı şişirmez... ancak, yazılımcının create edip doldurduğu array, stringlist veya dışarıdaki webservis token'ları gibi object'ler hafızada kalır, onları senin destroy etmen lazım. GAC gibi bir yapıdan bahsetmişsiniz, Garbage collection VS.NET'de var, çalışıyor, ama tam tutarlı değil... GAC olduğu halde memory şişmesine çok şahit oldum. İyi ki delphide GAC diye birşey yok, yazılımcıyı canlı tutan bir yoksunluk bu yaptığım şey şu; try /// birşeyler yap finally // objeleri destroy et end bu nezakete uyunca, çok sağlıklı çalışıyor yazılımlar |
« Önceki Konu | Sonraki Konu »
|
Konu ile Alakalı Benzer Konular | |||||
Konular | Yazar | Yorumlar | Okunma | Son Yorum | |
FireMonkey Premium Styles Pack | m_ekici | 0 | 486 |
07-07-2023, Saat: 11:12 Son Yorum: m_ekici |
|
AdMobExtra FireMonkey | savasabd | 4 | 2.219 |
01-12-2021, Saat: 19:35 Son Yorum: savasabd |
|
Frame Kullanımlarında Free İşlemleri Hakkında | adelphiforumz | 6 | 2.967 |
22-02-2021, Saat: 20:27 Son Yorum: hayalyilmaz43 |
|
com.embarcadero.firemonkey.medialibrary.MediaImage.getFileName | savasabd | 10 | 3.815 |
16-02-2021, Saat: 12:23 Son Yorum: savasabd |
|
Winsoft - Obr FireMonkey Barkod Okuma | cihankoca | 4 | 1.704 |
17-12-2020, Saat: 18:44 Son Yorum: cihankoca |