GetWeighting is a project mainly written in C++, it's free.
get weighting for keepalived by snmp request and cache it with memchached