JP7305898B2 - 操作応答方法、操作応答装置、電子機器及び記憶媒体 - Google Patents

操作応答方法、操作応答装置、電子機器及び記憶媒体 Download PDF

Info

Publication number
JP7305898B2
JP7305898B2 JP2023030160A JP2023030160A JP7305898B2 JP 7305898 B2 JP7305898 B2 JP 7305898B2 JP 2023030160 A JP2023030160 A JP 2023030160A JP 2023030160 A JP2023030160 A JP 2023030160A JP 7305898 B2 JP7305898 B2 JP 7305898B2
Authority
JP
Japan
Prior art keywords
target
client side
target client
identifier
shared resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023030160A
Other languages
English (en)
Other versions
JP2023065558A (ja
Inventor
ズーガン ゼン,
ゼンユェン ソン,
ビンチン シャオ,
ポンフェイ ヤン,
スーヨン リー,
ヤンポン ワン,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2023065558A publication Critical patent/JP2023065558A/ja
Application granted granted Critical
Publication of JP7305898B2 publication Critical patent/JP7305898B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/28Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • H04L41/064Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis involving time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Description

本開示は、クラウドコンピューティングの分野に関し、特にクラスタ技術分野に関する。具体的には、操作応答方法、操作応答装置、電子機器、記憶媒体及びコンピュータプログラムに関する。
共有リソースは、クラスタシステムにおける重要な構成部分であり、ハードウェアと、ソフトウェアと、データリソースとを含むことができ、クラスタシステムにおけるユーザは、これらのリソースを一部又は全部で共有することができる。
クラウドコンピューティング技術の発展に伴い、クラウドコンピューティング技術は、様々な分野で広く応用されている。例えば、クラウドコンピューティング技術を利用してクラスタシステムにおいてリソース共有を行うことができる。
本開示は、操作応答方法、操作応答装置、電子機器、記憶媒体およびコンピュータプログラムを提供する。
本開示の一態様は、
ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、前記ターゲットクライアント側に対して故障検知を行い、故障検知結果を取得することと、
前記故障検知結果が前記ターゲットクライアント側に故障が発生したことを表すことを確定した場合、更新操作を実行し、ターゲット権限識別子を取得することにより、前記ターゲット権限識別子を利用して前記ターゲットクライアント側が前記ターゲット操作を実行し続けることを阻止することと、を含む、
操作応答方法を提供している。
本開示の他の態様は、
ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、前記ターゲットクライアント側に対して故障検知を行い、故障検知結果を取得するための検知モジュールと、
前記故障検知結果が前記ターゲットクライアント側に故障が発生したことを表すことを確定した場合、更新操作を実行し、ターゲット権限識別子を取得することにより、前記ターゲット権限識別子を利用して前記ターゲットクライアント側が前記ターゲット操作を実行し続けることを阻止するための更新モジュールと、を含む、
操作応答装置を提供している。
本開示の他の態様は、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサと通信接続されるメモリとを備える電子機器であって、前記メモリには、前記少なくとも1つのプロセッサによって実行され得る命令が記憶されており、前記少なくとも1つのプロセッサが本開示の方法を実行することができるように、前記命令が前記少なくとも1つのプロセッサによって実行される、電子機器を提供している。
本開示の他の態様は、コンピュータに本開示の方法を実行させるためのコンピュータ命令を記憶している、非一時的なコンピュータ可読記憶媒体を提供している。
本開示の他の態様は、プロセッサにより実行される場合に、本開示の方法を実現するコンピュータプログラムを提供している。
本部分に記載された内容は、本開示の実施例のキーポイントまたは重要な特徴を示すことを意図するものではなく、本開示の範囲を限定するものでもないと理解されるべきである。本開示の他の特徴は、以下の説明により容易に理解される。
図面は、本開示の発明をよく理解するために用いられ、本開示を限定するものではない。
本開示の実施例に係る操作応答方法及び装置を適用できる例示的なシステムアーキテクチャを模式的に示す図である。 本開示の実施例に係る操作応答方法のフローチャートを模式的に示す図である。 本開示の実施例に係る正常なアクセス状況の動作シーケンスを模式的に示す概略図である。 本開示の実施例に係る異常なアクセス状況の動作シーケンスを模式的に示す概略図である。 本開示の実施例に係る操作応答装置を模式的に示すブロック図である。 本開示の実施例に係る操作応答方法を実現することに適する電子機器を模式的に示すブロック図である。
以下、図面を参照して本開示の例示的な実施例を説明する。ここで、より理解しやすいために本開示の実施例の様々な詳細は含まれ、それらが例示的なものであると考えられるべきである。したがって、当業者であれば、ここで記載される実施例に対して様々な変更や補正を行うことができ、本開示の範囲及び精神から逸脱することはないと分るべきである。同様に、明確かつ簡潔に説明するために、以下の記載において周知の機能や構成に対する説明を省略する。
クラスタは、通信ネットワークにより相互に接続された複数のノードを含み、各ノード上のユーザは、他のノード上のリソースを使用して、リソース共有を行うことができる。例えば、ユーザがプリンタ等の外部機器を使用することができるように、機器共有を行うことができ、ユーザが共通のデータベースにアクセスすることができるように、データ共有を行うことができ、ユーザが共有サーバ上のファイルリソースなどにアクセスすることができるように、ファイル共有を行うことができる。
クラスタにおけるリソース共有に対して、共有リソースを占用するノードがリソースをタイムリーに解放する必要があり、そうでなければ、他のノードのリソース共有要求の待ち周期が長く、又は複数側のノードが同時に共有リソースを読み書きする時、リソースデータの破損をもたらすことになる。
このために、本開示の実施例は、操作応答方法を提供する。ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、ターゲットクライアント側に対して故障検知を行い、故障検知結果がターゲットクライアント側に故障が発生したことを表すことを確定した場合、更新操作を実行し、ターゲット権限識別子を取得することにより、ターゲット権限識別子を利用してターゲットクライアント側がターゲット操作を実行し続けることを阻止する。上記プロセスは、ターゲット権限識別子を利用することで、ターゲットクライアント側を再起動する必要がなく、故障が発生したターゲットクライアント側に対して直接的にリソースを隔離することができる。したがって、リソース共有の効率を向上させることになる。
本開示の技術案において、係るユーザ個人情報の収集、記憶、使用、加工、伝送、提供、開示及び応用等の処理は、いずれも相関法規則の規定に適合し、必要なセキュリティー対策を採用しており、且つ公序良俗に反するものではない。
本開示の技術案において、ユーザの個人情報を取得または採集する前に、いずれもユーザの許可又は同意を取得した。
図1は、本開示の実施例に係る操作応答方法及び装置を適用できる例示的なシステムアーキテクチャを模式的に示す。
注意すべきものとして、図1に示すのは、本開示の実施例を適用できるシステムアーキテクチャの例示に過ぎず、当業者が本開示の技術内容を理解することに役立つが、本開示の実施例が他の機器、システム、環境又はシーンに用いられないことを意味するものではない。例えば、他の実施例において、操作応答方法及び装置を適用できる例示的なシステムアーキテクチャは端末機器を含むことができるが、端末機器はサーバと対話する必要がなく、本開示の実施例が提供する操作応答方法及び装置を実現することができる。
図1に示すように、該実施例に係るシステムアーキテクチャ100は、ターゲットクライアント側101、102、103と、ネットワーク104と、サーバ105とを含むことができる。ネットワーク104は、ターゲットクライアント側101、102、103とサーバ105との間で通信リンクを提供する媒体として用いられる。ネットワーク104は、例えば有線及び/又は無線通信リンク等の様々な接続タイプを含むことができる。
ユーザは、ターゲットクライアント側101、102、103を使用してネットワーク104を介してサーバ105と対話することにより、メッセージ等を受信するか又は送信することができる。ターゲットクライアント側101、102、103には、例えばナレッジリーディング類アプリ、ウェブブラウザアプリ、検索類アプリ、リアルタイム通信ツール、メールボックスクライアント側、及び/又は、ソーシャルプラットフォームソフトウェアなど(例に過ぎない)の様々なクライアント側アプリケーションがインストールされてもよい。
ターゲットクライアント側101、102、103は、スマートフォン、タブレットコンピュータ、ラップトップ型携帯コンピュータ及びデスクトップコンピュータ等を含む、表示画面を有しかつウェブページの閲覧ができる様々な電子機器であってもよい。
サーバ105は、様々なサービスを提供するサーバであってもよく、例えばユーザがターゲットクライアント側101、102、103により要求されたリソースをサポートするバックグラウンド管理サーバ(例に過ぎない)であってもよい。バックグラウンド管理サーバは、受信されたユーザ要求等のデータに対して分析等の処理を行い、かつ処理結果(例えばユーザの要求に応じて取得又は生成されたウェブページ、情報、又はデータ等)を端末機器にフィードバックすることができる。サーバ105は、さらにデータノードを含むことができ、データノードは、例えばblock service(ノードサービス)を提供し、ローカルデータリソースを管理することができる。
なお、本開示の実施例が提供する操作応答方法は、一般的にサーバ105により実行されてもよい。それに応じて、本開示の実施例が提供する操作応答装置は、サーバ105に設置されてもよい。本開示の実施例が提供する操作応答方法は、サーバ105とは異なり、ターゲットクライアント側101、102、103及び/又はサーバ105と通信可能なサーバ又はサーバクラスタにより実行されてもよい。それに応じて、本開示の実施例が提供する操作応答装置は、サーバ105と異なり、ターゲットクライアント側101、102、103及び/又はサーバ105と通信可能なサーバ又はサーバクラスタに設置されてもよい。
例えば、ターゲットクライアント側101、102、103が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定した場合、サーバ105は、ターゲットクライアント側101、102、103に対して故障検知を行い、故障検知結果を取得することができる。故障検知結果がターゲットクライアント側101、102、103に故障が発生したことを表すことを確定した場合、サーバ105は、更新操作を実行し、ターゲット権限識別子を取得することにより、ターゲット権限識別子を利用してターゲットクライアント側101、102、103がターゲット操作を実行し続けることを阻止することができる。
本開示の実施例によれば、システムアーキテクチャ100は、fence(柵)モジュールと、lock(ロック)モジュールとをさらに含んでもよい。
fenceモジュールは、fenceサーバ側とfenceクライアント側を含んでもよく、lockモジュールは、lockサーバ側とlockクライアント側を含んでもよい。fenceクライアント側とlockクライアント側で構成されたリソース権限リクエスタは、クラスタのターゲットクライアント側101、102、103に位置することができる。fenceサーバ側とlockサーバ側で構成されたリソースマネージャは、サーバ105に位置することができる。
例えば、ユーザがターゲットクライアント側101、102、103を利用して書き込み操作要求を開始する時、まずリソース権限リクエスタによりサーバ105に、対応するlock権限及びfenceバージョンを申請することができ、リソースへのアクセス権限を取得した後、サーバ105に書き込み要求を開始することができる。サーバ105は、ターゲットクライアント側のIO(Input/Output)要求のfenceバージョンがローカルに記憶されたバージョンと一致するか否かを検出することができ、一致すれば、書き込みを許可することができ、一致しなければ、書き込みを拒否することができる。
図1におけるターゲットクライアント側、ネットワーク及びサーバの数は単に模式的なものであると理解すべきである。実現の必要に応じて、任意の数のターゲットクライアント側、ネットワーク及びサーバを有することができる。
以下の方法における各操作の番号は、記述を容易にするための該操作の表示のみとし、該各操作の実行順序を示すものと見なされるべきではないと注意すべきである。明確に指摘しない限り、該方法は完全に示された順序に応じて実行する必要がない。
図2は、本開示の実施例に係る操作応答方法のフローチャートを模式的に示す。
図2に示すように、該方法は、操作S210~S220を含む。
操作S210は、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、ターゲットクライアント側に対して故障検知を行い、故障検知結果を取得する。
操作S220は、故障検知結果がターゲットクライアント側に故障が発生したことを表すことを確定した場合、更新操作を実行し、ターゲット権限識別子を取得することにより、ターゲット権限識別子を利用してターゲットクライアント側がターゲット操作を実行し続けることを阻止する。
本開示の実施例によれば、クラスタは複数の端末機器を含むことができ、各端末機器はノードと呼ばれてもよく、ノードの間はローカルエリアネットワーク、広域ネットワーク又は他の方式で接続されてもよい。ターゲットクライアント側はクラスタ内のノードを含むことができる。クラスタは高性能計算クラスタ、負荷分散クラスタ及び高可用性クラスタを含むことができる。
本開示の実施例によれば、共有リソースは、ハードウェアと、ソフトウェアと、データリソースとを含むことができる。クラスタ内のサーバは、各共有リソースのアクセス状態情報及びターゲット操作が実行される時間長さ情報をリアルタイムに監視することができ、アクセス状態情報に基づいて各共有リソースがある時点でターゲットクライアント側に例えば書き込みのターゲット操作を実行される状態を確定することができ、ターゲット操作が実行される時間長さ情報に基づいてターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたか否かを確定することができる。
本開示の実施例によれば、ターゲット操作は、共有リソースに対する読み取り操作と、共有リソースに対する書き込み操作とを含むことができる。
本開示の実施例によれば、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定した場合、ターゲットクライアント側にハートビート検知要求を周期的に送信することにより、ハートビート検知要求の応答状況に基づいてターゲットクライアント側に故障が発生したか否かを確定して、故障検知結果を取得することができる。例えば、1秒ごとにターゲットクライアント側にハートビート検知要求を送信し、連続するn回(例えば5回)はいずれも該ターゲットクライアント側の応答ハートビートを受信しなければ、該ターゲットクライアント側に故障が発生したと考えられてもよい。なお、ターゲットクライアント側にハートビート検知要求を送信する故障検知方法以外に、他の故障検知方法を採用することもでき、ここで説明を省略する。
本開示の実施例によれば、サーバは、故障検知結果がターゲットクライアント側に故障が発生したことを表すことを確定した場合、権限識別子に対して更新操作を実行し、得られたターゲット権限識別子を利用してターゲットクライアント側がターゲット操作を実行し続けることを阻止することができる。
本開示の実施例によれば、更新操作は、権限識別子を更新することであってもよい。権限識別子は、共有リソースにアクセスする権限を有する識別子を表すために用いられる。権限識別子のタイプは限定されず、例えば数字であってもよいが、これに限定されず、二次元コード又はバーコードなどであってもよい。
本開示の実施例によれば、故障検知結果がターゲットクライアント側に故障が発生したことを表すことを確定した場合、権限識別子に対する更新操作を実行し、ターゲット権限識別子を取得することができる。この場合、故障が発生したターゲットクライアント側は、故障が解除された後、更新されず前の権限識別子を利用して共有リソースにアクセスすることができない。これにより、ターゲット権限識別子を利用してターゲットクライアント側がターゲット操作を実行し続けることを阻止することができる。
本開示の他の実施例によれば、クラスタにおけるターゲットクライアント側に故障が発生すれば、クラスタから該ターゲットクライアント側を除去することができ、該除去操作は、fenceメカニズム又はSTONITH(shoot the other node in the head)メカニズムと呼ばれる。例えば、専用ネットワークチャネルを利用してクライアント側を強制的に再起動する。
本開示の実施例によれば、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定した場合に、ターゲットクライアント側に対して故障検知を行い、故障検知結果がターゲットクライアント側に故障が発生したことを表すことを確定した場合、更新操作を実行し、ターゲット権限識別子を取得する。上記技術手段により、ターゲット権限識別子を利用して故障が発生したターゲットクライアント側の共有リソースへのアクセスを阻止することができ、それにより、リソースの隔離効果を実現することができる。専用ネットワークチャネルを利用してターゲットクライアント側を強制的に再起動することによりターゲットクライアント側がターゲット操作を実行し続けることを阻止することに比べて、本開示が提供する操作応答方法は、ターゲット権限識別子を利用してリソースを隔離することができ、それによりリソースを簡単かつ効率的に隔離することができる。
以下に図3~図4を参照し、具体的な実施例を例として例えば図2に示す方法をさらに説明する。
本開示の実施例によれば、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、ターゲットクライアント側に対して故障検知を行い、故障検知結果を取得する前に、操作応答方法は以下の操作をさらに含むことができる。
ターゲットクライアント側からのアクセス要求を受信したことに応答して、ターゲットクライアント側のアクセス権限を確定する。ターゲットクライアント側のアクセス権限がアクセス権限ルールを満たすと確定した場合、ターゲットクライアント側に権限識別子を送信する。
本開示の実施例によれば、権限識別子はfenceバージョン番号を含むことができ、クラスタにおけるターゲットクライアント側がサーバの共有リソースに対するアクセスを開始する場合、サーバは、該ターゲットクライアント側にfenceバージョン番号を生成することができ、fenceバージョン番号は、Ver(f)として表すことができる。該fenceバージョン番号は単調増加し、永続的に保存することができ、該fenceバージョン番号は、ターゲットクライアント側の共有リソースに対する効果的なアクセスを保護することができる。
本開示の実施例によれば、アクセス権限ルールは、権限識別子を有する場合に、アクセス権限を満たさず、権限識別子を有しない場合、アクセス権限を満たすことを含んでもよい。ターゲットクライアント側のアクセス権限がアクセス権限ルールを満たすと確定した場合、ターゲットクライアント側が権限識別子をまだ有していないことを示すことができ、サーバは、ターゲットクライアント側に権限識別子を送信することができる。
本開示の実施例によれば、上記操作応答方法は、以下の操作をさらに含むことができる。
ターゲットクライアント側からのターゲット操作を実行するための要求を受信したことに応答して、ターゲットクライアント側の権限識別子を確定する。権限識別子が所定の権限識別子と一致すると確定した場合、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを許可する。権限識別子が所定の権限識別子と一致しないと確定した場合、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを拒否する。
本開示の実施例によれば、所定の権限識別子は、サーバの該共有リソースに対するfenceバージョン番号を含むことができる。
本開示の実施例によれば、権限識別子が所定の権限識別子と一致すると確定した場合、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを許可することは、以下の操作を含むことができる。
権限識別子が所定の権限識別子と一致すると確定した場合、共有リソースのアクセス状態を確定する。アクセス状態は、共有リソースが他のクライアント側によりターゲット操作を実行されるか否かを表す。共有リソースのアクセス状態がアクセス状態ルールを満たすと確定した場合、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを許可する。
本開示の実施例によれば、アクセス権限ルールは、共有リソースが他のクライアント側により占用される場合、アクセス権限がなく、共有リソースが他のクライアント側により占用されない場合、アクセス権限を有することを含むことができる。該共有リソースが他のクライアント側により占用されるとは、他のクライアント側が共有リソースに対して読み取りのターゲット操作を実行していることであってもよいが、これに限定されず、該共有リソースが他のクライアント側により占用されるとは、他のクライアント側が共有リソースに対して書き込みのターゲット操作を実行していることであってもよい。
図3は、本開示の実施例に係る正常なアクセス状況の動作シーケンスを模式的に示す概略図である。
図3におけるS301~S303に示すように、操作S301において、ターゲットクライアント側は、サーバに共有リソースへのアクセス要求を送信することができ、例えば共有リソースのアクセスを申請する。操作S302において、サーバ上のリソースマネージャは、アクセス要求に基づいて、ターゲットクライアント側のアクセス権限がアクセス権限ルールを満たすか否かを確定することができる。ターゲットクライアント側のアクセス権限がアクセス権限ルールを満たすと確定した場合、操作S303を実行する。操作S303において、該共有リソースはターゲットクライアント側に読み取られることができ、即ち、ターゲットクライアント側に該共有リソースの権限識別子を含む回答を送信することができる。
図3におけるS304~S306に示すように、操作S304において、ターゲットクライアント側は、該共有リソースに対するIO操作要求を開始することができ、該IO操作要求は、権限識別子を含むことができる。操作S305において、サーバは、ターゲットクライアント側のIO要求を受信した後、ターゲットクライアント側が携帯する権限識別子がローカルの所定の権限識別子と一致するか否かを確定することができる。操作S306において、権限識別子が所定の権限識別子と一致すると確定した場合、サーバは、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを許可することを表す肯定的な回答を送信することができる。権限識別子が所定の権限識別子と一致しないと確定した場合、サーバは、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを拒否することができる。
本開示の実施例によれば、ターゲットクライアント側のアクセス権限がアクセス権限ルールを満たすと確定した場合、ターゲットクライアント側に権限識別子を送信し、且つ、権限識別子と所定の権限識別子が一致するか否かに基づいて、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを許可するか否かを確定する。上記技術手段により、共有リソースの安全性及び一致性を保障することができる。
図4は、本開示の実施例に係る異常なアクセス状況の動作シーケンスを模式的に示す概略図である。
図4におけるS401~S404に示すように、操作S401において、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたこと、即ち、共有リソースについて一定の時間を超えてターゲットクライアント側の要求を受信しなかったことを確定する。操作S402において、サーバにおけるリソースマネージャは、ターゲットクライアント側にハートビート検知を開始することができる。操作S403において、n回のハートビート検知に失敗した結果を受信し、ターゲットクライアント側に故障が発生したことを確定する。操作S404において、サーバは、本ノードのfenceバージョン番号を更新し、ターゲット権限識別子を取得し、且つ、更新されたターゲット権限識別子を現在の有効バージョン番号として永続的に保存することができる。
本開示の実施例によれば、ターゲットクライアント側の共有リソースに対する保持がタイムアウトしかつターゲットクライアント側に故障が発生したと確定した場合、権限識別子に対して更新操作を実行することができる。更新前のターゲットクライアント側の権限識別子はVer(f)として表すことができ、更新後のターゲット権限識別子はVer(f+1)として表すことができる。
本開示の実施例によれば、サーバは、ローカルのfenceバージョン番号をメンテナンスすることができ、ターゲットクライアント側がネットワーク中断又は他の原因で故障した場合、サーバは、fenceバージョン番号に対する更新操作を開始することができ、権限識別子の更新フローを完了する。
図4におけるS405~S407に示すように、操作S405において、マーク済みクライアント側は、保持されたある共有リソースのIO要求を開始することができる。操作S406において、サーバにおけるリソースマネージャは、更新操作の現在の更新状態を確定することができる。操作S407において、現在の更新状態が更新段階にあることを表す場合、マーク済みクライアント側に再試行回答を送信することができる。
図4のS408~S411に示すように、操作S408において、サーバがメンテナンスした有効リソーステーブルに基づいて、マーク済みクライアント側にfenceバージョン番号の更新を通知することができる。操作S409において、マーク済みクライアント側は、ローカルでfenceバージョン番号を更新することができる。操作S410において、マーク済みクライアント側が更新してターゲット権限識別子を取得した後、サーバに更新成功を表す回答を送信することができる。操作S411において、サーバは、更新が成功したことを表す回答に基づいて、更新操作が完了したか否かを確定することができる。
本開示の実施例によれば、マーク済みクライアント側からのターゲット操作を実行するための要求を受信したことに応答して、更新操作の現在の更新状態を確定する。現在の更新状態が更新段階にあることを表すと確定した場合、マーク済みクライアント側に再試行を表す再試行回答を送信する。
本開示の実施例によれば、更新段階にある場合、即ち、fenceバージョン番号がマーク済みクライアント側がfenceバージョン番号の更新操作を完了する前に既に無効になったと確定した場合に、マーク済みクライアント側が共有リソースに対して開始したアクセス操作は、いずれも再試行として判定されることができる。
本開示の実施例によれば、ターゲットクライアント側が隔離される場合、サーバは、fenceバージョン番号を更新して永続的に記憶することができ、サーバが再起動した後、サーバは、永続化されたfenceバージョン番号Ver(f+1)をロードしてマーク済みクライアント側に対してサービスを提供する必要がある。
本開示の実施例によれば、故障検知結果がターゲットクライアント側に故障が発生したことを表す場合、更新操作を実行し、ターゲット権限識別子を取得した後、さらに以下の操作を含むことができる。
例えば、マーク済みクライアント側を確定する。マーク済みクライアント側は、履歴時間帯内にアクセスした複数のクライアント側のうちのターゲットクライアント側を除くクライアント側を含む。ターゲット権限識別子をマーク済みクライアント側に送信する。
本開示の実施例によれば、サーバのfenceバージョン番号とマーク済みクライアント側のfenceバージョン番号を更新することにより、取得されたターゲット権限識別子に基づいて、マーク済みクライアント側の保持された共有リソースに対するIO要求が成功したか否かを確定することができる。共有リソースが故障したターゲットクライアント側に長期に占有され、他のクライアント側のタスクが正常に実行できないという問題を回避することができ、それによりクラスタにおける共有リソースの利用率及びシステムの性能を向上させることができる。
図4におけるS412~S416に示すように、操作S412において、ターゲットクライアント側がサーバとネットワーク接続を回復し、即ち、ターゲットクライアント側の故障を解除し、改めてクラスタに加入すると、ターゲットクライアント側は、サーバが共有リソースのアクセス権限を保持することが有効であると考えることができる。操作S413において、ターゲットクライアント側は、再びサーバに共有リソースを申請するIO要求を送信することができる。操作S414において、サーバは、ターゲットクライアント側の権限識別子とターゲット権限識別子が一致するか否かを確定することができ、両者が一致しなければ、サーバは、ターゲットクライアント側のIO要求を拒否することができ、且つ、サーバによりローカルリソースマネージャにターゲットクライアント側の共有リソースに対する保持記録をキャンセルすることを通知することができる。操作S415において、サーバは、ターゲットクライアント側にアクセス失敗を表す回答を送信することができる。操作S416において、ターゲットクライアント側が該回答を受信した後、自分が持っている該サーバに関連する共有リソースをクリアすることができる。
本開示の実施例によれば、故障検知結果がターゲットクライアント側に故障が発生したことを表すと確定した場合、更新操作を実行し、ターゲット権限識別子を取得した後、さらに以下の操作を含むことができる。
例えば、ターゲットクライアント側からのターゲット操作を実行するための要求を受信したことに応答して、ターゲットクライアント側の権限識別子を確定する。権限識別子とターゲット権限識別子が一致しないと確定した場合、ターゲットクライアント側に要求失敗を表す否定的な回答を送信することにより、ターゲットクライアント側が否定的な回答に基づいて操作された共有リソースを削除する。
本開示の実施例によれば、ターゲットクライアント側のIO要求におけるfenceバージョン番号とサーバのfenceバージョン番号が一致しない場合、サーバは、該ターゲットクライアント側のアクセス要求を拒否することができる。
本開示の実施例によれば、権限識別子により隔離されたターゲットクライアント側の共有リソースに対するアクセスを阻止して、故障したターゲットクライアント側の期限切れた共有リソースをクリアし、同一の共有リソースが複数のクライアント側により占用されることを回避し、同じ時刻に1つのクライアント側のみが書き込み操作を実行することを保証することができ、クラスタの性能及び安定性を効果的に向上させることができる。
図5は、本開示の実施例に係る操作応答装置を模式的に示すブロック図である。
図5に示すように、操作応答装置500は、検知モジュール510と、更新モジュール520とを含むことができる。
検知モジュール510は、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、ターゲットクライアント側に対して故障検知を行い、故障検知結果を取得するために用いられる。
更新モジュール520は、故障検知結果がターゲットクライアント側に故障が発生したことを表すことを確定した場合、更新操作を実行し、ターゲット権限識別子を取得することにより、ターゲット権限識別子を利用してターゲットクライアント側がターゲット操作を実行し続けることを阻止するために用いられる。
本開示の実施例によれば、操作応答装置500は、第1の確定モジュールと、第1の送信モジュールとをさらに含むことができる。
第1の確定モジュールは、ターゲットクライアント側からのターゲット操作を実行するための要求を受信したことに応答して、ターゲットクライアント側の権限識別子を確定するために用いられる。
第1の送信モジュールは、権限識別子がターゲット権限識別子と一致しないと確定した場合、ターゲットクライアント側に要求失敗を表す否定的な回答を送信することにより、ターゲットクライアント側が否定的な回答に基づいて操作された共有リソースを削除するために用いられる。
本開示の実施例によれば、操作応答装置500は、第2の確定モジュールと、第2の送信モジュールとをさらに含むことができる。
第2の確定モジュールは、履歴時間帯内にアクセスした複数のクライアント側のうちのターゲットクライアント側を除くクライアント側を含むマーク済みクライアント側を確定するために用いられる。
第2の送信モジュールは、マーク済みクライアント側にターゲット権限識別子を送信するために用いられる。
本開示の実施例によれば、操作応答装置500は、第3の確定モジュールと、第3の送信モジュールとをさらに含むことができる。
第3の確定モジュールは、マーク済みクライアント側からのターゲット操作を実行するための要求を受信したことに応答して、更新操作の現在の更新状態を確定するために用いられる。
第3の送信モジュールは、現在の更新状態が更新段階にあることを表すと確定した場合、マーク済みクライアント側に再試行を表す再試行回答を送信するために用いられる。
本開示の実施例によれば、操作応答装置500は、第4の確定モジュールと、第4の送信モジュールとをさらに含むことができる。
第4の確定モジュールは、ターゲットクライアント側からのアクセス要求を受信したことに応答して、ターゲットクライアント側のアクセス権限を確定するために用いられる。
第4の送信モジュールは、ターゲットクライアント側のアクセス権限がアクセス権限ルールを満たすと確定した場合、ターゲットクライアント側に権限識別子を送信するために用いられる。
本開示の実施例によれば、操作応答装置500は、第5の確定モジュールと、第1の処理モジュールと、第2の処理モジュールとをさらに含むことができる。
第5の確定モジュールは、ターゲットクライアント側からのターゲット操作を実行するための要求を受信したことに応答して、ターゲットクライアント側の権限識別子を確定するために用いられる。
第1の処理モジュールは、権限識別子が所定の権限識別子と一致すると確定した場合、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを許可するために用いられる。
第2の処理モジュールは、権限識別子が所定の権限識別子と一致しないと確定した場合、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを拒否するために用いられる。
本開示の実施例によれば、第1の処理モジュールは、確定ユニットと、処理ユニットとを含む。
確定ユニットは、権限識別子が所定の権限識別子と一致すると確定した場合、共有リソースの、共有リソースが他のクライアント側によりターゲット操作を実行されるか否かを表すアクセス状態を確定するために用いられる。
処理ユニットは、共有リソースのアクセス状態がアクセス状態ルールを満たすと確定した場合、ターゲットクライアント側が共有リソースに対してターゲット操作を実行することを許可するために用いられる。
本開示の実施例によれば、本開示は、電子機器、可読記憶媒体及びコンピュータプログラムをさらに提供する。
本開示の実施例によれば、電子機器は、少なくとも1つのプロセッサと、少なくとも1つのプロセッサと通信接続されるメモリとを備える電子機器であって、メモリには、少なくとも1つのプロセッサによって実行され得る命令が記憶されており、命令が少なくとも1つのプロセッサによって実行されることで、少なくとも1つのプロセッサが本開示の実施例の方法を実行することができる。
本開示の実施例によれば、非一時的なコンピュータ可読記憶媒体は、コンピュータに本開示の実施例の方法を実行させるためのコンピュータ命令を記憶している。
本開示の実施例によれば、コンピュータプログラムは、プロセッサにより実行される場合に、本開示の実施例の方法を実現する。
図6は、本開示の実施例を実現することに適する電子機器600を模式的に示すブロック図である。電子機器は、様々な形式のデジタルコンピュータを示すことを目的とし、例えば、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ及び他の適切なコンピュータである。電子機器は、さらに様々な形式の移動装置を示してもよく、例えば、個人デジタルアシスタント、携帯電話、スマートフォン、ウェアラブル機器及び他の類似の演算装置である。本明細書に示された部品、それらの接続及び関係、及びそれらの機能は、例示に過ぎず、本明細書に記載された及び/または要求された本開示の実現を限定すると意味しない。
図6に示すように、電子機器600は、演算ユニット601を含み、演算ユニット601は、リードオンリーメモリ(ROM)602に記憶されたコンピュータプログラムまたは記憶ユニット608からランダムアクセスメモリ(RAM)603にロードされたコンピュータプログラムに基づいて、様々な適切な動作及び処理を実行してもよい。RAM603には、電子機器600の操作に必要な様々なプログラム及びデータをさらに記憶してもよい。演算ユニット601と、ROM602と、RAM603とは、バス604を介して相互に接続される。入出力(I/O)インタフェース605も、バス604に接続される。
電子機器600における、例えばキーボード、マウス等の入力ユニット606と、例えば様々な種類のディスプレイ、スピーカ等の出力ユニット607と、例えば磁気ディスク、光ディスク等の記憶ユニット608と、例えばネットワークカード、モデム、無線通信トランシーバ等の通信ユニット609とを含む複数の部品は、I/Oインタフェース605に接続される。通信ユニット609は、電子機器600がインターネット等のコンピュータネットワーク及び/または各種の電気通信ネットワークを介して他の機器と情報・データをやり取りすることを可能にする。
演算ユニット601は、処理及び演算能力を有する各種の汎用及び/または専用の処理モジュールであってもよい。演算ユニット601の幾つかの例としては、中央処理装置(CPU)、GPU(Graphics Processing Unit)、各種専用の人工知能(AI)演算チップ、機械学習モデルアルゴリズムをランニングする各種演算ユニット、DSP(Digital Signal Processor)、並びに任意の適切なプロセッサ、コントローラ、マイクロコントローラ等が挙げられるが、これらに限定されない。演算ユニット601は、例えば操作応答方法のような上記に記載の各方法及び処理を実行する。例えば、いくつかの実施例において、操作応答方法は、例えば記憶ユニット608のような機械可読媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実現されてもよい。いくつかの実施例において、コンピュータプログラムの一部または全部は、ROM602及び/又は通信ユニット609を介して電子機器600にロード及び/またはインストールされてもよい。コンピュータプログラムがRAM603にロードされて演算ユニット601により実行される場合、上記に記載の操作応答方法の1つまたは複数のステップを実行してもよい。代替的に、他の実施例において、演算ユニット601は、他の任意の適切な方式(例えば、ファームウェアを介する)により操作応答方法を実行するように構成されてもよい。
本明細書で説明されたシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、コンプレックスプログラムマブルロジックデバイス (CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせにおいて実現されてもよい。これらの様々な実施形態は、1つまたは複数のコンピュータプログラムにおいて実施され、当該1つまたは複数のコンピュータプログラムは、少なくとも1つのプログラムマブルプロセッサを含むプログラムマブルシステムで実行され及び/または解釈されることが可能であり、当該プログラムマブルプロセッサは、専用または汎用のプログラムマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及び命令を受信し、且つデータ及び命令を当該記憶システム、当該少なくとも1つの入力装置、及び当該少なくとも1つの出力装置に伝送することができることを含んでもよい。
本開示の方法を実施するためのプログラムコードは、1つまたは複数のプログラミング言語の任意の組み合わせで作成されてもよい。これらのプログラムコードは、汎用コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置のプロセッサまたはコントローラに提供されてもよく、それによって、プログラムコードがプロセッサまたはコントローラにより実行される時に、フローチャート及び/またはブロック図に規定された機能・操作が実施される。プログラムコードは、機器に完全に実行されてもよく、部分的に機器で実行されてもよく、独立したソフトウェアパッケージとして部分的に機器で実行され、かつ部分的に遠隔機器で実行されるかまたは完全に遠隔機器またはサーバで実行されてもよい。
本開示のコンテキストにおいて、機械可読媒体は、有形の媒体であってもよく、命令実行システム、装置または電子機器に使用され、または命令実行システム、装置または電子機器と組み合わせて使用されるプログラムを含んでまたは記憶してもよい。機械可読媒体は、機械可読信号媒体または機械可読記憶媒体であってもよい。機械可読媒体は、電子の、磁気的、光学的、電磁的、赤外線の、または半導体システム、装置または電子機器、または上記内容の任意の適切な組み合わせを含んでもよいが、それらに限定されない。機械可読記憶媒体のより具体的な例としては、1つ以上の線による電気的接続、携帯式コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブルリードオンリーメモリ(EPROMまたはフラッシュメモリ)、光ファイバ、コンパクトディスクリードオンリーメモリ(CD-ROM)、光学記憶装置、磁気記憶装置、または上記内容の任意の適切な組み合わせを含む。
ユーザとの対話を提供するために、コンピュータにここで説明されたシステム及び技術を実施させてもよく、当該コンピュータは、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウスまたはトラックボール)とを備え、ユーザは、当該キーボード及び当該ポインティングデバイスを介して入力をコンピュータに提供することができる。他の種類の装置は、さらにユーザとの対話を提供してもよく、例えば、ユーザに提供されたフィードバックは、いかなる形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であってもよく、且ついかなる形式(音声入力、語音入力、または、触覚入力を含む)でユーザからの入力を受信してもよい。
ここで説明されたシステム及び技術は、バックグラウンド部品を含むコンピューティングシステム(例えば、データサーバとする)、またはミドルウェア部品を含むコンピューティングシステム(例えば、アプリケーションサーバ)、またはフロントエンド部品を含むコンピューティングシステム(例えば、グラフィカルユーザインタフェースまたはウェブブラウザを有するユーザコンピュータ、ユーザが該グラフィカルユーザインタフェースまたは該ネットワークブラウザを介してここで説明されたシステム及び技術の実施形態と対話することができる)、またはこのようなバックグラウンド部品、ミドルウェア部品、またはフロントエンド部品のいずれかの組み合わせを含むコンピューティングシステムに実施されることが可能である。任意の形式または媒体のデジタルデータ通信(例えば、通信ネットワーク)によりシステムの部品を互いに接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)及びインターネットを例示的に含む。
コンピュータシステムは、クライアント側及びサーバを含んでもよい。クライアント側とサーバ同士は、一般的に離れており、通常、通信ネットワークを介して対話する。クライアント側とサーバとの関係は、該当するコンピュータ上でランニングし、クライアント側とサーバの関係を有するコンピュータプログラムによって生成される。サーバは、クラウドサーバであってもよく、分散型システムのサーバであってもよく、またはブロックチェーンを組み合わせしたサーバであってもよい。
以上に示された様々な形式のフローを使用してもよく、ステップを改めてソーティングしたり、追加したりまたは削除してもよいと理解されるべきである。例えば、本開示に記載の各ステップは、並列に実行されたり、順次に実行されたり、または異なる順序で実行されてもよく、本開示に開示された技術案の所望の結果を実現することができれば、本明細書はここで限定されない。
上記具体的な実施形態は、本開示の保護範囲を限定するものではない。当業者であれば、設計要件及び他の要因に応じて、様々な修正、組み合わせ、サブコンビネーション及び代替を行うことが可能であると理解すべきである。本開示の精神と原則内で行われる任意の修正、均等置換及び改良などは、いずれも本開示の保護範囲内に含まれるべきである。

