tensorflow:: מָנָה:: ServableStateMonitor

#include <servable_state_monitor.h>

כלי עזר שמאזין ל-EventBus<ServableState>, ועוקב אחר המצב של כל שרת המוזכר באוטובוס.

סיכום

מקרה השימוש המיועד הוא לעקוב אחר מדינות servables בתוך מנהל .

מציע ממשק לשאילתה של המצבים הניתנים להגשה. זה עשוי להיות שימושי כבסיס ללוחות מחוונים, כמו גם לבדיקת מנהל.

חשוב: אתה חייב ליצור צג זה לפני ההסדרה לאירועים להתפרסם באוטובוס האירוע, למשל מתן האוטובוס לאירועים לקבוצת מנהל .

בנאים והורסים

ServableStateMonitor (EventBus< ServableState > *bus, const Options & options)
~ServableStateMonitor ()

טיפוסים ציבוריים

BoundedLog באמצעות
std::deque< ServableStateAndTime >
NotifyFn באמצעות
std::function< void(const ServableState &)>
ServableMap באמצעות
std::map< ServableName, VersionMap >
ServableName באמצעות
string
ServableSet באמצעות
std::set< ServableName >
ServableStateNotifierFn באמצעות
std::function< void(bool reached_goal_state, const std::map< ServableId, ServableState::ManagerState > &states_reached)>
מודיע כאשר כל האפשרויות להגשה הגיעו ל-'goal_state'.
Version באמצעות
int64
VersionMap באמצעות
std::map< Version, ServableStateAndTime, std::greater< Version >>

תפקידים ציבוריים

ForgetUnloadedServableStates ()
void
מסיר את כל הגרסאות הניתנות להגשה מ- ServableMap שהמצבים שלה עברו ל-kEnd.
GetAllServableStates ()
ServableMap
מחזירה את המצבים הנוכחיים של כל הגרסאות במעקב של כל השרתים.
GetAvailableServableStates ()
ServableSet
GetBoundedLog ()
BoundedLog
מחזירה את היומן התחום הנוכחי של אירועי מצב שניתנים לטיפול.
GetLiveServableStates ()
ServableMap
מחזירה את המצבים הנוכחיים של כל הגרסאות של כל השרתים שלא עברו למצב ServableState::ManagerState::kEnd.
GetState (const ServableId & servable_id)
optional< ServableState >
מחזירה את המצב הנוכחי של שרת אחד, או nullopt אם קובץ ההגשה אינו נמצא במעקב.
GetStateAndTime (const ServableId & servable_id)
optional< ServableStateAndTime >
מחזירה את המצב והשעה הנוכחיים של שרת אחד, או נולופ אם קובץ ההגשה אינו נמצא במעקב.
GetVersionStates (const string & servable_name)
VersionMap
מחזירה את המצבים הנוכחיים של כל הגרסאות במעקב של הנתון להגשה, אם בכלל.
Notify (const NotifyFn & notify_fn)
void
NotifyWhenServablesReachState (const std::vector< ServableRequest > & servables, ServableState::ManagerState goal_state, const ServableStateNotifierFn & notifier_fn)
void
WaitUntilServablesReachState (const std::vector< ServableRequest > & servables, ServableState::ManagerState goal_state, std::map< ServableId, ServableState::ManagerState > *states_reached) TF_MUST_USE_RESULT
bool
בדומה ל-NotifyWhenServablesReachState(...), אך במקום להודיע, אנו ממתינים עד ל-'goal_state' או kEnd.

מבנים

tensorflow :: המשרתים :: ServableStateMonitor :: אפשרויות
tensorflow :: המשרתים :: ServableStateMonitor :: ServableStateAndTime

טיפוסים ציבוריים

BoundedLog

std::deque< ServableStateAndTime > BoundedLog

NotifyFn

std::function< void(const ServableState &)> NotifyFn

מפת שירות

std::map< ServableName, VersionMap > ServableMap

שם ניתן להגשה

string ServableName

סט שניתן להגשה

std::set< ServableName > ServableSet

ServableStateNotifierFn

std::function< void(bool reached_goal_state, const std::map< ServableId, ServableState::ManagerState > &states_reached)> ServableStateNotifierFn

מודיע כאשר כל האפשרויות להגשה הגיעו ל-'goal_state'.

