[go: up one dir, main page]

CN112738550B - Content data processing method and device, electronic equipment and medium - Google Patents

Content data processing method and device, electronic equipment and medium Download PDF

Info

Publication number
CN112738550B
CN112738550B CN201910973444.6A CN201910973444A CN112738550B CN 112738550 B CN112738550 B CN 112738550B CN 201910973444 A CN201910973444 A CN 201910973444A CN 112738550 B CN112738550 B CN 112738550B
Authority
CN
China
Prior art keywords
version number
interactive video
client
editor
end code
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
CN201910973444.6A
Other languages
Chinese (zh)
Other versions
CN112738550A (en
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910973444.6A priority Critical patent/CN112738550B/en
Publication of CN112738550A publication Critical patent/CN112738550A/en
Application granted granted Critical
Publication of CN112738550B publication Critical patent/CN112738550B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/71Indexing; Data structures therefor; Storage structures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23109Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion by placing content in organized collections, e.g. EPG data repository
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26291Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for providing content or additional data updates, e.g. updating software modules, stored at the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • H04N21/4586Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

An embodiment of the present application provides a method for processing content data, including: receiving content data submitted by a client, wherein the content data is obtained by editing content on an editor of the client, and the client obtains the editor according to a path provided by a server; the method comprises the steps that content data and a first version number of a back-end code corresponding to an editor in a client are backed up in a cache in an associated mode; comparing the first version number with a second version number, wherein the second version number is the version number of the back-end code stored in the database; if the first version number is not lower than the second version number, writing the content data into the database; and if the first version number is lower than the second version number, carrying out compatible processing on the content data and the back-end code of the second version number. The management of the versions of the content data and the editors is effectively realized, and the compatibility of the content data and the editors is ensured.

Description

Content data processing method and device, electronic equipment and medium
Technical Field
The present application relates to the field of computer and communication technologies, and in particular, to a method and an apparatus for processing content data, an electronic device, and a medium.
Background
When watching the interactive video, the user interacts with the interactive video, for example, scenario selection is performed, so that the scenario development of the watched interactive video is influenced.
The interactive video is used as a brand-new video mode, so that users can have rich watching experience in aspects of participation in dramas, content exploration and the like.
For the creation of interactive video, the creator performs video creation in the editor of the client, during which the video editing, modification and adjustment may need to be performed many times, and in this process, each editing and modification may generate interactive video with different content versions. The created interactive video is content data.
For the interactive video open platform, along with the update iteration in the application program and the server, the editor in the client is correspondingly updated, and the update of the editor corresponds to the iteration of the editor version.
If the client is a web page client, the update of the client does not take effect immediately along with the release; moreover, if the server side distributes the gray levels of a plurality of machines, the gray levels are not immediately effective along with the distribution. Thus, in this case, there may be a case where a plurality of versions coexist between the client and the server.
Moreover, since the updating of the web client is based on that the user will only take effect at the access server after the user finishes publishing in the server, different editors of different versions may be used by different creators at different times, and the editors of different versions may also generate interactive videos of different content versions.
Due to the fact that multiple versions may coexist in the client and the server, an editor may be incompatible with the interactive video, and an error may be reported, or the incompatible interactive video is written into the database, and the interactive video cannot be smoothly played.
In summary, how to perform compatible processing of content data and an editor is a technical problem to be solved in the prior art.
Disclosure of Invention
Embodiments of the present application provide a method, an apparatus, an electronic device, and a medium for processing content data, so that version management of the content data and an editor can be implemented at least to a certain extent, and compatibility of the content data and the editor is ensured.
Other features and advantages of the present application will be apparent from the following detailed description, or may be learned by practice of the application.
According to an aspect of the embodiments of the present application, a method for processing content data is provided, which is applied to a server and includes:
receiving content data submitted by a client, wherein the content data is obtained by performing content editing on an editor of the client, and the client obtains the editor according to a path provided by a server;
the content data and a first version number of a back-end code corresponding to an editor in the client are backed up in a cache in an associated mode;
comparing the first version number with a second version number, wherein the second version number is the version number of the back-end code stored in a database;
if the first version number is not lower than a second version number, writing the content data into the database;
and if the first version number is lower than the second version number, performing compatible processing on the content data and the back-end code of the second version number.
According to an aspect of the embodiments of the present application, there is provided a content data processing apparatus, applied to a server, including:
the system comprises a receiving module, a processing module and a processing module, wherein the receiving module is used for receiving content data submitted by a client, the content data is obtained by performing content editing on an editor of the client, and the client obtains the editor according to a path provided by a server;
the backup module is used for performing associated backup on the content data and the first version number of the back-end code corresponding to the editor in the client in a cache;
the comparison module is used for comparing the first version number with a second version number, wherein the second version number is the version number of the back-end code stored in the database;
the writing module is used for writing the content data into the database if the first version number is not lower than a second version number;
and the compatible processing module is used for carrying out compatible processing on the content data and the rear-end code of the second version number if the first version number is lower than the second version number.
According to an aspect of an embodiment of the present application, there is provided an electronic device applied to a server, including:
a processor; and
a memory having computer readable instructions stored thereon which, when executed by the processor, implement the method as described above.
According to an aspect of embodiments of the present application, there is provided a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements a method as described above.
In the technical solutions provided by some embodiments of the present application, the data compatibility problem is solved when data is written into a database, content data generated by a new version of an editor is written into a cache and the database, and data generated by an old version of the editor is only written into the cache, so that management of the versions of the content data and the editor is effectively realized, and compatibility between the content data and the editor is ensured. And the coexistence of multiple versions in the client and the server can be realized.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the application.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and together with the description, serve to explain the principles of the application. It is obvious that the drawings in the following description are only some embodiments of the application, and that for a person skilled in the art, other drawings can be derived from them without inventive effort. In the drawings:
FIG. 1 illustrates a schematic diagram of an environment in which the present disclosure may be implemented;
FIG. 2 is a flow diagram illustrating a method of processing content data according to one embodiment;
FIG. 3 is a flow diagram of steps in one embodiment before step 210 of the corresponding embodiment of FIG. 2;
FIG. 4 is a flow diagram of step 290 of the corresponding embodiment of FIG. 2 in one embodiment;
FIG. 5 is a flow diagram of step 230 of the corresponding embodiment of FIG. 2 in one embodiment;
fig. 6 is a flowchart illustrating a processing method of content data according to another exemplary embodiment;
FIG. 7 is an architecture diagram illustrating an interactive video open platform, in accordance with one embodiment;
FIG. 8 is a timing diagram for content data processing using the architecture of FIG. 7;
FIG. 9 is a timing diagram of content data processing in rollback using the architecture of FIG. 7;
fig. 10 is a block diagram illustrating a processing apparatus of content data according to an embodiment;
FIG. 11 illustrates a schematic structural diagram of a computer system suitable for use in implementing the electronic device of an embodiment of the present application.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the application. One skilled in the relevant art will recognize, however, that the embodiments of the present application can be practiced without one or more of the specific details, or with other methods, components, devices, steps, and so forth. In other instances, well-known methods, devices, implementations, or operations have not been shown or described in detail to avoid obscuring aspects of the application.
The block diagrams shown in the figures are functional entities only and do not necessarily correspond to physically separate entities. I.e. these functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor means and/or microcontroller means.
The flow charts shown in the drawings are merely illustrative and do not necessarily include all of the contents and operations/steps, nor do they necessarily have to be performed in the order described. For example, some operations/steps may be decomposed, and some operations/steps may be combined or partially combined, so that the actual execution sequence may be changed according to the actual situation.
FIG. 1 is a schematic illustration of an implementation environment according to the present disclosure. The implementation environment includes: a terminal 110 and a server 120.
After the terminal 110 establishes a network connection with the server 120, the terminal 110 interacts with the server 120 by running a client program corresponding to the server 120, for example, submitting content data to the server. The client program installed in the terminal 110 may be an application client or a web page client, and is not particularly limited herein.
The terminal 110 may be an electronic device such as a smart phone, a tablet computer, a notebook computer, and a desktop computer. The server 120 is used for providing services for clients in the terminal 110, and may be a server or a server cluster formed by several servers.
The implementation details of the technical solution of the embodiment of the present application are set forth in detail below:
fig. 2 shows a flowchart of a processing method of content data according to an embodiment of the present application, which may be performed by a server. Referring to fig. 2, the processing method of the content data at least includes steps 210 to 290, which are described in detail as follows:
step 210, receiving content data submitted by the client, where the content data is obtained by performing content editing on an editor of the client, and the client obtains the editor according to a path provided by the server.
The content edited in the editor may be an edit of at least one content presentation form of video, text, image, audio, and the like, and is not particularly limited herein. Correspondingly, the content data submitted by the client may be data carrying at least one of video, text, image, audio, and the like.
The content editing may be an editing method such as uploading, modifying, and combining a plurality of content clips, and is not particularly limited herein. By editing the content on the editor, the user can edit the content
As described above, the client may be an application client or a web client, which is not limited in particular herein.
In a specific embodiment, the editor may be implemented by a script, where the server provides a path of the script to the client, and then the client obtains the script according to the path provided by the server and loads the script, so as to obtain the editor.
The client obtains the editor according to the path provided by the server, so that the code corresponding to the editor is decoupled from the client, and version management of the editor is facilitated.
Step 230, the content data and the first version number of the back-end code corresponding to the editor in the client are backed up in the cache in an associated manner.
In order to ensure the interaction between the client and the server, the server is configured with a back-end code corresponding to the editor, and the versions of the back-end code and the front-end editor are in one-to-one correspondence. Therefore, after the back-end code is iteratively updated at the back end, a new version of the editor is correspondingly provided, and the path of the new version of the editor is stored in the server.
The first version number is a version number of a back-end code corresponding to a version editor corresponding to the generated content data, namely, a version number of a back-end code corresponding to an editor corresponding to a path provided for the client by the server.
Because the content data obtained in the client is obtained through the editor provided in the server, and the editors provided by the server are in one-to-one correspondence with the version numbers of the back-end codes in the server, after the client submits the content data to the server, the server can correspondingly obtain the first version number according to the version number of the editor corresponding to the path issued to the client.
And caching the content data which is used for backing up historical editing of the user in an editor of the client. In an embodiment, the cache may be a redis cache, such that a key may be created for the content data by a key command in the redis. In order to store the content data in association with the first version number, the first version number is added to the key corresponding to the content data.
The storage backup of the content data in the cache may be performed by full backup, incremental backup, differential backup, or a combination of the three backup manners, which is not specifically limited herein.
The full backup refers to the complete backup of content data sent by a client, and the backup mode is in a data recovery time period, but occupies a large storage space.
Incremental backups refer to data that has been added and modified each time the content data of the backup indicates data equivalent to the last backup (full, incremental, or delta). The backup mode has no repeated backup data, saves the storage space and shortens the backup time.
Differential backup refers to each backup of data that is newly added and modified relative to the data that was last fully backed up. The differential backup does not need to be completely backed up every time, so that the time required by the backup is short, and the storage space is saved.
By associating and backing up the content data and the first version number in the cache, the server can know the version number corresponding to the editor generating the content data, so that the compatibility of the content data and the editor is ensured.
Step 250, comparing the first version number with a second version number, wherein the second version number is the version number of the back-end code stored in the database.
As described above, since the backend code corresponding to the editor is configured in the server, and the code information of the backend code is stored correspondingly, the code information is, for example, the name, version number, and the like of the backend code. Thus, the second version number can be directly obtained by a request from a database configured in the server.
Because the editor needs to perform version iterative update, correspondingly, the back-end code corresponding to the editor also performs iterative update correspondingly. And because the user needs a certain time to send the content data to the server after editing the content in the editor, after the client obtains the editor according to the path provided by the server and the user finishes editing the content, the server may perform iterative update on the back-end code in a period of time after the editor generates the content data, and thus, by comparing the first version number with the second version number, whether the server performs iterative update on the back-end code in the period of time can be known.
Further, whether the currently configured backend code of the server is iterated to a high version or rolled back to a low version can be further determined by comparing the sizes of the first version number and the second version number.
And 270, if the first version number is not lower than the second version number, writing the content data into the database.
If the first version number is not lower than the second version number, it indicates that the backend code corresponding to the editor generating the content data is a new version (indicating that the editor generating the content data is a new version) compared with the backend code stored in the database, and thus it is possible to satisfy compatibility between the content data and the editor generating the content data and compatibility between the content data and the editor corresponding to the backend code stored in the database, and thus, the content data may be directly written into the database for storage.
And 290, if the first version number is lower than the second version number, performing compatible processing on the content data and the back-end code of the second version number.
If the first version number is lower than the second version number, it indicates that the backend code corresponding to the editor generating the content data is an old version (the corresponding editor generating the content data is an old version) compared with the backend code stored in the database, and if the backend code is directly written into the database, the content data is incompatible with the editor corresponding to the backend code stored in the database, so that the content data and the code of the second version number are compatible.
The compatible processing to be performed may be adding a field, deleting a field, modifying a field type, and the like, and is not particularly limited herein.
For example, a field a is added to the back-end code of the second version number, the type of the field a is defined as a character string, and the default value is null, then the compatible processing for the content data is the added field a, and the field a is defined as a null character string.
If the backend code of the second version number deletes a field b, the compatible processing performed on the content data deletes the field b.
If the backend code of the second version number changes the type of the field c, for example, changes the type of the field c from int to string, the compatible processing performed on the content data changes the type of the field c to string.
Through the process, the data compatibility problem is processed when the data is written into the database, the content data generated by the editor of the new version is written into the cache and the database, and the data generated by the editor of the old version is only written into the cache, so that the management of the content data and the editor version is effectively realized, and the compatibility of the content data and the editor is ensured. And the coexistence of multiple versions in the client and the server can be realized.
The client acquires the editor according to the path issued by the server and correspondingly edits the content in the acquired editor to acquire the content data, so that the decoupling of the client and the editor is realized, and the synchronous iterative updating of the editor and the server is facilitated.
In one embodiment, as shown in fig. 3, before step 210, the method further comprises:
step 310, receiving a path request sent by a client.
The client requests the path of the editor from the server for editing. In other words, the path request is initiated to request a get editor.
In an embodiment, a connection request initiated by a client to a server is regarded as a path request initiated by the client, so that the server immediately issues a path corresponding to an editor of a currently stored backend code to the client after successfully establishing communication connection with the client according to the connection request initiated by the client.
In an embodiment, the client and the server adopt WebSocket communication, so that when the client and the server are connected, the path of the editor corresponding to the currently stored backend code of the client is issued to the server.
Step 330, responding to the path request, issuing the path of the editor corresponding to the currently configured backend code to the client, so that the client obtains the editor according to the issued path.
As described above, the version number of the backend code configured in the server corresponds to the version of the editor one by one, so that the server can determine the version number of the editor corresponding to the backend code of the version number by querying the version number of the currently configured backend code of the server, and based on this, the storage location information of the code corresponding to the editor of the version number is obtained correspondingly. The path is the storage location information of the code corresponding to the editor.
In one embodiment, as shown in FIG. 4, step 290 includes:
step 410, obtain difference data between the back-end code of the second version number and the back-end code of the first version number.
The back-end code of each version number defines the attributes of editors of different versions, such as fields, types, and the like in the editors, so that if the compatibility of the content data with the editors is to be ensured, the compatibility processing needs to be performed according to the back-end code of the second version number.
For compatibility processing, difference data of the back-end code of the second version number compared with the back-end code of the first version number is obtained, and the difference data reflects modification of the back-end code of the second version number compared with the back-end code of the first version number. Correspondingly, the difference data also indicates the difference between editors of two version numbers.
And 430, performing compatibility processing on the content data according to the difference data so that the editor corresponding to the back-end code of the second version number is compatible with the content data.
By performing the compatibility processing by the compatibility processing of the content data in accordance with the difference data, the content data can be made compatible with the backend code of the second version number.
In one embodiment, as shown in FIG. 5, step 230, comprises:
and step 510, obtaining the last backed-up content data from the cache.
As described above, when the content data backup is performed, it may be a full backup, an incremental backup, or a differential backup. The content data obtained for the last backup may be full, incremental, or differential.
Step 530, comparing the received content data with the last backed-up content data, and obtaining incremental information of the received content data relative to the last backed-up content data.
And 550, performing associated backup on the incremental information and the first version number of the back-end code corresponding to the editor in the client in a cache.
The incremental information is used to indicate data added and modified to the received content data relative to the last backed-up content data.
The incremental information is obtained through comparison, so that the backup storage of the received content data in the current backup in an incremental storage mode is realized.
The content data is backed up and stored in the cache in an incremental storage mode, so that the storage pressure of the cache can be reduced, and the data storage capacity of the cache is reduced.
The content data is backed up and stored in the cache, so that on one hand, the storage of the content data which is edited in the history in the client is realized, and on the other hand, the content data is written into the data only after the content data is backed up successfully in the cache, so that the reading and writing pressure of the database is relieved.
In one embodiment, after step 290, the method further comprises:
and writing the content data after the compatible processing into a database.
After the content data is subjected to compatibility processing, the content data can be presented in an editor corresponding to the back-end code of the second version number, and the compatibility processing is not required to be performed when the content data is presented, so that the problem of iterative update of the version is solved from the source.
In an embodiment, the method further comprises:
and carrying out persistence processing on the content data in the cache according to a preset period.
As described above, since all content data transmitted in the client needs to be backed up and stored in the cache, the storage amount and the storage pressure are large for the cache.
Considering that the older version of the content data is not backed up when data rollback or rollback is performed, the content data in the cache is subjected to persistence processing according to a preset period, which may be set according to actual needs, for example, every 24 hours, every 48 hours, and the like.
By carrying out persistence processing on the content data in the cache, the storage space in the cache can be released, and the storage pressure of the cache is reduced.
In one embodiment, as shown in fig. 6, the method further comprises:
step 610, receiving a modification request sent by the client for the submitted content data.
In step 630, the content data indicated by the modification request is obtained from the cache.
Step 650, returning the acquired content data to the client.
During content editing in an editor of a client, a user may need to repeatedly perform content modification, so that content data of multiple content versions appears. After the client sends the content data to the server, even after the server issues the content data stored in the database, the content data may need to be modified and edited, so that the client can extract the data from the cache by sending a modification request to the server, but not extract the data from the database, thereby avoiding multiple database accesses during the modification and editing process and reducing the read-write lock pressure of the database.
The method of the present disclosure is further illustrated below with reference to a specific example
Interactive video is increasingly popular with multiple users as a new video mode. During the process of watching the interactive video, the user can interact with the interactive video, for example, select a scenario, so as to influence the development of the scenario in the video.
The generation of the interactive video is performed at the user terminal, wherein four aspects are involved, namely an interactive video open platform (also called as a B terminal), an interactive video open platform background (also called as a B terminal background), an interactive video presentation client (also called as a C terminal) and an interactive video presentation client background (also called as a C terminal background) for creating the interactive video.
The interactive video open platform is an open platform provided for an author to edit an interactive video online, that is, corresponds to a client in the method disclosed herein.
And the interactive video open platform background is used for providing service for the interactive video open platform and managing and storing the interactive video edited by the creator at the B end.
And the interactive video presenting client is used for watching the interactive video created by the creator by the user.
And the interactive video presentation client background is used for providing service for the interactive video presentation client, and the data source of the interactive video presentation client background is the configuration data corresponding to the interactive video edited by the author at the B terminal.
In this embodiment, the B-side is a full stack project based on a Web (JS/CSS) front-side + node.
Since the B-side is constantly updating iterations, it must go through code changes and releases. The B terminal runs at the browser client, and the time for refreshing the browser (updating the code) by the user is not fixed, so the code of the B terminal does not take effect immediately along with the release. The background of the B end is used for gray release of a plurality of machines, and the release will not take effect immediately. That is to say, in the production environment, there may exist a situation where multiple versions coexist in the B-side/B-side backend, that is, the versions of the editors existing in the B-side may be different, and the backend codes corresponding to the editors configured in each machine of the B-side backend may also be different.
For the B terminal, the change and the release are carried out, and the change and the release can only take effect completely when the B terminal is accessed again after the background release of the B terminal is completed. Thus, different authors may use different versions of the "editor" at different times.
The interactive video is obtained by the author editing the content on the B terminal, and due to the particularity of the interactive video, a complete plot context configuration data is arranged behind the interactive video, and the configuration data can be designed by the author on the B terminal after a period of time and a plurality of editing and adjusting. For this configuration data, each edit modification will result in a different version, i.e. a different "content version".
And the author edits on a different version of the "editor" may also produce a different "content version".
Therefore, if the compatibility problem before and after the "content version" and the "editor version" is not processed well, it may cause an exception to a certain section (for example, a certain normal function cannot be used) or write incompatible data into the database (then the corresponding interactive video cannot be played normally at the C-end).
Therefore, the method disclosed by the invention is adopted to solve the problem of compatibility between the content version and the editor version in the interactive platform, so that the version iteration in the interactive platform is accurately and finely managed.
Fig. 7 is a diagram illustrating the architecture of the interactive video open platform and the background in this embodiment. As shown in fig. 7, the front end is an interactive video open platform (B-end), and is also a client in the method, and the Node service layer, the redis cache, and the database are used as a background (B-end background) of the interactive video open platform and are used as a server in the method of the present disclosure.
At the front end, different authors may use different versions of editors for video authoring, and the different versions of editors appear as different JS/CSS executed on the browser, where CSS (Cascading Style Sheets, cascading CSS files) refers to a file defining the display Style and layout of elements in a page, JS is javasicrpt, which is an object-and event-driven based client-side scripting language, and JS/CSS refers to a CSS file written in javasicrpt language. The JS/CSS executed by the client on the browser appears as an editor of the client.
The Node service layer interacts with the front end, and because the background of the B end is multi-site multi-machine deployment, service versions running on different machine containers may be different, and correspondingly, different Server versions are used, namely, server Version. Correspondingly, different server versions correspond to different versions of the backend code configured for the editor. And realizing unified version management logic at a Node service layer. Each machine may be connected to multiple clients simultaneously, so that management of WebSocket connections established with the clients, i.e., socket connection pool management, is correspondingly performed in this layer.
And the Redis cache is used for realizing storage and backup of the interactive videos with different content versions so as to manage and persist the interactive videos with different content versions. Of course, the management implemented therein includes edit version management of multiple edit modifications made to the same interactive video at the author, as well as multi-machine version management, persistent data management.
The database is used to store the final unique version of the content. The concurrent service control comprises the compatible processing of interactive video, transaction processing and rollback and the concurrent service control of read-write lock.
Fig. 8 illustrates a flow diagram for processing interactive video according to a method of the present disclosure based on the architecture diagram of fig. 7.
As shown in fig. 8, the Web front-end initiates a path request to the Node back-end by requesting JS/CSS path at step 1).
And the Node back end responds to the JS/CSS path request carried out by the Web front end, and returns a JS/CSS path corresponding to a back-end code with the current Node back end configuration version number V1 to the Web front end through the step 2). And the version of the back-end code corresponding to the JS/CSS indicated by the issued path is the first version number of the back-end code.
And after the Web front end obtains the path of the JS/CSS path, obtaining the JS/CSS file according to the path. And executing the step 3) to load the script, namely obtaining the editor used by the Web front end for interactive authoring.
Furthermore, after the Web front end acquires the JS/CSS file, a HASH suffix of the file is added to the file name of the JS/CSS file, so that the front end codes of multiple versions can independently coexist.
The Web front end and the Node back end adopt WebSocket communication, a file path of the JS/CSS is issued by the Node back end (issued when the WebSocket is connected), and therefore the back end of each version can control the client to use the corresponding front end code.
The user edits the data by implementing the step 4) in the editor of the Web front end, namely correspondingly obtains the created data (namely the created interactive video data), and automatically submits the data to the Node back end by the step 5).
After the step 5) is completed, the Node back-end correspondingly obtains the submitted data. The Node back end executes step 6) to associate and backup the data and the version number V1 of the back end code in a redis cache, and after the backup is successful, the redis cache returns a notification message of the successful backup to the Node back end through step 7). By adding the version number v1 of the back-end code after the key of the redis, the data produced by editors of different versions (the editors correspond to the back-end codes of corresponding versions) can be ensured not to be mutually covered.
After receiving the notification message of successful backup, the Node backend acquires the version number ver of the backend code stored in db (data base ) through step 8). The version number of the backend code obtained by the step 8) is the version number of the backend code configured in the current Node backend, i.e. the second version number in the method of the present disclosure.
Then, comparing the version number V1 of the back-end code with the version number ver, and if the ver is determined to be not more than V1 through comparison, executing the step 11) to write the data into db; otherwise, if ver is more than v1, the step 13) is executed to perform compatible processing on the data and then write the data into db.
For the compatible processing in step 13), it is necessary that, according to actual conditions, when the data structure is changed, the back-end code of the old version must be compatible with the logic processing of the B-end background.
Through the process, the codes of different versions are decoupled, so that a developer does not need to solve the problem of code incompatibility when a plurality of versions coexist on a processing line, and the workload is saved. Meanwhile, the data of the user cannot be abnormal due to the updating of the versions (the updating of the back-end code and the editor), and the data cannot be covered by the multiple versions due to the existence of the multiple versions on the line. And even if the data is abnormal, the data can be recovered through the data backed up in the redis cache.
The method of the embodiment can also be used for solving the problem of inconsistent data in the gray-scale online process of Web application in an open platform, and can realize coexistence of front-end and back-end multi-versions.
Therefore, the method of the embodiment realizes the accurate management of the iteration of the versions in the video open platform, improves the availability and the robustness of the interactive video open platform, and expands the coexistence capability of multiple versions.
In the actual process, if the backend code issued by the B-side backend is wrong, a situation of writing a wrong high-version content data into the database db may occur. To solve this problem, a rollback mechanism is introduced in the interactive video open platform. The timing diagram of the rollback flow is shown in fig. 9.
As shown in fig. 9, when finding that an error occurs in the backend code issued by the Node backend (B-side backend), the rolling back of the backend code is performed. Assuming that the version number of the back-end code with the issued error is v2, the back-end code is rolled back again by the back-end code with a low version number (assuming that the back-end code is rolled back to the v1 version number). Since the backend code of the v1 version number is re-enabled at a new time, the version number of the currently started backend code is reconfigured to v3 to be distinguished from the backend code which previously issued the v1 version number.
In the rollback process, if a machine at the Node back end needs to be restarted, the Web front end is disconnected with the socket at the Node back end, after the Web front end monitors the socket disconnection time, the Web front end establishes the socket connection with the Node back end again, and at the moment, the Web front end is connected to a machine server configured with a back end code of a v1 version number.
After the socket connection is reestablished successfully, the Node backend issues JS/CSS corresponding to the v1 version number to the Web front end, and then the processes of step 3) to step 13) in fig. 8 are implemented through steps 5) to 13) in fig. 9.
Embodiments of the apparatus of the present application are described below, which may be used to perform the methods of the above-described embodiments of the present application. For details which are not disclosed in the embodiments of the apparatus of the present application, reference is made to the embodiments of the method described above in the present application.
Fig. 10 is a block diagram of a content data processing apparatus 1000 according to an exemplary embodiment, applied to a server, and referring to fig. 10, the apparatus includes:
the receiving module 1010 is configured to receive content data submitted by a client, where the content data is obtained by editing content on an editor of the client, and the client obtains the editor according to a path provided by a server.
The backup module 1030 is configured to associate and backup the content data and the first version number of the backend code corresponding to the editor in the client in the cache.
The comparing module 1050 is configured to compare the first version number with a second version number, where the second version number is a version number of a backend code stored in the database.
The writing module 1070 is configured to write the content data into the database if the first version number is not lower than the second version number.
And a compatible processing module 1090, configured to perform compatible processing on the content data and the backend code of the second version number if the first version number is lower than the second version number.
The implementation process of the functions and actions of each module in the device is specifically described in the implementation process of the corresponding step in the processing method of the voice signal, and is not described herein again.
It is understood that these modules may be implemented in hardware, software, or a combination of both. When implemented in hardware, these modules may be implemented as one or more hardware modules, such as one or more application specific integrated circuits. When implemented in software, the modules may be implemented as one or more computer programs executing on one or more processors.
In one embodiment, the apparatus further comprises:
and the path request receiving module is used for receiving the path request sent by the client.
And the path issuing module is used for responding to the path request and issuing the path of the editor corresponding to the currently configured back-end code to the client so that the client can obtain the editor according to the issued path.
In an embodiment, the compatible processing module 1090 includes:
a difference data acquisition unit for acquiring difference data of the back-end code of the second version number and the back-end code of the first version number.
And the compatible processing unit is used for carrying out compatible processing on the content data according to the difference data so as to enable the editor corresponding to the back-end code of the second version number to be compatible with the content data.
In one embodiment, the backup module 1030 includes:
and the first acquisition unit is used for acquiring the last backed-up content data from the cache.
And the comparison unit is used for comparing the received content data with the content data backed up last time and obtaining the increment information of the received content data relative to the content data backed up last time.
And the backup unit is used for associating and backing up the incremental information and the first version number of the back-end code corresponding to the editor in the client in a cache.
In one embodiment, the apparatus further comprises:
and the second writing module is used for writing the content data after the compatible processing into the database.
In one embodiment, the apparatus further comprises:
and the persistence processing module is used for performing persistence processing on the content data in the cache according to a preset period.
In one embodiment, the apparatus further comprises:
and the modification request receiving module is used for receiving a modification request sent by the client for the submitted content data.
And the data acquisition module is used for acquiring the content data indicated by the modification request from the cache.
And the data returning module is used for returning the acquired content data to the client.
The implementation process of the functions and actions of each module/unit in the device is specifically detailed in the implementation process of the corresponding step in the content data processing method, and is not described herein again.
FIG. 11 illustrates a schematic structural diagram of a computer system suitable for use to implement the electronic device of the embodiments of the subject application.
It should be noted that the computer system 1100 of the electronic device shown in fig. 11 is only an example, and should not bring any limitation to the functions and the application scope of the embodiments of the present application.
As shown in fig. 11, a computer system 1100 includes a Central Processing Unit (CPU) 1101, which can perform various appropriate actions and processes, such as performing the methods described in the above embodiments, according to a program stored in a Read-Only Memory (ROM) 1102 or a program loaded from a storage section 1108 into a Random Access Memory (RAM) 1103. In the RAM 1103, various programs and data necessary for system operation are also stored. The CPU 1101, ROM 1102, and RAM 1103 are connected to each other by a bus 1104. An Input/Output (I/O) interface 1105 is also connected to bus 1104.
The following components are connected to the I/O interface 1105: an input portion 1106 including a keyboard, mouse, and the like; an output section 1107 including a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, a speaker, and the like; a storage section 1108 including a hard disk and the like; and a communication section 1109 including a Network interface card such as a LAN (Local Area Network) card, a modem, or the like. The communication section 1109 performs communication processing via a network such as the internet. A driver 1110 is also connected to the I/O interface 1105 as necessary. A removable medium 1111 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 1110 as necessary, so that a computer program read out therefrom is mounted into the storage section 1108 as necessary.
In particular, according to embodiments of the present application, the processes described above with reference to the flow diagrams may be implemented as computer software programs. For example, embodiments of the present application include a computer program product comprising a computer program embodied on a computer-readable medium, the computer program comprising program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication portion 1109 and/or installed from the removable medium 1111. When the computer program is executed by a Central Processing Unit (CPU) 1101, various functions defined in the system of the present application are executed.
It should be noted that the computer readable medium shown in the embodiments of the present application may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM), a flash Memory, an optical fiber, a portable Compact Disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. Each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software, or may be implemented by hardware, and the described units may also be disposed in a processor. Wherein the names of the elements do not in some way constitute a limitation on the elements themselves.
As another aspect, the present application also provides a computer-readable medium, which may be contained in the electronic device described in the above embodiments; or may exist separately without being assembled into the electronic device. The computer readable medium carries one or more programs which, when executed by an electronic device, cause the electronic device to implement the method described in the above embodiments.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the application. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiments of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the embodiments of the present application.
Other embodiments of the present application will be apparent to those skilled in the art from consideration of the specification and practice of the embodiments disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains.
It will be understood that the present application is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the application is limited only by the appended claims.