Claims (12)

  1. ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、前記ターゲットクライアント側に対して故障検知を行い、故障検知結果を取得することと、
    前記故障検知結果が前記ターゲットクライアント側に故障が発生したことを表すことを確定した場合、更新操作を実行し、ターゲット権限識別子を取得することにより、前記ターゲット権限識別子を利用して前記ターゲットクライアント側が前記ターゲット操作を実行し続けることを阻止することと、
    前記ターゲットクライアント側からの前記ターゲット操作を実行するための要求を受信したことに応答して、前記ターゲットクライアント側の権限識別子を確定することと、
    前記権限識別子が前記ターゲット権限識別子と一致しないと確定した場合、前記ターゲットクライアント側に要求失敗を表す否定的な回答を送信することにより、前記ターゲットクライアント側が前記否定的な回答に基づいて操作された共有リソースを削除することと、
    履歴時間帯内にアクセスした複数のクライアント側のうちの前記ターゲットクライアント側を除くクライアント側を含むマーク済みクライアント側を確定することと、
    前記マーク済みクライアント側に前記ターゲット権限識別子を送信することと、を含む、
    操作応答方法。
  2. 前記マーク済みクライアント側からの前記ターゲット操作を実行するための要求を受信したことに応答して、更新操作の現在の更新状態を確定することと、
    前記現在の更新状態が更新段階にあることを表すと確定した場合、前記マーク済みクライアント側に再試行を表す再試行回答を送信することと、をさらに含む
    請求項1に記載の方法。
  3. ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、前記ターゲットクライアント側に対して故障検知を行い、故障検知結果を取得する前に、
    前記ターゲットクライアント側からのアクセス要求を受信したことに応答して、前記ターゲットクライアント側のアクセス権限を確定することと、
    前記ターゲットクライアント側のアクセス権限がアクセス権限ルールを満たすと確定した場合、前記ターゲットクライアント側に権限識別子を送信することと、をさらに含む
    請求項1又は2に記載の方法。
  4. 前記ターゲットクライアント側からの前記ターゲット操作を実行するための要求を受信したことに応答して、前記ターゲットクライアント側の権限識別子を確定することと、
    前記権限識別子が所定の権限識別子と一致すると確定した場合、前記ターゲットクライアント側が前記共有リソースに対して前記ターゲット操作を実行することを許可することと、
    前記権限識別子が前記所定の権限識別子と一致しないと確定した場合、前記ターゲットクライアント側が前記共有リソースに対して前記ターゲット操作を実行することを拒否することと、をさらに含む
    請求項3に記載の方法。
  5. 前記権限識別子が所定の権限識別子と一致すると確定した場合、前記ターゲットクライアント側が前記共有リソースに対して前記ターゲット操作を実行することを許可することは、
    前記権限識別子が前記所定の権限識別子と一致すると確定した場合、前記共有リソースの、前記共有リソースが他のクライアント側により前記ターゲット操作を実行されるか否かを表すアクセス状態を確定することと、
    前記共有リソースのアクセス状態がアクセス状態ルールを満たすと確定した場合、前記ターゲットクライアント側が前記共有リソースに対して前記ターゲット操作を実行することを許可することと、を含む
    請求項4に記載の方法。
  6. ターゲットクライアント側が共有リソースに対してターゲット操作を実行することがタイムアウトしたことを確定したことに応答して、前記ターゲットクライアント側に対して故障検知を行い、故障検知結果を取得するための検知モジュールと、
    前記故障検知結果が前記ターゲットクライアント側に故障が発生したことを表すことを確定した場合、更新操作を実行し、ターゲット権限識別子を取得することにより、前記ターゲット権限識別子を利用して前記ターゲットクライアント側が前記ターゲット操作を実行し続けることを阻止するための更新モジュールと、
    前記ターゲットクライアント側からの前記ターゲット操作を実行するための要求を受信したことに応答して、前記ターゲットクライアント側の権限識別子を確定するための第1の確定モジュールと、
    前記権限識別子が前記ターゲット権限識別子と一致しないと確定した場合、前記ターゲットクライアント側に要求失敗を表す否定的な回答を送信することにより、前記ターゲットクライアント側が前記否定的な回答に基づいて操作された共有リソースを削除するための第1の送信モジュールと、
    履歴時間帯内にアクセスした複数のクライアント側のうちの前記ターゲットクライアント側を除くクライアント側を含むマーク済みクライアント側を確定するための第2の確定モジュールと、
    前記マーク済みクライアント側に前記ターゲット権限識別子を送信するための第2の送信モジュールと、を含む、
    操作応答装置。
  7. 前記マーク済みクライアント側からの前記ターゲット操作を実行するための要求を受信したことに応答して、更新操作の現在の更新状態を確定するための第3の確定モジュールと、
    前記現在の更新状態が更新段階にあることを表すと確定した場合、前記マーク済みクライアント側に再試行を表す再試行回答を送信するための第3の送信モジュールと、をさらに含む
    請求項6に記載の装置。
  8. 前記ターゲットクライアント側からのアクセス要求を受信したことに応答して、前記ターゲットクライアント側のアクセス権限を確定するための第4の確定モジュールと、
    前記ターゲットクライアント側のアクセス権限がアクセス権限ルールを満たすと確定した場合、前記ターゲットクライアント側に権限識別子を送信するための第4の送信モジュールと、をさらに含む
    請求項6又は7に記載の装置。
  9. 前記ターゲットクライアント側からの前記ターゲット操作を実行するための要求を受信したことに応答して、前記ターゲットクライアント側の権限識別子を確定するための第5の確定モジュールと、
    前記権限識別子が所定の権限識別子と一致すると確定した場合、前記ターゲットクライアント側が前記共有リソースに対して前記ターゲット操作を実行することを許可するための第1の処理モジュールと、
    前記権限識別子が前記所定の権限識別子と一致しないと確定した場合、前記ターゲットクライアント側が前記共有リソースに対して前記ターゲット操作を実行することを拒否するための第2の処理モジュールと、をさらに含む
    請求項8に記載の装置。
  10. 前記第1の処理モジュールは、
    前記権限識別子が前記所定の権限識別子と一致すると確定した場合、前記共有リソースの、前記共有リソースが他のクライアント側により前記ターゲット操作を実行されるか否かを表すアクセス状態を確定するための確定ユニットと、
    前記共有リソースのアクセス状態がアクセス状態ルールを満たすと確定した場合、前記ターゲットクライアント側が前記共有リソースに対して前記ターゲット操作を実行することを許可するための処理ユニットと、を含む
    請求項9に記載の装置。
  11. 少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサと通信接続されるメモリとを備える電子機器であって、
    前記メモリには、前記少なくとも1つのプロセッサによって実行され得る命令が記憶されており、前記少なくとも1つのプロセッサが請求項1~5のいずれか一項に記載の方法を実行することができるように、前記命令が前記少なくとも1つのプロセッサによって実行される、
    電子機器。
  12. コンピュータに請求項1~5のいずれか一項に記載の方法を実行させるためのコンピュータ命令を記憶している、
    非一時的なコンピュータ可読記憶媒体。