ניתן להגדיר בשתי דרכים:

  1. כגרסאות ספציפיות של שם זרם שניתן להגשה. במקרה זה, אנו בודקים אם הגרסה הספציפית הגיעה ל-'goal_state' או kEnd.
  2. כגרסאות אחרונות, ובמקרה זה כל גרסה עבור שם זרם שניתן להגשה תותאמה ל-'goal_state' או kEnd.

אנו קוראים ל-'notifier_fn' כאשר שני התנאים מתקיימים -

  1. כל הבקשות הספציפיות שניתנות להגשה הגיעו ל-'goal_state' או kEnd.
  2. כל הבקשות האחרונות שניתנות להגשה הגיעו ל-'goal_state' או kEnd. ה-'notifier_fn' ייקרא פעם אחת בלבד, ולא שוב ושוב.

הארגומנט 'reached_goal_state' מוגדר כ-true אם כל השרתים הספציפיים הגיעו ל-'goal_state'. אז המתקשרים צריכים לוודא ש-'reached_goal_state' נכון ב-'notifier_fn'.

הארגומנט 'States_reached' מאוכלס במזהה של השרת ובמצב אליו הגיע. המצב יהיה 'goal_state' אם 'reached_goal_state' הוא אמיתי, אחרת הוא יכיל שרת אחד או יותר במצב kEnd. עבור בקשות אחרונות שניתנות להגשה, המזהה שניתן להגשה יהיה המזהה של הניתן להגשה בזרם שהגיע למדינה.

גִרְסָה

int64 Version

VersionMap

std::map< Version, ServableStateAndTime, std::greater< Version >> VersionMap

תפקידים ציבוריים

ForgetUnloadedServableStates

void ForgetUnloadedServableStates()

מסיר את כל הגרסאות הניתנות להגשה מ- ServableMap שהמצבים שלה עברו ל-kEnd.

GetAllServableStates

ServableMap GetAllServableStates()

מחזירה את המצבים הנוכחיים של כל הגרסאות במעקב של כל השרתים.

GetAvailableServableStates

ServableSet GetAvailableServableStates()

GetBoundedLog

BoundedLog GetBoundedLog()

מחזירה את היומן התחום הנוכחי של אירועי מצב שניתנים לטיפול.

GetLiveServableStates

ServableMap GetLiveServableStates()

מחזירה את המצבים הנוכחיים של כל הגרסאות של כל השרתים שלא עברו למצב ServableState::ManagerState::kEnd.

GetState

optional< ServableState > GetState(
  const ServableId & servable_id
)

מחזירה את המצב הנוכחי של שרת אחד, או nullopt אם קובץ ההגשה אינו נמצא במעקב.

GetStateAndTime

optional< ServableStateAndTime > GetStateAndTime(
  const ServableId & servable_id
)

מחזירה את המצב והשעה הנוכחיים של שרת אחד, או נולופ אם קובץ ההגשה אינו נמצא במעקב.

GetVersionStates

VersionMap GetVersionStates(
  const string & servable_name
)

מחזירה את המצבים הנוכחיים של כל הגרסאות במעקב של הנתון להגשה, אם בכלל.

לְהוֹדִיעַ

void Notify(
  const NotifyFn & notify_fn
)

NotifyWhenServablesReachState

void NotifyWhenServablesReachState(
  const std::vector< ServableRequest > & servables,
  ServableState::ManagerState goal_state,
  const ServableStateNotifierFn & notifier_fn
)

ServableStateMonitor

 ServableStateMonitor(
  EventBus< ServableState > *bus,
  const Options & options
)

WaitUntilServablesReachState

bool WaitUntilServablesReachState(
  const std::vector< ServableRequest > & servables,
  ServableState::ManagerState goal_state,
  std::map< ServableId, ServableState::ManagerState > *states_reached
) TF_MUST_USE_RESULT

בדומה ל-NotifyWhenServablesReachState(...), אך במקום להודיע, אנו ממתינים עד ל-'goal_state' או kEnd.

כדי להבין את ערך ההחזרה ואת פרמטר ההחזרה 'states_reached', קרא את התיעוד על NotifyWhenServablesReachState(...).

~ServableStateMonitor

virtual  ~ServableStateMonitor()