Overview
Comment: | Added accelerated back-off in server:kind-run |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | server-log-handshaking |
Files: | files | file ages | folders |
SHA1: |
33121e3cd8d83526fd69d869afe0a301 |
User & Date: | mrwellan on 2017-02-01 09:48:33 |
Other Links: | branch diff | manifest | tags |
Context
2017-02-01
| ||
10:50 | Fixed an issue with log-rotate that was causing some run-away scenarios. check-in: a05b1e5025 user: mrwellan tags: server-log-handshaking | |
09:48 | Added accelerated back-off in server:kind-run check-in: 33121e3cd8 user: mrwellan tags: server-log-handshaking | |
2017-01-31
| ||
13:20 | Don't fixate on first possible best server, if it isn't good keep on looking for a good candidate check-in: 8de206008d user: mrwellan tags: server-log-handshaking | |
Changes
Modified server.scm from [cac20c539c] to [5c1183db18].
︙ | ︙ | |||
249 250 251 252 253 254 255 | (let ((sig (server:mk-signature))) (set! *my-client-signature* sig) *my-client-signature*))) ;; kind start up of servers, wait 40 seconds before allowing another server for a given ;; run-id to be launched (define (server:kind-run areapath) | | > | > > > > > > | < | | | 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 | (let ((sig (server:mk-signature))) (set! *my-client-signature* sig) *my-client-signature*))) ;; kind start up of servers, wait 40 seconds before allowing another server for a given ;; run-id to be launched (define (server:kind-run areapath) (let* ((last-run-dat (hash-table-ref/default *server-kind-run* areapath '(0 0))) ;; callnum, whenrun (call-num (car last-run-dat)) (when-run (cadr last-run-dat)) (run-delay (+ (case call-num ((0) 0) ((1) 20) ((2) 300) (else 600)) (random 5)))) ;; add a small random number just in case a lot of jobs hit the work hosts simultaneously (if (> (- (current-seconds) when-run) run-delay) (server:run areapath)) (hash-table-set! *server-kind-run* areapath (list (+ call-num 1)(current-seconds))))) (define (server:start-and-wait areapath #!key (timeout 60)) (let ((give-up-time (+ (current-seconds) timeout))) (let loop ((server-url (server:check-if-running areapath))) (if (or server-url (> (current-seconds) give-up-time)) server-url |
︙ | ︙ |