• 14-07-2020, 23:52:24
    #1
    Merhabalar,

    PHP ile bir chat sistemi kuruyorum. Yazılımcı arkadaşlarım ve çevrem socket kullanmamı öneriyor. Salt php + ajax ile zaten biliyorsunuz ki chat (sohbet) problemler yaratıyor performans konusunda. Socket'te başka bir port açmak istemedim sunucuda. Var mı önerileriniz?
  • 15-07-2020, 00:00:52
    #2
    PHP ve Ajax ile ortaya çıkan sohbet uygulaması gerçekten stabil çalışıyor mu ? Canlıda bulunuyorsa incelemek isterim. Bu iş socketsiz yapılmamalı bence.
  • 15-07-2020, 00:02:52
    #3
    haktanyucel adlı üyeden alıntı: mesajı görüntüle
    PHP ve Ajax ile ortaya çıkan sohbet uygulaması gerçekten stabil çalışıyor mu ? Canlıda bulunuyorsa incelemek isterim. Bu iş socketsiz yapılmamalı bence.
    Stabillik bir kenara performans ve trafiği emiyor resmen Socketsiz yol düşünüyorum valla hocam bende olur mu olmaz mı diye merak ettim. Fikri olan varsa, fikirlere açığım
  • 15-07-2020, 00:03:43
    #4
    r10 tarzı anlık olmayan bir sistem olacaksa php işinizi görür ama sakın php ajax ile yapmaya kalkışmayın anlık olarak mesajlaşma yapacaksanız socket kullanın stabil olur
  • 15-07-2020, 00:05:07
    #5
    emreires adlı üyeden alıntı: mesajı görüntüle
    Stabillik bir kenara performans ve trafiği emiyor resmen Socketsiz yol düşünüyorum valla hocam bende olur mu olmaz mı diye merak ettim. Fikri olan varsa, fikirlere açığım
    Socket iyidir, PHP ve Ajax ile performans da olmaz stabiilite de.
  • 15-07-2020, 00:11:26
    #6
    CanOffline adlı üyeden alıntı: mesajı görüntüle
    r10 tarzı anlık olmayan bir sistem olacaksa php işinizi görür ama sakın php ajax ile yapmaya kalkışmayın anlık olarak mesajlaşma yapacaksanız socket kullanın stabil olur
    Anlık olacak Dediğim gibi socket'ten başka çare zaten yok sanırım. Teşekkürler yorumunuz için.
  • 15-07-2020, 00:13:26
    #7
    Socket için port açmak istemiyorsanız firebase'in real time database özelliğini kullanabilirsiniz. Aşağıya örnek olması açısından bir projenin linkini bırakıyorum.

    https://github.com/FirebaseExtended/firechat
  • 15-07-2020, 00:15:35
    #8
    MSA adlı üyeden alıntı: mesajı görüntüle
    Socket için port açmak istemiyorsanız firebase'in real time database özelliğini kullanabilirsiniz. Aşağıya örnek olması açısından bir projenin linkini bırakıyorum.

    https://github.com/FirebaseExtended/firechat
    Çok teşekkürler, inceliyorum.
  • 15-07-2020, 00:20:12
    #9
    ztk
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Ben de bunu anlamıyorum, sunucuda yeni bir port açmak istemedik ne demek. Kızmayın ama çok saçma.
    Sunucunun işi bu yani gerekiyorsa açacaksınız. Sunucu sizin işinizi yapmak için var, bir tane fazla port açmak neden rahatsız ediyor. Onlarca port açık zaten yani ne sebebi olabilir.

    Yine kızmayın ama benim aklıma ilk ne geldi biliyor musunuz? Siz websocket i bilmiyorsunuz, öğrenmesi de zor geliyor, şimdi onu öğrenmek yerine bildiğimiz metodlardan başka bir yol var mı onu araştırıyorsunuz. Vallahi de bu canlandı kafamda direk.

    Gerçek zamanlı chat uygulaması için websocket kullanmak zorundasınız. Başka bir yöntem varsa da temelinde ya websocket vardır yada TCP protokolü üzerinde long polling yaparak socket taklit edilir. Firebase gibi gerçek zamanlı veritabanları kullanabilirsiniz belki ama yine de o iş için değil firebase, bence.

    Ajax la kesinlikle olmaz. 100 kişinin aktif olduğu sistemde kimse kimseye 3 gün mesaj atmazsa siz her 5 saniyede bir yeni mesaj var mı diye kontrol etseniz dakikada 1200 request, 3 günde 5.184.000 request i boş yere atacaksınız demektir.

    Böyle bir şey yapacaksanız da yapmayın, yaptıysanız da imha edin yani şu güzelim teknolojileri kullanmayacaksanız lütfen yapmayın.