IP Library Granted Patent US 11,379,425
Granted Patent B1
US 11,379,425 · App. 14/132,176 · Granted Jul 5, 2022

Optimizing synchronization of content management servers

Inventor: Venkatesh Giriyappa (Bangalore, IN)
Assignee: OPEN TEXT CORPORATION
G06F16/178G06F16/273H04L67/2842G06F40/205
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 11,379,425
App. No.
14/132,176
Granted
Jul 5, 2022
Kind
B1
Abstract

Optimizing synchronization of content management servers is described. A caching server receives a message pointing to a synchronization file that includes multiple content synchronization messages. The caching server downloads the synchronization file based on the message. The caching server identifies multiple contents for synchronization based on the multiple content synchronization messages. The caching server synchronizes the multiple contents via a connection to a content server.

Claims (61)

1. A system for optimizing synchronization of a caching server, the system comprising:

the caching server, having a processor; and

a non-transitory computer readable medium storing one or more sequences of instructions that are executable by the processor to:

receive, by the caching server, a message pointing to a synchronization file stored on a content server, the synchronization file comprising a plurality of separate content synchronization messages, wherein each of the content synchronization messages identifies a corresponding update which has been made to content stored on the content server and wherein for each of the content synchronization messages, the corresponding update to the content stored on the content server is to be synchronized to corresponding content on the caching server;

after receiving the message pointing to the synchronization file, download, by the caching server from the content server, the synchronization file based on the message;

parse, by the caching server, the downloaded synchronization file, thereby extracting the plurality of content synchronization messages from the downloaded synchronization file;

for each of the extracted content synchronization messages, identify, by the caching server, the content previously stored by the caching server corresponding to the extracted content synchronization message; and

for each of the extracted content synchronization messages, synchronize, by the caching server via the same connection to the content server, the identified content on the caching server corresponding to the extracted content synchronization message bar applying the corresponding update extracted from the content synchronization message.

2. The system of claim 1 , wherein receiving the message comprises determining whether the message is expired; and

wherein downloading the synchronization file comprises downloading the synchronization file in response to a determination that the message is not expired.

3. The system of claim 1 , wherein receiving the message pointing to the synchronization file comprises determining whether a digital signature associated with the message pointing to the synchronization file is valid;

wherein downloading the synchronization file comprises downloading the synchronization file in response to a determination that the digital signature associated with the message pointing to the synchronization file is valid; and

wherein the identified content corresponding to each extracted content synchronization message is synchronized in response to the determination that the digital signature associated with the message pointing to the synchronization file is valid.

4. The system of claim 3 , wherein the digital signature is generated based on excluding a plurality of content identifiers.

5. The system of claim 1 , wherein synchronizing the plurality of contents comprises:

sending a digital signature associated with the message; and

synchronizing the plurality of contents in response to a determination by the content server that the digital signature associated with the message is valid.

6. The system of claim 5 , wherein the digital signature is generated based on excluding a plurality of content identifiers.

7. The system of claim 1 , wherein at least some of the plurality of contents for synchronization is synchronized to the content server by another caching server.

8. The system of claim 1 , wherein the instructions are executable by the processor to establish a single connection between the caching server and the content server,

wherein synchronizing, by the caching server, the identified plurality of contents includes synchronizing, by the caching server, the identified plurality of contents via the established single connection to the content server.

9. The system of claim 1 , wherein the plurality of content synchronization messages comprise content synchronization messages automatically generated for updates to content stored by the content server.

10. A computer-implemented method for optimizing synchronization of a caching server, the method comprising:

receiving, by the caching server, a message pointing to a synchronization file stored on a content server, the synchronization file comprising a plurality of separate content synchronization messages, wherein each of the content synchronization messages identifies a corresponding update which has been made to content stored on the content server and wherein for each of the content synchronization messages, the corresponding update to the content stored on the content server is to be synchronized to corresponding content on the caching server;

after receiving the message pointing to the synchronization file, downloading, by the caching server from the content server, the synchronization file based on the message;

parsing, by the caching server, the downloaded synchronization file, thereby extracting the plurality of content synchronization messages from the downloaded synchronization file;

for each of the extracted content synchronization messages, identifying, by the caching server, the content previously stored by the caching server for synchronization corresponding to the extracted content synchronization message; and

for each of the extracted content synchronization messages, synchronizing, by the caching server via the same connection to the content server, the identified content on the caching server corresponding to the extracted content synchronization message by applying the corresponding update extracted from the content synchronization message.

11. The computer-implemented method of claim 10 , wherein receiving the message comprises determining whether the message is expired; and

