Bodyguardd 1
Bodyguardd
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Reklam vermek için turkmmo@gmail.com

[C++] Auto Block Chat System

  • Konuyu başlatan Konuyu başlatan esat199
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 26
  • Görüntüleme Görüntüleme 7K
1. Dediğin şey SQL değil MsSQL

2.
Sorunsuz değil; fclose kullanmamışsın, ikinci kullanımda zaten açık olduğu için ve fopen den sonra kontrol olmadığı için patlar.
Bug vs. var; İki kişi aynı anda kullandığında sistem bir dosyayı iki kere açamayacağından ve gene fopen den sonra kontrol olmadığından patlar.
Performanslı değil; Her chat kullanımında dosyayı baştan açıp baştan parserleyip baştan kontrol edeceğinden disk patlar.
1. SQL'i ilk olarak IBM geliştirmeye başladı ve SEQUEL adıyla çıktı sonrasında SQL olarak değişti microsoft satın alınca Microsoft sql olarak tanımlanmaya başlandı ama hala kullanılan adı SQL'dir. İstersen google üzerinden mssql yazabilirsin karşına ilk ne çıkıcak kontrol et.
2. fopen, memcache bi fonksiyondur. C,C++ ve PHP'de de bu böyledir. Dikkat ettiysen 3 dilde de fopen fonksiyonu mevcut. Yani 2.seferde dosyayı açmaz istersen büyük bir dosya oluşturup okut ve RAM değerlerini kontrol et. Ayrıca bellekten yürütülen işlemler daha hızlı cevap verir.
 
1. SQL'i ilk olarak IBM geliştirmeye başladı ve SEQUEL adıyla çıktı sonrasında SQL olarak değişti microsoft satın alınca Microsoft sql olarak tanımlanmaya başlandı ama hala kullanılan adı SQL'dir. İstersen google üzerinden mssql yazabilirsin karşına ilk ne çıkıcak kontrol et.

SQL(Structured English Query Language)
MSSQL(Microsoft SQL Server)

Birinin alması ya da birinin ismini değiştirmesi ne olduğunu değiştirmez. Dediğin gibi en başa dönecek olursak SEQUEL ile SQL aynı şeydir, MSSQL ve SQL farklı şeydir.

2. fopen, memcache bi fonksiyondur. C,C++ ve PHP'de de bu böyledir. Dikkat ettiysen 3 dilde de fopen fonksiyonu mevcut. Yani 2.seferde dosyayı açmaz istersen büyük bir dosya oluşturup okut ve RAM değerlerini kontrol et. Ayrıca bellekten yürütülen işlemler daha hızlı cevap verir.

1) fopen'i async çalışan bir uygulamada(game gibi) bu şekilde kullanamazsın.
2) C, C++ ile PHP i kıyaslayamazsın.
3) Memcache dediğin şey konuyla çok alakasız.
4) Tekrar başa dönüyoruz.
- fopen ile file handle oluşturduğunda kapatana kadar başka bir uygulama ya da başka bir fonksiyon o dosyaya erişemez.
- fclose ile handle'ı kapatmazsan memory leak oluşur.
- fclose ile kapatmadığın sürece o dosyayı tekrar açamazsın.
- Dosyanın açılıp açılmadığını kontrol etmediğin için açılmayan dosyanın boş file handle'ını işlemeye çalıştığında uygulama patlar.
- Düzgün bir şekilde çalışması için fclose ile işin bitince kapatmalısın, Bu şekilde her defasında aç - işle -kapat yaparak verimsiz bir sonuç alırsın.
 
SQL(Structured English Query Language)
MSSQL(Microsoft SQL Server)

Birinin alması ya da birinin ismini değiştirmesi ne olduğunu değiştirmez. Dediğin gibi en başa dönecek olursak SEQUEL ile SQL aynı şeydir, MSSQL ve SQL farklı şeydir.



