IP Library Granted Patent US 10,789,322
Granted Patent B2
US 10,789,322 · App. 16/833,021 · Granted Sep 29, 2020

Short link processing to improve service efficiency

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,789,322
App. No.
16/833,021
Granted
Sep 29, 2020
Kind
B2
Abstract

A server receives a short link application from a requester. The short link application includes a long link uniform resource locator (URL). The server obtains a database identifier based on the long link URL. The server determines whether a database associated with the database identifier is accessible by the server. In response to a determination that the database associated with the database identifier is accessible by the server, the server obtains a short link URL associated with the long link URL from the database, and transmits the short link URL to the requester.

Claims (87)

1. A computer-implemented method, comprising:

receiving, by a server and from a requester, a short link application, wherein the short link application includes a long link uniform resource locator (URL);

obtaining, by the server, a database identifier based on the long link URL;

determining, by the server, whether a database associated with the database identifier is accessible by the server;

in response to a determination that the database associated with the database identifier is accessible by the server:

obtaining, by the server and from the database, a short link URL associated with the long link URL; and

transmitting, by the server and to the requester, the short link URL; and

in response to a determination that the database associated with the database identifier is not accessible by the server, transmitting, by the server and to a second server, the short link application, wherein the database associated with the database identifier is accessible by the second server.

2. The computer-implemented method of claim 1 , wherein obtaining, by the server, a database identifier based on the long link URL includes:

calculating a digest value based on the long link URL; and

calculating the database identifier based on the digest value, wherein the database identifier is a number or a character.

3. The computer-implemented method of claim 2 , wherein obtaining, by the server and from the database, a short link URL associated with the long link URL includes:

determining whether a simplified short link corresponding to the digest value is stored in the database; and

in response to a determination that the simplified short link corresponding to the digest value is stored in the database:

determining whether a second long link URL stored in the database and associated with the simplified short link is the same as the long link URL; and

in response to a determination that the second long link URL stored in the database and associated with the simplified short link is the same as the long link URL, generating the short link URL based on the simplified short link.

4. The computer-implemented method of claim 3 , wherein the short link application includes a short link validity period, the method further comprising in response to a determination that the second long link URL stored in the database and associated with the simplified short link is the same as the long link URL, updating a validity period of the simplified short link stored in the database with the short link validity period included in the short link application.

5. The computer-implemented method of claim 3 , further comprising in response to a determination that the simplified short link corresponding to the digest value is not stored in the database or in response to a determination that the second long link URL stored in the database and associated with the simplified short link is not the same as the long link URL:

generating a second simplified short link based on the database identifier;

determining whether the second simplified short link is stored in the database; and

in response to a determination that the second simplified short link is not stored in the database:

generating the short link URL based on the second simplified short link; and

storing, in the database, the second simplified short link, the long link URL, and the digest value.

6. The computer-implemented method of claim 5 , wherein the short link application includes a short link validity period, the method further comprising setting a validity period of the second simplified short link stored in the database with the short link validity period included in the short link application.

7. The computer-implemented method of claim 5 , further comprising in response to a determination that the second simplified short link is stored in the database:

generating a third simplified short link based on the database identifier;

determining whether the third simplified short link is stored in the database; and

in response to a determination that the third simplified short link is not stored in the database:

generating the short link URL based on the third simplified short link; and

storing, in the database, the third simplified short link, the long link URL, and the digest value.

8. The computer-implemented method of claim 1 , further comprising:

for each simplified short link stored in the database:

determining whether a particular simplified short link is valid based on a validity period of the particular simplified short link stored in the database; and

in response to a determination that the particular simplified short link is not valid, deleting the particular simplified short link from the database.

9. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

receiving, by a server and from a requester, a short link application, wherein the short link application includes a long link uniform resource locator (URL);

obtaining, by the server, a database identifier based on the long link URL;

determining, by the server, whether a database associated with the database identifier is accessible by the server;

in response to a determination that the database associated with the database identifier is accessible by the server:

obtaining, by the server and from the database, a short link URL associated with the long link URL; and

transmitting, by the server and to the requester, the short link URL; and

in response to a determination that the database associated with the database identifier is not accessible by the server, transmitting, by the server and to a second server, the short link application, wherein the database associated with the database identifier is accessible by the second server.