wherein downloading the synchronization file comprises downloading the synchronization file in response to a determination that the message is not expired.

12. The computer-implemented method of claim 10 , wherein receiving the message pointing to the synchronization file comprises determining whether a digital signature associated with the message pointing to the synchronization file is valid;

wherein downloading the synchronization file comprises downloading the synchronization file in response to a determination that the digital signature associated with the message pointing to the synchronization file is valid; and

wherein the identified content corresponding to each extracted content synchronization message is synchronized in response to the determination that the digital signature associated with the message pointing to the synchronization file is valid.

13. The computer-implemented method of claim 12 , wherein the digital signature is generated based on excluding a plurality of content identifiers.

14. The computer-implemented method of claim 10 , wherein synchronizing the plurality of contents comprises:

sending a digital signature associated with the message; and

synchronizing the plurality of contents in response to a determination by the content server that the digital signature associated with the message is valid.

15. The computer-implemented method of claim 14 , wherein the digital signature is generated based on excluding a plurality of content identifiers.

16. The computer-implemented method of claim 10 , further comprising establishing a single connection between the caching server and the content server,

wherein synchronizing, by the caching server, the identified plurality of contents includes synchronizing, by the caching server, the identified plurality of contents via the established single connection to the content server.

17. The computer-implemented method of claim 10 , wherein the plurality of content synchronization messages comprise content synchronization messages automatically generated for updates to content stored by the content server.

18. A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to:

receive, by a caching server, a message pointing to a synchronization file stored on a content server, the synchronization file comprising a plurality of separate content synchronization messages, wherein each of the content synchronization messages identifies a corresponding update which has been made to content stored on the content server and wherein for each of the content synchronization messages, the corresponding update to the content stored on the content server is to be synchronized to corresponding content on the caching server;

after receiving the message pointing to the synchronization file, download, by the caching server from the content server, the synchronization file based on the message;

parse, by the caching server, the downloaded synchronization file, thereby extracting the plurality of content synchronization messages from the downloaded synchronization file;

for each of the extracted content synchronization messages, identify, by the caching server, the content previously stored by the caching server for synchronization corresponding to the extracted content synchronization message; and

for each of the extracted content synchronization messages, synchronize, by the caching server via the same connection to the content server, the identified content on the caching server corresponding to the extracted content synchronization message by applying the corresponding update extracted from the content synchronization message.

19. The computer program product of claim 18 , wherein receiving the message comprises determining whether the message is expired; and

wherein downloading the synchronization file comprises downloading the synchronization file in response to a determination that the message is not expired.

20. The computer program product of claim 18 , wherein receiving the message pointing to the synchronization file comprises determining whether a digital signature associated with the message pointing to the synchronization file is valid;

wherein downloading the synchronization file comprises downloading the synchronization file in response to a determination that the digital signature associated with the message pointing to the synchronization file is valid; and

wherein the identified content corresponding to each extracted content synchronization message is synchronized in response to the determination that the digital signature associated with the message pointing to the synchronization file is valid.

21. The computer program product of claim 20 , wherein the digital signature is generated based on excluding a plurality of content identifiers.

22. The computer program product of claim 18 , wherein synchronizing the plurality of contents comprises:

sending a digital signature associated with the message; and

synchronizing the plurality of contents in response to a determination by the content server that the digital signature associated with the message is valid.

23. The computer program product of claim 22 , wherein the digital signature is generated based on excluding a plurality of content identifiers.

24. The computer program product of claim 18 , wherein at least some of the plurality of contents for synchronization is synchronized to the content server by another caching server.

25. The computer program product of claim 18 , wherein the program code includes instructions to establish a single connection between the caching server and the content server,

wherein synchronizing, by the caching server, the identified plurality of contents includes synchronizing, by the caching server, the identified plurality of contents via the established single connection to the content server.

26. The computer program production of claim 18 , wherein the plurality of content synchronization messages comprise content synchronization messages automatically generated for updates to content stored by the content server.

Assignments (7)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC)
Reel/Frame 061753/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2017
From: EMC CORPORATION
To: OPEN TEXT CORPORATION
Reel/Frame 041140/0275 →
PATENT RELEASE (REEL:40134/FRAME:0001) Recorded Jan 23, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: EMC CORPORATION, AS GRANTOR
Reel/Frame 041073/0136 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC CORPORATION
Reel/Frame 041073/0443 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2014
From: GIRIYAPPA, VENKATESH
To: EMC CORPORATION
Reel/Frame 031954/0596 →