Open catnug opened 5 months ago
Merhaba, bu sorunu ben de yaşıyorum. Aynı şekilde node.js kullanıyorum. "ws" kütüphanesini kullanıyorum.
Sorunun kütüphaneyle alakası olduğunu düşünmüyorum. Sorun bence de server tabanlı. Umarım en kısa sürede çözülür.
Sorunu orderbook ve ticker streamlerinde şu şekilde çözdüm:
Merhaba,
Yasadigim sorunun ozeti su sekilde. Belirli olmayan bir sure sonra, websocket server i abone oldugum kanallardan mesaj gondermeyi birakiyor. Yarattigim connection 'close' olmamasina ragmen.
detay tanimlama ve birebir yasadigim case i detayli aktariyorum. sorunun nedenini ve kaynagini tespit konusunda gerekli zamani harcadim. benim kodum da sorun olmadigina kaanat getirdim, server in mesaj gondermeyi biraktigi kanaatine vardim. bu kanaate varis nedenimi de asagida yazicam.
1 - /trade, /orderbook gibi kanallara 40-50-60 farkli symbol icin basarili bir sekilde subscribe oluyorum 2 - private verileri almak icin basarili sekilde login de oluyorum 3 - gerekli ping-pong yapisina sahibim.
4 - baglanti disconnet oldugunda, gerekli sekilde yeniden connect olma aksiyonumda tamam ve calisiyor. disconnet oluyor gerekli sure sonra yeniden baglaniyor ve islemime olmasi gerektigi gibi devam ediyorum burada sorun yok 5 - !!!!! ama belirli olmayan bir sure sonucunda, bazen 2 saat bazen 4 saat bazen hatta 12 16 saat sonra, mesaj alamiyorum artik. 6 -
conn.on('close',handler)
, handler im calismiyor ,yani close event i soz konusu degil 7 - connection nesnesinireadyState
ozelligine baktigimda hala OPEN (1) oldugunu goruyorum 8 - hem /trade, /orderbook , hemde private veriler gelmiyor hadi diyorum acaba login oldugum session beni bir sure sonra atti mi acaba demistim hayir hic bir mesaj gelmiyor (orderbok dan da trade den de ).conn.on('message', handler)
buraya koydugum log lardan bunu gozlemleyebiliyorum 9 - tekrar ediyorum burasi cokomelli readyState im hala 1 yani connection acik. ama mesaj gelmiyor server dan. 10- uygulamayi sonlandirip yeniden baslattigimda., hersey olmasi gerken gibi devam ediyoryukarida tarif ettitgim sorun nedeni ile uygulamayi tek basina birakamiyoruz,. bu kodu yazmamizin amaci saten otomasyon. 20dk 30dk da bir kontrol ettikten sonra ne gerek var otomasyona :(
tarif ettigim sorunu degerlendirmenizi, kaynagi konusunda beni bilgilendirmenizi ve cozumu hususunda beni yonlendirmenizi rica ediyorum.
eger sorunu ilk defa benden duyduysaniz nedenini bulamiyorsaniz, mail ile iletisime gecerek case olustugunda uygulamayi sonlandirmadan userID im uzerinden incelemeniz icin yardimci bile olabilirim okadar onemli bir konu bizim icin,
not: NodeJS de websocket peketini kullaniyorum. kendi client imi kullaniyorum
tsk.