IP Library Granted Patent US 10,846,156
Granted Patent B2
US 10,846,156 · App. 16/523,625 · Granted Nov 24, 2020

Methods, devices and computer program products for managing software function

Inventors: Jun Zhan (Shanghai, CN); Wen Yu Tang (Shanghai, CN); Xiang Huang (Shanghai, CN); Wei Liu (Shanghai, CN); Han Gao (Shanghai, CN); Le Wei Ji (Shanghai, CN)
Assignee: Dell Products L.P.
G06F9/547G06F21/54
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,846,156
App. No.
16/523,625
Granted
Nov 24, 2020
Kind
B2
Abstract

The present disclosure provides for managing a software function. The system determines that a service instance is to call the software function and, in response, initiates a call request for the software function to a management component The call request includes identification information and an operation parameter of the software function, with the software function shared by a service instance and at least one further service instance deployed and stored in a converged infrastructure architecture independently from the service instance and the at least one further service instance. The system receives a response to the call request from the management component, with the response including a result of execution of the software function based on the operation parameters. The system prevents the need to deploy copies of a common software function of service instances, conserving performance and storage space, and enabling more convenient maintenance, updates, and software function calls.

Claims (50)

1. A method of managing a software function, comprising:

in response to determining that a service instance is to call a software function, initiating, by a first device, a call request for the software function to a management component, the call request comprising identification information and an operation parameter of the software function, the software function being shared by the service instance and at least one further service instance deployed in a converged infrastructure architecture and being stored in the converged infrastructure architecture independently from the service instance and the at least one further service instance;

monitoring, by the first device a queue associated with the service instance for a response to the call request; and

obtaining, by the first device in response to detecting the response in the queue, the response to the call request from the management component from the queue, the response comprising a result of execution of the software function based on the operation parameter, wherein the response in the queue was sent by the management component to the queue in response to verifying that the first device has a permission to call the software function.

2. The method of claim 1 , wherein the identification information comprises at least one of the following: a unique identifier of the software function, and an access path of the software function in the converged infrastructure architecture.

3. The method of claim 2 , wherein the identification information further comprises at least one of the following: a type of the software function, and a name of a storage system that stores the software function.

4. The method of claim 1 , wherein initiating the call request comprises:

loading the identification information and the operation parameter from a property file of the service instance; and

initiating the call request by comprising the identification information and the operation parameter into the call request.

5. The method of claim 1 , wherein the converged infrastructure architecture comprises a hyper-converged infrastructure architecture.

6. A method of managing a software function, comprising:

receiving a call request for a software function from a requestor, the call request comprising identification information and an operation parameter of the software function, the software function being shared by a plurality of service instances deployed in a converged infrastructure architecture and being stored independently from the plurality of service instances;

verifying whether the requester has a permission to call the software function;

in response to the requestor having the permission, causing the software function identified by the identification information to be executed based on the operation parameter by configuring an operation environment that includes software and hardware resources required by the software function on a host device; and

sending, to the requestor, a response to the call request, the response comprising a result of execution of the software function based on the operation parameter.

7. The method of claim 6 , wherein causing the software function to be executed comprises:

determining whether at least one of the identification information and the operation parameter comprised in the call request complies with requirement of the software function; and

in response to determining that the at least one of the identification information and the operation parameter complies with the requirement, causing the software function to be executed.

8. The method of claim 6 , wherein causing the software function to be executed comprises:

determining, based on the identification information, a storage location of the software function in the converged infrastructure architecture; and

causing the software function to be executed at the storage location.

9. The method of claim 6 , wherein the identification information comprises at least one of the following: an identifier of the software function, and an access path of the software function.

10. The method of claim 9 , wherein the identification information further comprises at least one of the following: a type of the software function, and a name of a storage system that stores the software function.

11. A system, comprising:

a first device including:

a first device processor; and

a first device memory coupled to the first device processor, the first device memory having instructions stored therein which, when executed by the first device processor, cause the first device to perform acts comprising:

receiving a call request for a software function from a second device, the call request comprising identification information and an operation parameter of the software function, the software function being shared by a plurality of service instances deployed in a converged infrastructure architecture and being stored independently from the plurality of service instances;

verifying whether the second device has a permission to call the software function;

in response to the second device having the permission, causing the software function identified by the identification information to be executed based on the operation parameter by configuring an operation environment that includes software and hardware resources required by the software function on a host device; and

sending, to the second device, a response to the call request, the response comprising a result of execution of the software function based on the operation parameter.

12. The system of claim 11 , wherein causing the software function to be executed comprises:

determining whether at least one of the identification information and the operation parameter comprised in the call request complies with requirement of the software function; and

in response to determining at least one of the identification information and the operation parameter complies with the requirement, causing the software function to be executed.

13. The system of claim 11 , wherein causing the software function to be executed comprises:

determining, based on the identification information, a storage location of the software function in the converged infrastructure architecture; and

causing the software function to be executed at the storage location.

14. The system of claim 11 , comprising:

the second device including:

a second device processor; and

a second device memory coupled to the second device processor, the second device memory having instructions stored therein which, when executed by the second device processor, cause the second device to perform acts comprising:

in response to determining that a service instance is to call the software function, initiating the call request for the software function to the first device, the call request comprising the identification information and the operation parameter of the software function, the software function being shared by the service instance and at least one further service instance deployed in the converged infrastructure architecture and being stored in the converged infrastructure architecture independently from the service instance and the at least one further service instance;

monitoring a queue associated with the service instance for the response to the call request; and

obtaining, in response to detecting the response in the queue, the response to the call request from the second device, the response comprising the result of execution of the software function based on the operation parameter.

15. The system of claim 14 , wherein initiating the call request comprises:

loading the identification information and the operation parameter from a property file of the service instance; and

initiating the call request by comprising the identification information and the operation parameter into the call request.

16. The system of claim 11 , wherein the identification information comprises at least one of the following: a unique identifier of the software function, and an access path of the software function in the converged infrastructure architecture.

17. The system of claim 16 , wherein the identification information further comprises at least one of the following: a type of the software function, and a name of a storage system that stores the software function.

18. The system of claim 11 , wherein the converged infrastructure architecture comprises a hyper-converged infrastructure architecture.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2019
From: ZHAN, JUN; TANG, WEN YU; HUANG, XIANG; LIU, WEI; GAO, HAN; JI, LE WEI
To: DELL PRODUCTS L.P.
Reel/Frame 049876/0813 →