Dies ist eine mobil optimierte Seite, die schnell lädt. Wenn Sie die Seite ohne Optimierung laden möchten, dann klicken Sie auf diesen Text.

Was macht Loadbalancer mit "Lowest usage level" genau?

FANATLA

Spezialist
Registriert
24. August 2013
Beiträge
548
Reaktionspunkte
162
Punkte
103
Wenn ich 3 Proxy-Reader für HD+ habe die alle schnell genug sind (keine Freezer) und ich nur die Anzahl der Anfragen gerecht aufteilen will, werden bei lb_mode=3 auch die ECM-Zeiten herangezogen oder nur die Anzahl der Anfragen? Wenn also einer immer schneller ist wird der trotzdem bevorzugt? Oder werden die immer von Zeit zu Zeit gewechselt?
Oder ist lb_mode=2 (oldest reader first) wo immer pro Anfrage gewechselt wird dann besser?
Kann ich das mit dem Debug-Level 256 (Loadbalancer Logging) nachvollziehen?

edit (Log) mit lb_mode=3
2016/07/17 23:16:36 181FFC98 h (webif) all debug_level=256
2016/07/17 23:16:37 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [get_cw] NEW REQUEST!
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: client local for 1843&/30D4/89/0000: n=3 valid readers: hd02_1 hd02_2 hd02_3
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: --------------------------------------------
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: mode 3, nbest 1, nfb 1, max_reopen ALL, retrylimit 0 ms
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: reader hd02_1 lbvalue = 357 (time-avg 435)
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: reader hd02_2 lbvalue = 138 (time-avg 420)
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: reader hd02_2 --> ACTIVE
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: reader hd02_1 --> FALLBACK
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: reader hd02_3 blocked for 870 seconds (fail_factor 29), retrying in 380 seconds
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: --------------------------------------------
2016/07/17 23:16:37 66F0B70B c (stat) loadbalancer: client local for 1843&/30D4/89/0000: n=2 selected readers: [hd02_1] hd02_2
2016/07/17 23:16:37 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} NO local readers, set preferlocalcards = 0
2016/07/17 23:16:37 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [get_cw] wait_time 0 - client cacheex mode 0, reader avail for ecm 3, hitcache 0, preferlocalcards 0
2016/07/17 23:16:37 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [write_ecm_request] reader hd02_2 --> SENT 1
2016/07/17 23:16:38 533FCAE4 p (ecm) {client local, caid 1843, srvid 30D4} [write_ecm_answer] cyclecheck passed! Reader: hd02_2 rc: 0
2016/07/17 23:16:38 533FCAE4 p (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [write_ecm_answer] reader hd02_2 rc 0, ecm time 407 ms (407 ms)
2016/07/17 23:16:38 533FCAE4 p (stat) loadbalancer: adding stat for reader hd02_2: rc 0 1843&/30D4/89/0000 time 407 ms fail 0
2016/07/17 23:16:38 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [send_dcw] rc 0 from reader hd02_2
2016/07/17 23:16:38 66F0B70B c (ecm) local (1843&/30D4/89/0000): found (408 ms) by hd02_2 (P/1/2/3) - SAT.1 Gold HD
2016/07/17 23:16:44 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [get_cw] NEW REQUEST!
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: client local for 1843&/30D4/89/0000: n=3 valid readers: hd02_1 hd02_2 hd02_3
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: --------------------------------------------
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: mode 3, nbest 1, nfb 1, max_reopen ALL, retrylimit 0 ms
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: reader hd02_1 lbvalue = 357 (time-avg 435)
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: reader hd02_2 lbvalue = 138 (time-avg 408)
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: reader hd02_2 --> ACTIVE
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: reader hd02_1 --> FALLBACK
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: reader hd02_3 blocked for 870 seconds (fail_factor 29), retrying in 373 seconds
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: --------------------------------------------
2016/07/17 23:16:44 66F0B70B c (stat) loadbalancer: client local for 1843&/30D4/89/0000: n=2 selected readers: [hd02_1] hd02_2
2016/07/17 23:16:44 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} NO local readers, set preferlocalcards = 0
2016/07/17 23:16:44 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [get_cw] wait_time 0 - client cacheex mode 0, reader avail for ecm 3, hitcache 0, preferlocalcards 0
2016/07/17 23:16:44 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [write_ecm_request] reader hd02_2 --> SENT 1
2016/07/17 23:16:45 533FCAE4 p (ecm) {client local, caid 1843, srvid 30D4} [write_ecm_answer] cyclecheck passed! Reader: hd02_2 rc: 0
2016/07/17 23:16:45 533FCAE4 p (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [write_ecm_answer] reader hd02_2 rc 0, ecm time 408 ms (409 ms)
2016/07/17 23:16:45 533FCAE4 p (stat) loadbalancer: adding stat for reader hd02_2: rc 0 1843&/30D4/89/0000 time 408 ms fail 0
2016/07/17 23:16:45 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [send_dcw] rc 0 from reader hd02_2
2016/07/17 23:16:45 66F0B70B c (ecm) local (1843&/30D4/89/0000): found (410 ms) by hd02_2 (P/1/2/3) - SAT.1 Gold HD
2016/07/17 23:16:52 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [get_cw] NEW REQUEST!
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: client local for 1843&/30D4/89/0000: n=3 valid readers: hd02_1 hd02_2 hd02_3
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: --------------------------------------------
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: mode 3, nbest 1, nfb 1, max_reopen ALL, retrylimit 0 ms
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: reader hd02_1 lbvalue = 357 (time-avg 435)
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: reader hd02_2 lbvalue = 138 (time-avg 408)
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: reader hd02_2 --> ACTIVE
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: reader hd02_1 --> FALLBACK
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: reader hd02_3 blocked for 870 seconds (fail_factor 29), retrying in 366 seconds
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: --------------------------------------------
2016/07/17 23:16:52 66F0B70B c (stat) loadbalancer: client local for 1843&/30D4/89/0000: n=2 selected readers: [hd02_1] hd02_2
2016/07/17 23:16:52 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} NO local readers, set preferlocalcards = 0
2016/07/17 23:16:52 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [get_cw] wait_time 0 - client cacheex mode 0, reader avail for ecm 3, hitcache 0, preferlocalcards 0
2016/07/17 23:16:52 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [write_ecm_request] reader hd02_2 --> SENT 1
2016/07/17 23:16:52 533FCAE4 p (ecm) {client local, caid 1843, srvid 30D4} [write_ecm_answer] cyclecheck passed! Reader: hd02_2 rc: 0
2016/07/17 23:16:52 533FCAE4 p (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [write_ecm_answer] reader hd02_2 rc 0, ecm time 409 ms (410 ms)
2016/07/17 23:16:52 533FCAE4 p (stat) loadbalancer: adding stat for reader hd02_2: rc 0 1843&/30D4/89/0000 time 409 ms fail 0
2016/07/17 23:16:52 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [send_dcw] rc 0 from reader hd02_2
2016/07/17 23:16:52 66F0B70B c (ecm) local (1843&/30D4/89/0000): found (410 ms) by hd02_2 (P/1/2/3) - SAT.1 Gold HD
2016/07/17 23:16:59 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [get_cw] NEW REQUEST!
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: client local for 1843&/30D4/89/0000: n=3 valid readers: hd02_1 hd02_2 hd02_3
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: --------------------------------------------
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: mode 3, nbest 1, nfb 1, max_reopen ALL, retrylimit 0 ms
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: reader hd02_1 lbvalue = 357 (time-avg 435)
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: reader hd02_2 lbvalue = 138 (time-avg 409)
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: reader hd02_2 --> ACTIVE
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: reader hd02_1 --> FALLBACK
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: reader hd02_3 blocked for 870 seconds (fail_factor 29), retrying in 359 seconds
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: --------------------------------------------
2016/07/17 23:16:59 66F0B70B c (stat) loadbalancer: client local for 1843&/30D4/89/0000: n=2 selected readers: [hd02_1] hd02_2
2016/07/17 23:16:59 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} NO local readers, set preferlocalcards = 0
2016/07/17 23:16:59 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [get_cw] wait_time 0 - client cacheex mode 0, reader avail for ecm 3, hitcache 0, preferlocalcards 0
2016/07/17 23:16:59 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [write_ecm_request] reader hd02_2 --> SENT 1
2016/07/17 23:16:59 533FCAE4 p (ecm) {client local, caid 1843, srvid 30D4} [write_ecm_answer] cyclecheck passed! Reader: hd02_2 rc: 0
2016/07/17 23:16:59 533FCAE4 p (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [write_ecm_answer] reader hd02_2 rc 0, ecm time 411 ms (411 ms)
2016/07/17 23:16:59 533FCAE4 p (stat) loadbalancer: adding stat for reader hd02_2: rc 0 1843&/30D4/89/0000 time 411 ms fail 0
2016/07/17 23:16:59 66F0B70B c (ecm) {client local, caid 1843, prid 000000, srvid 30D4} [send_dcw] rc 0 from reader hd02_2
2016/07/17 23:16:59 66F0B70B c (ecm) local (1843&/30D4/89/0000): found (412 ms) by hd02_2 (P/1/2/3) - SAT.1 Gold HD
 
Zuletzt bearbeitet:
AW: Was macht Loadbalancer mit "Lowest usage level" genau?

Sieht nicht so aus, als ob lb_mode=3 hier funktioniert, sieht eigentlich aus wie lb_mode=1, da immer Reader 2 bevorzugt wird. Reader 3 liefert überhaupt nichts Verwertbares und Reader 2 wird schon aufgrund seines hohen LB-Wertes fast immer die Nase vorn haben, wenn es um Geschwindigkeit geht.
 
AW: Was macht Loadbalancer mit "Lowest usage level" genau?

Der dürfte schon funktionieren aber er ist halt schon sehr gut angelernt weil die Statistiken gespeichert werden. Es sind auch alle Anfragen im 10000er-Bereich (ECM-Count) ziemlich gerecht verteilt. Mir ging es nur um die Funktionsweise gegenüber dem Mode 2 weil da bei jeder einzelnen Anfrage gewechselt wird. Das Log hab ich nur als Ergänzung gepostet.
Ich könnte auch den Code durchschauen vom Loadbalancer weil ich C++ grundsätzlich verstehe aber bei so einem komplexen Programm steige ich irgenwann aus.
"lowest usage level, hier wird eine Durchschnitts Antwortzeit aus 5 ecm's berechnet und der Reader mit der niedrigsten Auslastung wird genommen."
Danach spielen doch die Zeiten eine Rolle.

edit: Reader 3 wird halt hier eine Zeit lang gesperrt weil er öfter nicht geantwortet hat wie ich das mit dem fail_factor verstehe.
 
AW: Was macht Loadbalancer mit "Lowest usage level" genau?

Du hast Recht, lb_mode=3 ist an, steht ja im Log, hatte ich zwar gesucht aber vorhin überlesen. In der deutschen Wiki steht von Antwortzeiten nichts, in der englischen schon. Scheinbar wurde das hier wieder ins Deutsche rückübersetzt. Was diese Aussage so wie sie da steht jetzt aber für einen Sinn ergeben soll, ist mir nach wie vor schleierhaft. Es macht doch keinen Sinn, nach Auslastung vorgehen zu wollen und dann doch wieder auf die Antwortzeiten abzustellen oder diese auch nur ins Spiel zu bringen. Hast du den Readern denn LB-Werte zugeordnet oder wurden diese nach Auslastung berechnet?
 
AW: Was macht Loadbalancer mit "Lowest usage level" genau?

Der hat alles selbst berechnet, die LB-Werte sind auf Default (100). Es passt auch alles soweit, er bleibt eine Zeit lang bei einem Reader und wechselt von Zeit zu Zeit wieder zu einem der anderen. Sobald ein Ausreißer bei den Zeiten vorkommt fragt er glaube ich 5x beide ab wobei einer als Fallback gehandhabt wird (was Freezer vermeidet) und entscheidet sich danach wieder für einen. Jedenfalls ist er sehr klug denn ich habe nie Freezer auch wenn einer plötzlich ausfällt wegen Zwangstrennung oder so.
 
Für die Nutzung dieser Website sind Cookies erforderlich. Du musst diese akzeptieren, um die Website weiter nutzen zu können. Erfahre mehr…