JP2023030160A 2022-02-28 2023-02-28 操作応答方法、操作応答装置、電子機器及び記憶媒体 Active JP7305898B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210195107.0 2022-02-28
CN202210195107.0A CN114546705B (zh) 2022-02-28 2022-02-28 操作响应方法、操作响应装置、电子设备以及存储介质

Publications (2)

Publication Number Publication Date
JP2023065558A JP2023065558A (ja) 2023-05-12
JP7305898B2 true JP7305898B2 (ja) 2023-07-10

Family

ID=81661517

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023030160A Active JP7305898B2 (ja) 2022-02-28 2023-02-28 操作応答方法、操作応答装置、電子機器及び記憶媒体

Country Status (5)

Country Link
US (1) US20230161664A1 (ja)
EP (1) EP4148577A3 (ja)
JP (1) JP7305898B2 (ja)
KR (1) KR20230017329A (ja)
CN (1) CN114546705B (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103458036A (zh) 2013-09-03 2013-12-18 杭州华三通信技术有限公司 一种集群文件系统的访问装置和方法
JP2018511886A (ja) 2015-04-01 2018-04-26 アビニシオ テクノロジー エルエルシー 分散型コンピューティングシステムにおけるデータベーストランザクションの処理
JP2019212109A (ja) 2018-06-06 2019-12-12 株式会社インテック データ処理装置、データ処理方法及びプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8707082B1 (en) * 2009-10-29 2014-04-22 Symantec Corporation Method and system for enhanced granularity in fencing operations
CN106446300A (zh) * 2016-12-01 2017-02-22 郑州云海信息技术有限公司 一种基于共享存储池的事务处理方法及系统
CN108881309A (zh) * 2018-08-14 2018-11-23 北京奇虎科技有限公司 大数据平台的访问方法、装置、电子设备及可读存储介质
US10936224B1 (en) * 2019-09-13 2021-03-02 EMC IP Holding Company LLC Cluster controller selection for shared storage clusters
CN111651291B (zh) * 2020-04-23 2023-02-03 国网河南省电力公司电力科学研究院 一种共享存储集群防脑裂的方法、系统、计算机存储介质
US11784940B2 (en) * 2020-05-22 2023-10-10 Citrix Systems, Inc. Detecting faulty resources of a resource delivery system
CN111680015B (zh) * 2020-05-29 2023-08-11 北京百度网讯科技有限公司 文件资源处理方法、装置、设备和介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103458036A (zh) 2013-09-03 2013-12-18 杭州华三通信技术有限公司 一种集群文件系统的访问装置和方法
JP2018511886A (ja) 2015-04-01 2018-04-26 アビニシオ テクノロジー エルエルシー 分散型コンピューティングシステムにおけるデータベーストランザクションの処理
JP2019212109A (ja) 2018-06-06 2019-12-12 株式会社インテック データ処理装置、データ処理方法及びプログラム

Also Published As

Publication number Publication date
KR20230017329A (ko) 2023-02-03
JP2023065558A (ja) 2023-05-12
CN114546705A (zh) 2022-05-27
CN114546705B (zh) 2023-02-07
EP4148577A3 (en) 2023-09-06
US20230161664A1 (en) 2023-05-25
EP4148577A2 (en) 2023-03-15

Similar Documents

Publication Publication Date Title
JP2022515949A (ja) トランザクション処理方法、装置、機器並びにコンピュータプログラム
JP6325001B2 (ja) 階層データ構造のノードにおいて再帰的イベントリスナを用いる方法およびシステム
US10165003B2 (en) Identifying an imposter account in a social network
US20120102003A1 (en) Parallel data redundancy removal
TW202030656A (zh) 跨鏈用權系統及方法、裝置、電子設備、儲存媒體
CN110661658A (zh) 一种区块链网络的节点管理方法、装置及计算机存储介质
US20220114145A1 (en) Resource Lock Management Method And Apparatus
CN108064379A (zh) 用于远程端点信息取回的查询引擎
WO2022142781A1 (zh) 区块链的异步落账方法、装置、介质及电子设备
WO2017045450A1 (zh) 资源的操作处理方法及装置
CN112650576A (zh) 资源调度方法、装置、设备、存储介质及计算机程序产品
WO2024021861A1 (zh) 数据恢复方法及电子设备
US10127270B1 (en) Transaction processing using a key-value store
US20190124044A1 (en) Preventing Unauthorized Access to Secure Enterprise Information Systems Using a Multi-Filtering and Randomizing Control System
JP7305898B2 (ja) 操作応答方法、操作応答装置、電子機器及び記憶媒体
CN116451210A (zh) 权限回收方法、装置、设备及存储介质
CN114051029B (zh) 授权方法、授权装置、电子设备和存储介质
US20230063458A1 (en) Restricted operations due to attachment of compute instances owned by different tenancies
US10853131B2 (en) Dataflow life cycles
WO2020146689A1 (en) Enabling distributed semantic mashup
JP6694788B2 (ja) Vm環境コマンド実行管理プログラム、vm環境コマンド実行管理方法、vm環境コマンド実行管理装置およびvm環境コマンド実行管理システム
CN105339930A (zh) 向用户示出最近和相关内容的活动因特网可访问的数据存储装置视图
US20230034196A1 (en) Techniques for providing synchronous and asynchronous data processing
CN110262756B (zh) 用于缓存数据的方法和装置
CN113138722B (zh) 用于分布式块存储系统的复制快照方法、系统和介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230228

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230606

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230628

R150 Certificate of patent or registration of utility model

Ref document number: 7305898

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150