#include "squid.h"
#include "auth/UserRequest.h"
#include "base/RunnersRegistry.h"
#include "CachePeer.h"
#include "CachePeers.h"
#include "globals.h"
#include "HttpRequest.h"
#include "mgr/Registration.h"
#include "neighbors.h"
#include "peer_userhash.h"
#include "PeerSelectState.h"
#include "SquidConfig.h"
#include "Store.h"
#include <cmath>
![](peer__userhash_8cc__incl.png)
Go to the source code of this file.
Classes | |
class | PeerUserHashRr |
reacts to RegisteredRunner events relevant to this module More... | |
Macros | |
#define | ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n)))) |
Functions | |
static auto & | UserHashPeers () |
userhash peers ordered by their userhash weight More... | |
static void | peerUserHashRegisterWithCacheManager (void) |
static int | peerSortWeight (const void *a, const void *b) |
static void | peerUserHashInit (void) |
DefineRunnerRegistrator (PeerUserHashRr) | |
CachePeer * | peerUserHashSelectParent (PeerSelector *ps) |
static void | peerUserHashCachemgr (StoreEntry *sentry) |
Variables | |
static OBJH | peerUserHashCachemgr |
Macro Definition Documentation
◆ ROTATE_LEFT
#define ROTATE_LEFT | ( | x, | |
n | |||
) | (((x) << (n)) | ((x) >> (32-(n)))) |
Definition at line 30 of file peer_userhash.cc.
Function Documentation
◆ DefineRunnerRegistrator()
DefineRunnerRegistrator | ( | PeerUserHashRr | ) |
◆ peerSortWeight()
|
static |
Definition at line 44 of file peer_userhash.cc.
References CachePeer::weight.
Referenced by peerUserHashInit().
◆ peerUserHashCachemgr()
|
static |
Definition at line 208 of file peer_userhash.cc.
References storeAppendPrintf(), and UserHashPeers().
◆ peerUserHashInit()
|
static |
Definition at line 52 of file peer_userhash.cc.
References assert, CurrentCachePeers(), double, int, PEER_PARENT, peerSortWeight(), peerUserHashRegisterWithCacheManager(), ROTATE_LEFT, and UserHashPeers().
Referenced by PeerUserHashRr::syncConfig(), and PeerUserHashRr::useConfig().
◆ peerUserHashRegisterWithCacheManager()
|
static |
Definition at line 137 of file peer_userhash.cc.
References peerUserHashCachemgr, and Mgr::RegisterAction().
Referenced by peerUserHashInit().
◆ peerUserHashSelectParent()
CachePeer* peerUserHashSelectParent | ( | PeerSelector * | ps | ) |
Definition at line 155 of file peer_userhash.cc.
References assert, HttpRequest::auth_user_request, debugs, peerHTTPOkay(), PeerSelector::request, ROTATE_LEFT, UserHashPeers(), and Auth::UserRequest::username().
Referenced by PeerSelector::selectSomeParent().
◆ UserHashPeers()
|
static |
Definition at line 34 of file peer_userhash.cc.
Referenced by peerUserHashCachemgr(), peerUserHashInit(), and peerUserHashSelectParent().
Variable Documentation
◆ peerUserHashCachemgr
|
static |
Definition at line 40 of file peer_userhash.cc.
Referenced by peerUserHashRegisterWithCacheManager().
Introduction
- About Squid
- Why Squid?
- Squid Developers
- How to Donate
- How to Help Out
- Getting Squid
- Squid Source Packages
- Squid Deployment Case-Studies
- Squid Software Foundation
Documentation
- Quick Setup
- Configuration:
- FAQ and Wiki
- Guide Books:
- Non-English
- More...
Support
- Security Advisories
- Bugzilla Database
- Mailing lists
- Contacting us
- Commercial services
- Project Sponsors
- Squid-based products