Yep Gün başlar,


Çalışmaya başlamadan önce  biraz isim vardi (anxiety icin doktor ilac vermisti ve ise yaramisti otism kaynakli anxiety'ye.  o bitmek uzere bugun cumartesi sandim hizlicana ogleden sonra olmadan gittim eczaneye almak icin )


o yuzden bugun sehre gittim hmm gunes gozlugum de kirilmisti bir tanesi digeri de cok tipsiz duruyordu.  yeni aldigim da tipsiz dursa da daha normal tipsiz duruyor.  hmm yani takilabilir bir gunes gozlugu.  digeri cok tipsiz duruyor digeri de kirilmisti.  



 o yuzden bujitericiden gittim gozluk aldim sehre inmisken. 


sonrasinda da boyle eve geldim.  simdi kod yazma calismaca. yep. 


simdi bir oncesinde anneme yemek yapmaca falan. yep.  

bahsetmeyelim. 

 


sonrasinda tum gun calismaca part time coding sonrasinda da kitap calisma taskine baslamaca. 




yep anneme yemek yaptim toparladim etrafi sonra da. yep. 



simdi kod/calismaca. 

yep!


simdi symmetric NAT sorunsalini cozmece. hmm bir socket factory hem game engine'in socketini ureticek hem de hmm periodic sekilde keep alive messagini (router port mappingi silinmesin diye) tackle eden socketi deliver edicek. 


yep bir c++ kodu yazmanin bu kadar zor oldugunu unutmusum. ya bu plugin yazmak ne zor ismis. 4 5 ay oldu nerdeyse. umarim bugun kod calisir ve yep kalan eksiklikleri tamamlarim part time olarak. part time da real-complex analiz kitabina calisirim bugun.  yep.

 dun artik dedim bu ne? yani 100 kez test et dur hic calismiyor plugin'in socket mekanizmasi benim editledigim.  megersem symmetric nat yuzundenmis. ama bir ara dun cok upset oldum bu ne dedim. ne zormus c++ dedim. (uzun zamandir cok uzun zamandir c++ kod yazmiyordum)  

hayir test etmesi de kolay degil. once plugin compile ediyorsun belki 1 dakika suruyor. sonra windows package aliyorsun o 5 dakika suruyor. sinra exe aciyorsun. exe register to server yapiyor sonra STN port gather ediyor. tam ondan sonra orda session yaratiyorsun.  snora diger bir windows exe aciyorsun yine server register etmesini bekle (benim self yazdigim dbim nedense hizli degil cok bakicam niye o functionda 5 6 saniye aliyor (sadece loginde oyle bir gariplik var. duzeltilebilir bence. bir sorun var sanirim login db functioninda yazdigim delta lake python librarylerle ve cloud bucket storage'da delta lake olarak store etmece (fakat niyeyse login 5/6 saniye suruyor diger http functionlar degil ama login oyle. cok garip. bakicam sonra duzeltirim sonra. ) ).) sonrasinda da 2 kez gather ip port (bu hizli 1 saniyeden az, native webrtc librarysi ile stun serverindan soruluyor) iste ondan sonra sesiona connect ediyorum,  hic load olmuyor.  100 kez test ettim bir turlu calismadi (gerci bir suru sorun cozdum o sirada baska kod hatalari da varmis) en son artik wireshark kurdum orda belli oldu ki router'a session server public ipsine packet gonderince, router icmp donuyormus surekli (symmetric nat yuzunden.  cunku daha once stun port mappingi yapilmisti specific portlar icin).     


simdi de bu sorunu cozecek, symmetric ip de de calisacak kod yazmaca. yep.

umarim bundan sonra session'a baglandiginda load eder en sonunda. 2 gundur belki 100-150 kez test ettim. cok yorucuydu bu test case. (yani hmm session'a join etme test case'i) cok yorucuydu 2 gundur en az 100-150 kez test ettim son iki gundur (her seferinde en az 10 dakika suren test baslangic suresi var, (sonrasinda da load etmedigni gormek icin :) komik :) )  degisiklikleri compile etme package uretme, sonra session yaratma falan filan )hic calistiramiyarak, megersem symmetric nat yuzunden imis.

 


symmetric nat supportu onemli . cunku turn server kurmak masrafli. burda tek serverlar hmm GKE kubernetes te olan nodejs(socketio) ve py (db) serveri.  hmm unreal engine listen server seklinde calisiyor yani.  dedicated server yok (cunku masraf demek). su an tek masraf hmm 100dolar gibi gecen ay GKE masrafi olmustu belki bu ay daha az olur bilmiyorum.  bir de bir serverda da bir iste hmm some document'i falan (terms of data sharing to third party alike etc etc dokumani )  o da 24 dolar gibi aylik servis. o yuzden bir de turn server kursam oooo onun da masrafi olur. gerek yok.  symmetric nat issue'sini kodtan cozulebilir. 

bunlari ben cozemezdim kendim bence. cunku ben hic detayli stun konusunu bilmiyordum cogu zaman search engine google'a sordum bu stun olayini.  ornegin symmetric nat issue'sunu ordan ve neden calismadigini symmetric natta ordan ogrendim bu stun protocolun detayini falan. 


simdi plugin yazmada son sprint bence siu anki sprint. ben cok daha kolay saniyordum bu plugin taski. belli bir zorlukta oldugunu dusunmustum ama bu kadar zor olucagini tahmin dahi edememistim.  neyse son sprintte plugin yazma taskinde. 


umarim bu sefer load eder. sonrasinda kalan hatalari (bazi hatalar var) ayiklarim once bu ilkin sorun cozulsun sonraki hatalar kolay ayiklamasi (basit hatalar var cozulecek falan) sonrasinda oyunda da hatalar var onu da cozucem sonra. (basit hatalar yine) 


sonrasinda oyun yerine yuklemece falan bayagi test ettikten sonra (mars rover fight (planetary rover fight game) 


simdi yeter artik bugunku tembellik, simdi projelere calismaca. ilkin bu plugin taskleri sonrasinda real ve complex analiz kitaplarina bir calismaca banach tarski idea frameworkization taski gorevleri icinde.  












Yorumlar

Bu blogdaki popüler yayınlar

disgusting terrsts of foreign gypsies foreign terrorst grp/cult