Puncte:1

Relaționați sesiunile și logurile NAT aproape în timp real

drapel br

Am un sistem de înregistrare a activității utilizatorului și un sistem de interogare pentru un ISP cu o rată foarte mare a evenimentelor de jurnal (5k-10K/secundă). Trebuie să relaționeze atât jurnalele de sistem Radius/Session, cât și NAT pe baza unui comun IP intern camp. Fiecare sesiune are două evenimente Start și Stop. Datele de aproximativ 24 de ore produse de 3000 de utilizatori pot fi ca 20 de milioane de înregistrări, care se estimează să crească.

Soluția mea constă din 2 agenți de analiză și persistență pentru fiecare tip de jurnal, scrise în Golang cu postgresql db backend. Am mai multe probleme de ambele părți. Analiza și stocarea nu pot ține pasul cu rata mare de date chiar și după evenimentele syslog de tamponare (în memorie). Pentru păstrarea spațiului, trebuie să grupez fiecare sesiune într-o singură înregistrare și să identific un utilizator de sesiune NAT din alt jurnal, implementat printr-un declanșator. Tampoanele ocupă memoria RAM și în cele din urmă procesul este oprit. Scrierea în PGSQL este lentă din cauza identificării utilizatorului și a indicilor de pe tabel.

Pentru a-mi revedea abordarea și am vrut să caut sugestii despre cum să îmbunătățesc performanța. Indiferent de abordarea pe care o adopt, trebuie să identific utilizatorul NAT din jurnalele Radius Session înainte de a persiste aceste date în baza de date.

Nikita Kipriyanov avatar
drapel za
Cred că această întrebare cere mai degrabă opinii decât soluții. Acesta ar fi un off-topic aici.
iamadnan avatar
drapel br
@NikitaKipriyanov Am prezentat problema cu care mă confrunt cu soluția mea actuală și caut un sfat de specialitate. Totul nu trebuie să fie o eroare sau o întrebare simplă legată de configurație/funcție. Vă rog să-mi spuneți ce forum ar putea fi mai potrivit de abordat în cazul meu.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.