1) fopen'i async çalışan bir uygulamada(game gibi) bu şekilde kullanamazsın.
2) C, C++ ile PHP i kıyaslayamazsın.
3) Memcache dediğin şey konuyla çok alakasız.
4) Tekrar başa dönüyoruz.
- fopen ile file handle oluşturduğunda kapatana kadar başka bir uygulama ya da başka bir fonksiyon o dosyaya erişemez.
- fclose ile handle'ı kapatmazsan memory leak oluşur.
- fclose ile kapatmadığın sürece o dosyayı tekrar açamazsın.
- Dosyanın açılıp açılmadığını kontrol etmediğin için açılmayan dosyanın boş file handle'ını işlemeye çalıştığında uygulama patlar.
- Düzgün bir şekilde çalışması için fclose ile işin bitince kapatmalısın, Bu şekilde her defasında aç - işle -kapat yaparak verimsiz bir sonuç alırsın.
mssql ile sql arasında ki fark konusundan seninle düştüğümüz fikir ayrılığı şu yönde olabilir. SQL denince genel olarak Microsoft'un SQL Server'ı akla geliyor. Sorgu kodları için genel tabir Query olarak adlandırılıyor. Senin kullanım şekli aslında daha doğrusu ama sen daha çok kitap dilinden konuşuyorsun bende halk dilinden bu nokta bi anlaşmazlık yaşıyoruz bence.
fopen - fclose olayına gelince de fopen dosyayı açar memory'e cacheler , fclose'da dosyayı kapatır memory'dn siler. Şimdi burda da farklı bir algoritma devreye giriyor. Sen nadir kullanılan bir sayfayı cachelemek istiyorsan orda fclose ile kapatman gerekiyor kod bloğunu, çünkü hem memory'de gereksiz yer kaplamasın istersin hem de dosya ile işin kalmadığı için kapatman gerekiyor. Ama sık kullanılan yerlerde kapatmamak daha mantıklı çünkü dosya zaten açıldı memory'e atıldı 2. kullanımda tekrar o sayfayı açmaz memory'de zaten. Eğer sen bunu sık kullanılan bi yerde sürekli açar kapa yaparsan + gereksiz işlem olur. Ne gibi sonuçlar doğurur tam olarak bilmiyorum ama doğru kullanımı bu şekilde olduğunu düşünüyorum ve birkaç yerde de görmüştüm. fopen-fclose diye bi kalıp var doğru diyorsun ama kullanım yerine göre kalıplar değişir. Zaten bu yazında da "Bu şekilde her defasında aç - işle -kapat yaparak verimsiz bir sonuç alırsın." doğru noktaya değinmişsin o yüzden kapattırmıyorum dosyayı 2. kullanım için memory'den çektiriyorum.
İlk attığın postta'da sanırım fclose yapmadığım sürece kullanan 2. kişi için banword.txt dosyasını kullanamayacığını söylemişsin. Böyle bir şey yok. En basitinden anlık 2k hiti olan bir sitenin script'ini aynı algoritmayla kodladım ve bununla ilgili herhangi bir sorun almadım.Şimdi şunu diyebilirsin biri PHP biri C++ aynı tabanlı dilleri birbirleriyle kıyaslanabilir. Çalıştıkları platform farklı olabilir bu tamamen derleyici farkı en son yorumlandıkları nokta aynı yer. En basitinden Android'in yavaş olmasının sebebi Java tabanlı olduğu için, Java genel anlamda yavaş kaçıyor. Minecraft mesela en baba donanımların olsun gene'de kasma yapıyor. Aynı şekilde mobil platform'da çalışan İOS'un hızlı olmasının nedeni objective c dilini kullanmasından geliyor. Iphone'lara dikkat et, piyasada ki android cihazlardan donanım olarak daha düşük olmasına rağmen daha iyi performans veriyor. Bu hızda ona tabandaki C dilinden geliyor.
 
The currently code is a bit worm, you give him ban multiples and more then this and some things unsafe.
Here is rewritted something:
But structure is shit at the moment because you will destroy the server if you have 5k onlines, all people what write all time on chat he try to open and read the file.
You have to load all words into a vector just when server start and compare current chat line with all vectors elements.
I hope you get my points.
 
Son düzenleme:

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst