تينسورفلو :: خدمة:: 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)> تُعلم عندما تصل جميع الخوادم إلى "target_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 > تُرجع الحالة والوقت الحاليين لواحد قابل للخدمة ، أو nullopt إذا لم يتم تعقب تلك الخدمة. |
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 (...) ، ولكن بدلاً من الإخطار ، ننتظر حتى يتم الوصول إلى "target_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
تُعلم عندما تصل جميع الخوادم إلى "target_state".
يمكن تحديد الخوادم بطريقتين:
- كإصدارات محددة لاسم دفق قابل للخدمة. في هذه الحالة ، نتحقق مما إذا كان الإصدار المحدد قد وصل إلى "target_state" أو "kEnd".
- كأحدث الإصدارات ، في هذه الحالة ، ستتم مطابقة أي إصدار لاسم بث قابل للخدمة مع "target_state" أو "kEnd".
نسمي "notifier_fn" عندما يكون كلا الشرطين صحيحين -
- وصلت جميع الطلبات المحددة القابلة للخدمة إما إلى "target_state" أو "kEnd".
- وصلت جميع الطلبات القابلة للخدمة الأخيرة إلى "target_state" أو "kEnd". سيتم استدعاء "notifier_fn" مرة واحدة فقط ، وليس بشكل متكرر.
يتم تعيين الوسيطة "been_goal_state" (تم الوصول إليه) على أنها صحيحة إذا وصلت جميع الخوادم المحددة إلى "target_state". لذلك يجب على المتصلين التحقق من أن "calling_goal_state" صحيح في "notifier_fn".
يتم ملء وسيطة "States_reached" بمعرّف الخدمة والحالة التي وصلت إليها. ستكون الحالة "target_state" إذا كانت "access_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 )
تُرجع الحالة والوقت الحاليين لواحد قابل للخدمة ، أو nullopt إذا لم يتم تعقب تلك الخدمة.
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 (...) ، ولكن بدلاً من الإخطار ، ننتظر حتى يتم الوصول إلى "target_state" أو "kEnd".
لفهم قيمة الإرجاع ومعامل الإرجاع "States_reached" ، يرجى قراءة الوثائق الموجودة على NotifyWhenServablesReachState (...).
~ ServableStateMonitor
virtual ~ServableStateMonitor()
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2020-08-12 (حسب التوقيت العالمي المتفَّق عليه)