10. The non-transitory, computer-readable medium of claim 9 , wherein obtaining, by the server, a database identifier based on the long link URL includes:

calculating a digest value based on the long link URL; and

calculating the database identifier based on the digest value, wherein the database identifier is a number or a character.

11. The non-transitory, computer-readable medium of claim 10 , wherein obtaining, by the server and from the database, a short link URL associated with the long link URL includes:

determining whether a simplified short link corresponding to the digest value is stored in the database; and

in response to a determination that the simplified short link corresponding to the digest value is stored in the database:

determining whether a second long link URL stored in the database and associated with the simplified short link is the same as the long link URL; and

in response to a determination that the second long link URL stored in the database and associated with the simplified short link is the same as the long link URL, generating the short link URL based on the simplified short link.

12. The non-transitory, computer-readable medium of claim 11 , wherein the short link application includes a short link validity period, the operations further comprising in response to a determination that the second long link URL stored in the database and associated with the simplified short link is the same as the long link URL, updating a validity period of the simplified short link stored in the database with the short link validity period included in the short link application.

13. The non-transitory, computer-readable medium of claim 11 , the operations further comprising in response to a determination that the simplified short link corresponding to the digest value is not stored in the database or in response to a determination that the second long link URL stored in the database and associated with the simplified short link is not the same as the long link URL:

generating a second simplified short link based on the database identifier;

determining whether the second simplified short link is stored in the database; and

in response to a determination that the second simplified short link is not stored in the database:

generating the short link URL based on the second simplified short link; and

storing, in the database, the second simplified short link, the long link URL, and the digest value.

14. The non-transitory, computer-readable medium of claim 13 , wherein the short link application includes a short link validity period, the operations further comprising setting a validity period of the second simplified short link stored in the database with the short link validity period included in the short link application.

15. The non-transitory, computer-readable medium of claim 13 , the operations further comprising in response to a determination that the second simplified short link is stored in the database:

generating a third simplified short link based on the database identifier;

determining whether the third simplified short link is stored in the database; and

in response to a determination that the third simplified short link is not stored in the database:

generating the short link URL based on the third simplified short link; and

storing, in the database, the third simplified short link, the long link URL, and the digest value.

16. The non-transitory, computer-readable medium of claim 9 , the operations further comprising:

for each simplified short link stored in the database:

determining whether a particular simplified short link is valid based on a validity period of the particular simplified short link stored in the database; and

in response to a determination that the particular simplified short link is not valid, deleting the particular simplified short link from the database.

17. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations comprising:

receiving, by a server and from a requester, a short link application, wherein the short link application includes a long link uniform resource locator (URL);

obtaining, by the server, a database identifier based on the long link URL;

determining, by the server, whether a database associated with the database identifier is accessible by the server; and

in response to a determination that the database associated with the database identifier is accessible by the server:

obtaining, by the server and from the database, a short link URL associated with the long link URL; and

transmitting, by the server and to the requester, the short link URL; and

in response to a determination that the database associated with the database identifier is not accessible by the server, transmitting, by the server and to a second server, the short link application, wherein the database associated with the database identifier is accessible by the second server.

18. The computer-implemented system of claim 17 , wherein obtaining, by the server, a database identifier based on the long link URL includes:

calculating a digest value based on the long link URL; and

calculating the database identifier based on the digest value, wherein the database identifier is a number or a character.

19. The computer-implemented system of claim 18 , wherein obtaining, by the server and from the database, a short link URL associated with the long link URL includes:

determining whether a simplified short link corresponding to the digest value is stored in the database; and

in response to a determination that the simplified short link corresponding to the digest value is stored in the database:

determining whether a second long link URL stored in the database and associated with the simplified short link is the same as the long link URL; and

in response to a determination that the second long link URL stored in the database and associated with the simplified short link is the same as the long link URL, generating the short link URL based on the simplified short link.

20. The computer-implemented system of claim 19 , wherein the short link application includes a short link validity period, the operations further comprising in response to a determination that the second long link URL stored in the database and associated with the simplified short link is the same as the long link URL, updating a validity period of the simplified short link stored in the database with the short link validity period included in the short link application.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053754/0625 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053743/0464 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2020
From: ZHOU, JUN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 052574/0271 →