![]() |
XRootD
|
#include <XrdThrottleManager.hh>
Public Member Functions | |
XrdThrottleManager (XrdSysError *lP, XrdOucTrace *tP) | |
~XrdThrottleManager () | |
void | Apply (int reqsize, int reqops, int uid) |
bool | CheckLoadShed (const std::string &opaque) |
bool | CloseFile (const std::string &entity) |
void | Init () |
bool | IsThrottling () |
bool | OpenFile (const std::string &entity, std::string &open_error_message) |
void | PerformLoadShed (const std::string &opaque, std::string &host, unsigned &port) |
void | PrepLoadShed (const char *opaque, std::string &lsOpaque) |
void | SetLoadShed (std::string &hostname, unsigned port, unsigned frequency) |
void | SetMaxConns (unsigned long max_conns) |
void | SetMaxOpen (unsigned long max_open) |
void | SetMonitor (XrdXrootdGStream *gstream) |
void | SetThrottles (float reqbyterate, float reqoprate, int concurrency, float interval_length) |
XrdThrottleTimer | StartIOTimer () |
Static Public Member Functions | |
static int | GetUid (const char *username) |
Protected Member Functions | |
void | StopIOTimer (struct timespec) |
Friends | |
class | XrdThrottleTimer |
Definition at line 45 of file XrdThrottleManager.hh.
XrdThrottleManager::XrdThrottleManager | ( | XrdSysError * | lP, |
XrdOucTrace * | tP | ||
) |
Definition at line 27 of file XrdThrottleManager.cc.
|
inline |
Definition at line 89 of file XrdThrottleManager.hh.
void XrdThrottleManager::Apply | ( | int | reqsize, |
int | reqops, | ||
int | uid | ||
) |
Definition at line 258 of file XrdThrottleManager.cc.
References AtomicBeg, AtomicEnd, AtomicInc, TRACE, and XrdSysCondVar::Wait().
bool XrdThrottleManager::CheckLoadShed | ( | const std::string & | opaque | ) |
bool XrdThrottleManager::CloseFile | ( | const std::string & | entity | ) |
Definition at line 192 of file XrdThrottleManager.cc.
References XrdSysThread::Num(), and TRACE.
Referenced by XrdThrottle::File::close(), and XrdThrottle::File::open().
|
static |
Definition at line 471 of file XrdThrottleManager.cc.
Referenced by XrdThrottle::File::open().
void XrdThrottleManager::Init | ( | ) |
Definition at line 46 of file XrdThrottleManager.cc.
References DEBUG, XrdSysError::Emsg(), XrdSysThread::Run(), and TRACE.
|
inline |
Definition at line 59 of file XrdThrottleManager.hh.
bool XrdThrottleManager::OpenFile | ( | const std::string & | entity, |
std::string & | open_error_message | ||
) |
Definition at line 115 of file XrdThrottleManager.cc.
References XrdSysThread::Num(), and TRACE.
Referenced by XrdThrottle::File::open().
void XrdThrottleManager::PerformLoadShed | ( | const std::string & | opaque, |
std::string & | host, | ||
unsigned & | port | ||
) |
Definition at line 577 of file XrdThrottleManager.cc.
void XrdThrottleManager::PrepLoadShed | ( | const char * | opaque, |
std::string & | lsOpaque | ||
) |
Definition at line 553 of file XrdThrottleManager.cc.
References XrdOucEnv::Get().
Referenced by XrdThrottle::File::open().
|
inline |
Definition at line 65 of file XrdThrottleManager.hh.
|
inline |
Definition at line 70 of file XrdThrottleManager.hh.
|
inline |
Definition at line 68 of file XrdThrottleManager.hh.
|
inline |
Definition at line 72 of file XrdThrottleManager.hh.
Referenced by XrdThrottle::FileSystem::Configure().
|
inline |
Definition at line 61 of file XrdThrottleManager.hh.
XrdThrottleTimer XrdThrottleManager::StartIOTimer | ( | ) |
Definition at line 489 of file XrdThrottleManager.cc.
References AtomicBeg, AtomicDec, AtomicEnd, AtomicInc, XrdSysCondVar::Wait(), and XrdThrottleTimer.
|
protected |
Definition at line 513 of file XrdThrottleManager.cc.
References AtomicAdd, AtomicBeg, AtomicDec, and AtomicEnd.
Referenced by XrdThrottleTimer::StopTimer().
|
friend |
Definition at line 48 of file XrdThrottleManager.hh.
Referenced by StartIOTimer().