Claims (10)

1. A content data processing method is applied to an interactive video open platform background, and is characterized by comprising the following steps:
receiving an interactive video submitted by a client, wherein the interactive video is obtained by performing content editing on an editor of the client, the client obtains the editor according to a path provided by an interactive video open platform background, and the interactive video open platform background is used for managing and storing the interactive video edited by an author;
the first version number of the back-end code in the interactive video open platform background corresponding to the editor in the client is backed up in a cache in an associated mode, and the versions of the back-end code in the interactive video open platform background are in one-to-one correspondence with the versions of the editor;
comparing the first version number with a second version number, wherein the second version number is the version number of the back-end code stored in a database;
if the first version number is not lower than a second version number, writing the interactive video into the database;
if the first version number is lower than the second version number, performing compatible processing on the interactive video and a back-end code of the second version number;
and when the back-end code issued by the interactive video open platform background has an error, the back-end code issued by the interactive video open platform background is rolled back to the back-end code with a low version number again.
2. The method of claim 1, wherein before receiving the interactive video submitted by the client, the method further comprises:
receiving a path request sent by the client;
and responding to the path request, and issuing the path of the editor corresponding to the currently configured backend code to the client so that the client obtains the editor according to the issued path.
3. The method of claim 1, wherein the compatibly processing the interactive video with the back-end code of the second version number comprises:
acquiring difference data of the rear-end code of the second version number and the rear-end code of the first version number;
and carrying out compatibility processing on the interactive video according to the difference data so that an editor corresponding to the back-end code of the second version number is compatible with the interactive video.
4. The method of claim 1, wherein the associating and backing up the interactive video and the first version number of the backend code in the background of the open platform of the interactive video corresponding to the editor in the client in a cache comprises:
obtaining the interactive video backed up last time from the cache;
comparing the received interactive video with the interactive video of the last backup to obtain incremental information of the received interactive video relative to the interactive video of the last backup;
and performing correlated backup on the incremental information and a first version number of a back-end code in a background of the interactive video open platform corresponding to the editor in the client in a cache.
5. The method of claim 1, wherein after compatibly processing the interactive video with the second version number of the back-end code, the method further comprises:
and writing the interactive video subjected to the compatibility processing into the database.
6. The method of claim 1, further comprising:
and carrying out persistence processing on the interactive video in the cache according to a preset period.
7. The method of claim 1, further comprising:
receiving a modification request sent by the client for the submitted interactive video;
obtaining the interactive video indicated by the modification request from the cache;
and returning the acquired interactive video to the client.
8. An apparatus for processing content data, comprising:
the client obtains the editor according to a path provided by an interactive video open platform background, and the interactive video open platform background is used for managing and storing the interactive video edited by a creator;
the backup module is used for performing correlated backup on the interactive video and a first version number of a back-end code in an interactive video open platform background corresponding to an editor in the client, wherein the versions of the back-end code in the interactive video open platform background correspond to the editors one to one;
the comparison module is used for comparing the first version number with a second version number, wherein the second version number is the version number of the back-end code stored in the database;
the writing module is used for writing the interactive video into the database if the first version number is not lower than a second version number;
the compatible processing module is used for carrying out compatible processing on the interactive video and the back-end code of the second version number if the first version number is lower than the second version number; and
and when the back-end code issued by the interactive video open platform background has an error, rolling back the back-end code issued by the interactive video open platform background to the back-end code with a low version number.
9. An electronic device, comprising:
a processor; and
a memory having computer readable instructions stored thereon which, when executed by the processor, implement the method of any of claims 1 to 7.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the method according to any one of claims 1 to 7.
CN201910973444.6A 2019-10-14 2019-10-14 Content data processing method and device, electronic equipment and medium Active CN112738550B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910973444.6A CN112738550B (en) 2019-10-14 2019-10-14 Content data processing method and device, electronic equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910973444.6A CN112738550B (en) 2019-10-14 2019-10-14 Content data processing method and device, electronic equipment and medium

Publications (2)

Publication Number Publication Date
CN112738550A CN112738550A (en) 2021-04-30
CN112738550B true CN112738550B (en) 2022-10-11

Family

ID=75588459

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910973444.6A Active CN112738550B (en) 2019-10-14 2019-10-14 Content data processing method and device, electronic equipment and medium

Country Status (1)

Country Link
CN (1) CN112738550B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115296858B (en) * 2022-07-12 2023-08-25 南京赛宁信息技术有限公司 Active defense gateway topology editor local storage method and system
CN115344585B (en) * 2022-08-03 2024-03-19 盐城天眼察微科技有限公司 Data version management method and device, storage medium and electronic equipment
CN116126877A (en) * 2023-01-09 2023-05-16 北京京投亿雅捷交通科技有限公司 A method and system for automatically updating and downgrading access to rail transit technical drawings
CN120371358B (en) * 2025-06-27 2025-09-16 济南浪潮数据技术有限公司 A data interaction method, device, equipment, medium and product during online upgrade

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671428A (en) * 1991-08-28 1997-09-23 Kabushiki Kaisha Toshiba Collaborative document processing system with version and comment management
CN110263284A (en) * 2013-01-30 2019-09-20 微软技术许可有限责任公司 Use the cooperation of multiple editing machines or each version of feature

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658659B2 (en) * 1999-12-16 2003-12-02 Cisco Technology, Inc. Compatible version module loading
EP2083354A1 (en) * 2008-01-22 2009-07-29 Amadeus S.A.S. Method and system for deploying non-backward compatible server versions in a client/server computing environment
US10534858B2 (en) * 2016-01-11 2020-01-14 Microsoft Technology Licensing, Llc. Document version of interest discoverability and persistence

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671428A (en) * 1991-08-28 1997-09-23 Kabushiki Kaisha Toshiba Collaborative document processing system with version and comment management
CN110263284A (en) * 2013-01-30 2019-09-20 微软技术许可有限责任公司 Use the cooperation of multiple editing machines or each version of feature

Also Published As

Publication number Publication date
CN112738550A (en) 2021-04-30

Similar Documents

Publication Publication Date Title
US11740891B2 (en) Providing access to a hybrid application offline
US11847438B2 (en) Offline capabilities for live applications in a cloud collaboration platform
CN109840429B (en) Smart contract deployment, invocation methods and devices
CN112738550B (en) Content data processing method and device, electronic equipment and medium
CN110262807B (en) Cluster creation progress log acquisition system, method and device
CN113127430B (en) Mirror image information processing method, mirror image information processing device, computer readable medium and electronic equipment
CN114564922A (en) Document editing method and device, computer equipment and storage medium
CN111338834B (en) Data storage method and device
WO2023280145A1 (en) Information citing method, system and apparatus, and electronic device
CN110674426B (en) Webpage behavior reporting method and device
CN113486116A (en) Data synchronization method and device, electronic equipment and computer readable medium
CN115167769B (en) Method, device and system for writing data
CN112463887A (en) Data processing method, device, equipment and storage medium
CN114661523B (en) Data backup method, device, program product, medium and electronic device
CN105653566B (en) A kind of method and device for realizing database write access
CN107526838B (en) Method and device for database cluster expansion
CN113760860B (en) Data reading method and device
CN111767495B (en) A method and system for synthesizing web pages
CN115687503A (en) Data synchronization method, device, equipment and storage medium between databases
CN113760841A (en) Method and device for realizing distributed lock
US8935294B2 (en) Minimizing computer resource usage when converting data types of a table column
CN112632016B (en) A file editing method and device
CN114722125A (en) Database transaction processing method, device, equipment and computer readable medium
CN119149522B (en) Data processing method and device based on distributed database and electronic equipment
CN113761075A (en) Method, apparatus, device, and computer-readable medium for switching databases

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant