CN112688995B - System migration method and device - Google Patents

System migration method and device Download PDF

Info

Publication number
CN112688995B
CN112688995B CN202011492762.XA CN202011492762A CN112688995B CN 112688995 B CN112688995 B CN 112688995B CN 202011492762 A CN202011492762 A CN 202011492762A CN 112688995 B CN112688995 B CN 112688995B
Authority
CN
China
Prior art keywords
migration
terminal device
terminal devices
period
terminal
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
CN202011492762.XA
Other languages
Chinese (zh)
Other versions
CN112688995A (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.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group 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 China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202011492762.XA priority Critical patent/CN112688995B/en
Publication of CN112688995A publication Critical patent/CN112688995A/en
Application granted granted Critical
Publication of CN112688995B publication Critical patent/CN112688995B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The embodiment of the application provides a system migration method and a system migration device, wherein the method comprises the following steps: in the process of migrating a service system from a source station to a Content Delivery Network (CDN) node, receiving access requests from a plurality of terminal devices, wherein the access requests are used for requesting access to the service system; determining a migration time period in which each of the plurality of terminal devices migrates from the source station to the CDN node, and in the same migration time period, intercepting an access request of a first terminal device of the plurality of terminal devices, and migrating the first terminal device to the CDN node, and routing an access request of a second terminal device to the source station. Therefore, the access requests of the terminal equipment can be smoothly transferred to the CDN node from the source station of the service system in batches and time intervals, and smooth transition is realized.

Description

System migration method and device
Technical Field
The present application relates to the field of computers, and more particularly, to a system migration method and apparatus.
Background
A Content Delivery Network (CDN) is a common technology in the internet at present. The CDN can distribute the content of the source station to the node closest to the user, so that the user can obtain the required content nearby, and the response speed and success rate of user access are improved. Therefore, the problem of access delay caused by factors such as distribution, bandwidth and server performance can be solved.
However, in the process of migrating the system from the source station to the CDN, the service of the system needs to be completely suspended, so that the user cannot access the system in the migration process.
Disclosure of Invention
The embodiment of the application provides a system migration method and device, aiming to reduce the influence of system migration on users.
In a first aspect, a method for system migration is provided, where the method includes: in the process of migrating a service system from a source station to a CDN node, receiving access requests from a plurality of terminal devices, wherein the access requests are used for requesting to access the service system; determining a migration period during which each of the plurality of terminal devices migrates from the source station to the CDN node; in the same migration period, an access request of a first terminal device of the plurality of terminal devices is intercepted, the first terminal device is migrated to the CDN node, and an access request of a second terminal device of the access requests of the plurality of terminal devices is routed to the source station.
Based on the above scheme, different migration periods are respectively determined for the plurality of terminal devices, and the plurality of terminal devices can be migrated from the source station to the CDN node in different migration periods, so that the plurality of terminal devices can be migrated from the source station to the CDN node in batches and at different periods, and smooth transition is achieved. In addition, in the migration process, the access request of the terminal device which is not migrated can be routed to the source station without suspending the service of the system, so that the user can still normally access the service system and is unaware of the system migration. Thus, overall, the influence on the user can be reduced. In addition, through smooth transition, the load which can be brought by a plurality of terminal devices accessing the source station at the same time in the peak period can be reduced.
Optionally, in determining a migration period during which each of the plurality of terminal devices migrates from the source station to the CDN node, the method further includes: determining N migration periods and the terminal device migrated in each migration period according to one or more of the following items: the number of the plurality of terminal devices, the migration proportion in each predefined migration time period, and the number of access requests of the terminal devices migrated in a predefined unit time; wherein N is greater than 1 and is an integer.
Optionally, the method further comprises: the terminal device to be migrated in each migration period is determined based on Internet Protocol (IP) addresses of the plurality of terminal devices.
Optionally, the method further includes determining, according to the number of the plurality of terminal devices and a predefined migration proportion in each migration period, N migration periods and an access request of the terminal device migrated in each period, and the method further includes: the last three bits of the IP addresses of the plurality of terminal devices are left for N, the access requests of the terminal devices corresponding to the IP addresses with the remainders from 0 to N-1 are sequentially distributed to the time periods from 0 to N-1 in the N migration time periods, and the terminal devices distributed to the time period N are migrated to the CDN node in the time period N; wherein N is more than or equal to 0 and less than or equal to N-1, and N is an integer.
Optionally, before the determining a migration period for each of the plurality of terminal devices to migrate from the source station to the CDN node, the method further includes: and extracting a source IP address from the access requests of the plurality of terminal devices, wherein the source IP address is the IP address of the access requests of the plurality of terminal devices.
Optionally, the method further comprises: for N traversing from 0 to N-1, the following steps are performed: in the time period n, sending an update package to the terminal device allocated to the time period n, where the update package is used to modify an access path of the service system from the source station to the CDN node; wherein N is an integer, N is greater than 1 and is an integer, and N represents the number of migration periods.
Optionally, the method further comprises: and if the migration fails in any period, routing the access request of the terminal equipment allocated to the migration period to the source station.
In a second aspect, a system migration apparatus is provided, which includes modules or units for implementing the system migration method of any one of the first aspect. It should be understood that the respective modules or units may implement the respective functions by executing the computer program.
In a third aspect, a system migration apparatus is provided, which includes a processor configured to execute the system migration method of any one of the first aspect.
The apparatus may also include a memory to store instructions and data. The memory is coupled to the processor, and the processor, when executing the instructions stored in the memory, may implement the method described in the first aspect above. The apparatus may also include a communication interface for the apparatus to communicate with other devices, which may be, for example, a transceiver, circuit, bus, module, or other type of communication interface.
In a fourth aspect, there is provided a computer-readable storage medium comprising instructions which, when executed on a computer, cause the computer to perform the method of any one of the first aspect and the first aspect.
In a fifth aspect, there is provided a computer program product comprising: a computer program (also referred to as code, or instructions), which when executed, causes a computer to perform the method of any of the first aspect and the first aspect.
It should be understood that the second aspect to the fifth aspect of the present application correspond to the technical solutions of the first aspect of the present application, and the beneficial effects achieved by the aspects and the corresponding possible implementations are similar and will not be described again.
Drawings
Fig. 1 is an application structure diagram of a system migration method provided by an embodiment of the present application;
FIG. 2 is a schematic diagram of a system migration apparatus that may be used to implement the system migration method provided in the embodiments of the present application;
fig. 3 and fig. 4 are schematic flow diagrams of a system migration method applicable to the embodiments of the present application;
fig. 5 is a schematic block diagram of a system migration apparatus suitable for the system migration method provided in the embodiment of the present application.
Detailed Description
The technical solution in the present application will be described below with reference to the accompanying drawings.
It should be understood that the terminal device mentioned in the embodiments of the present application may also be referred to as a terminal (terminal), a User Equipment (UE), a Mobile Station (MS), a Mobile Terminal (MT), etc. The terminal device may be a mobile phone (mobile phone), a smart tv, a wearable device, a tablet computer (Pad), a computer with a wireless transceiving function, a Virtual Reality (VR) terminal device, an Augmented Reality (AR) terminal device, a wireless terminal in industrial control (industrial control), a wireless terminal in self-driving (self-driving), a wireless terminal in remote surgery (remote medical supply), a wireless terminal in smart grid (smart grid), a wireless terminal in transportation safety (transportation safety), a wireless terminal in smart city (smart city), a wireless terminal in smart home (smart home), and so on. The embodiment of the present application does not limit the specific technology and the specific device form adopted by the terminal device. For ease of understanding, a brief description of several terms referred to in this application is provided below.
1. CDN: a new network content service system is built based on IP network, and provides content distribution and service based on efficiency requirement, quality requirement and content order of content access and application. In a broad sense, the CDN represents a network application service model with high quality, high efficiency and clear network order constructed based on a network.
In brief, the CDN is a strategically deployed overall system, and includes 4 requirements of distributed storage, load balancing, redirection of network requests, and content management, and the content management and global network traffic management are the core of the CDN. By determining the proximity of the end user and the server load, the CDN ensures that the content serves the end user's request in an extremely efficient manner.
In general, content services are based on cache servers, also called proxy caches, which are located at the edge of the network. Also, the proxy cache is a transparent mirror of the content provider origin server. Such an architecture enables CDN service providers to provide the best possible experience on behalf of their customers, i.e., content providers, to end users who are not tolerant of any delay in request response time.
2. Loading: is an average number of passes. The reason for the increase of the server load is generally that processes in an operable state are increased, and processes in an uninterruptible state are increased. The increase of the executable state generally means that resources of a Central Processing Unit (CPU) are insufficient, and the increase of the uninterruptible state mostly means that Input Output (IO) of a disk becomes a bottleneck.
It should be understood that in some cases, the traffic system may be loaded with servers due to server load problems, for example, in the case of a large number of end users simultaneously making requests to the system in a short period of time, the load may be balanced in view of using the CDN, or the traffic system may be migrated to the CDN platform in order to achieve the goals of distributed storage, load balancing, redirection of network requests, and content management.
Wherein, migration may include, for example, migration of one or more of: environment configuration, application content, files, big data, and databases.
Illustratively, before the system uses the CDN platform, the process of the service system responding to the access request sent by the terminal device is as follows:
a terminal user provides a domain name of a system to be accessed to a browser of a terminal device, an operating system inquires an IP address of the domain name to a local Domain Name Server (DNS), after the local DNS receives a request, a local cache is inquired first, if the local DNS has a record item, the local DNS directly returns the inquiry result to the terminal device, if the local cache does not have the record, the local DNS sends the request to a root DNS, then the root DNS returns an authorization record of the domain name to the local DNS, after the local DNS obtains the authorization DNS of the domain name, the local DNS continues to inquire the IP address of the domain name to the domain name authorization DNS, after the domain name authorization DNS inquires the domain name record, the local DNS responds to the local DNS, the local DNS returns the obtained domain IP address to the terminal device, after the terminal device obtains the domain IP address, the site server is accessed, and the site server responds to the access request of the terminal device, and returning the content to the terminal equipment.
Illustratively, the process of the system responding to the terminal device sending the access request after using the CDN platform is as follows:
the terminal user provides the browser of the terminal device with the domain name of the system to be accessed, the operation system inquires the IP address of the domain name to the local DNS, when the local DNS receives the request, the local cache is inquired first, if there is the entry, the local DNS returns the result of the query directly to the terminal device, if the record is not present in the local cache, the local DNS sends the request to the root DNS, then the root DNS returns the authorization record of the domain name to the local DNS, after the local DNS obtains the authorization DNS of the domain name, the domain name authority DNS is continuously queried for the IP address of the domain name, since the CDN adjusts the domain name resolution process, the resolution function library typically gets a Canonical Name (CNAME) record corresponding to the domain name, in order to obtain an actual IP address, the operating system needs to resolve the obtained CNAME domain name again to obtain the actual IP address; in the process, the used global load balancing domain name server carries out resolution, for example, a corresponding IP address is resolved according to the geographic position information, so that the terminal equipment can access nearby; the IP address of the CDN cache server is obtained through the analysis, and the browser sends an access request to the cache server after obtaining the actual IP address; according to the domain name to be accessed provided by the browser, the cache server obtains the actual IP address of the domain name through the special DNS analysis in a cache memory (cache), and then the cache server submits an access request to the actual IP address; after obtaining the content from the actual IP address, the cache server stores the content locally for later use, and returns the obtained data to the terminal equipment to complete the data service process.
In the comparison process of the two processing terminal device access requests, the CDN adds a Cache layer between the terminal device and the server, and routes the access request of the terminal device to the Cache layer by taking over the DNS to obtain data on the server of the source station of the system, thereby accelerating the access speed of the terminal device.
It should be understood that in the above two processes of processing an access request of a terminal device, domain name resolution can be understood as conversion of a domain name into an IP address. The IP address is a numeric address on the network that identifies the site, and in most cases, for simplicity, a domain name may be used in place of the IP address to identify the site address. The resolution of the domain name can be done by the DNS. The above two processes for processing the terminal device access request are only examples, and do not limit the embodiments of the present application at all.
For ease of understanding, a scenario applicable to the system migration method provided in the embodiment of the present application is briefly described below with reference to fig. 1. Fig. 1 is a schematic view of a scenario applicable to a system migration method provided in an embodiment of the present application.
For example, as shown in fig. 1, before using the system migration method, that is, when the service system is not migrated from the source station to the CDN, the access request sent by the terminal device is responded by the service system, and in the process of migrating the service system from the source station to the CDN node of the content delivery network, the system migration apparatus for implementing the system migration method functions as a jump board between the terminal device and the original service system or CDN, and routes and delivers the access request of different terminal devices to the original service system or CDN.
In the process of migrating the system from the source station to the CDN, the system needs to stop service, so that a user cannot access the CDN. In view of the above problem, the present application provides a system migration method, which can allocate a plurality of terminal devices to different migration time periods when access requests of the plurality of terminal devices are received, so as to implement smooth migration. And in the migration process, the access request of the migrated terminal device may be routed to the CDN, and the access request of the terminal device that is not migrated may still be routed to the source station, so that the user is unaware of the system migration.
It should be noted that, the migration of the service system from the source station to the CDN may specifically refer to the migration of an access path of the terminal device to the service system from the source station to the CDN. Thus, migrating a business system from a source to a CDN is much more likely than migrating a terminal device from a source to a CDN. Hereinafter, explanations of the same or similar descriptions are omitted for the sake of brevity.
Fig. 2 is a schematic diagram of a system migration apparatus that may be used to implement the system migration method provided in the embodiment of the present application. The system migration apparatus 200 will be described in detail below with reference to fig. 2.
As shown in fig. 2, a request receiving module 210, a request routing module 220, and a control management module 230 may be included in the system migration apparatus 200. The request receiving module 210 may receive all access requests sent by the terminal device to the service system, and may further extract an IP address of the terminal device access request from the received access requests; the control management module 230 may determine, based on the IP address of the terminal device extracted by the request receiving module 210, a migration time period for each terminal device to migrate from the source station to the CDN node, a migration proportion, a migration speed, and the like of the access request in each time period; the request routing module 220 routes and distributes the access request of the terminal device to the system source station and the CDN according to the migration period determined by the control management module 230 and the migration proportion, migration speed, and the like in each migration period.
It should be understood that the above modules are defined based on different functions, and do not necessarily exist in a separate form. In addition, fig. 2 is only an example, and the system migration apparatus may further include more other modules, which is not limited in this embodiment.
The system migration method provided by the embodiment of the present application will be described in detail below with reference to the accompanying drawings.
Fig. 3 is a schematic flowchart of a system migration method according to an embodiment of the present application. It should be understood that the method shown in fig. 3 may be executed by a system migration apparatus, which may be, for example, the system migration apparatus shown in fig. 2, or may be different from the system migration apparatus shown in fig. 2, and this is not limited in this embodiment of the application.
For convenience of understanding, the system migration method provided in the embodiment of the present application is described below by taking the system migration apparatus shown in fig. 2 as an example.
In step 310, access requests from a plurality of terminal devices are received.
Illustratively, the request receiving module 210 in fig. 2 may receive access requests issued by all terminal devices. Specifically, the end user can make an access request to the service system by inputting a domain name of the service system to be accessed in a browser of the terminal device.
In step 320, determining a migration period for each of the plurality of terminal devices to migrate from the source station to the CDN node; and
in step 330, the plurality of terminal devices are migrated from the source station to the CDN node based on the migration period for each of the plurality of terminal devices.
In order to avoid simultaneous migration of a plurality of terminal devices, a migration period may be determined for each terminal device. Wherein at least two terminal devices may be assigned to different migration periods. That is, in the same migration period, a first terminal device of the plurality of terminal devices may be migrated to the CDN node, and an access request of a second terminal device of the plurality of terminal devices may be routed to the source station. For example, the request receiving module 210 receives service requests from a first terminal device and a second terminal device, and the request routing module 220 may allocate the first terminal device to a first migration period and allocate the second terminal device to a second migration period, where the first migration period and the second migration period are two different periods.
As an example, the control management module 230 may be configured with a plurality of rules in advance, and one of the rules is selected to determine how to distribute the received access requests of the plurality of terminal devices based on the number of access of the terminal users, the load of the server, and other factors. The control management module 230 may send the rule to the request routing module 220, and the request routing module 220 determines how to distribute the received access requests of the plurality of terminal devices; alternatively, the control management module 230 may determine how to distribute the received access requests of the plurality of terminal devices, and then notify the request routing module 220. The embodiments of the present application do not limit this.
For example, when the server load is small and the access request of the terminal device is also small, the rule may be, for example: and directly migrating the terminal equipment sending the access request to the CDN node.
For another example, when the server load is high, if access requests of multiple terminal devices are received at the same time, the rule may be, for example: the terminal devices can be migrated to the CDN node in multiple batches and multiple time periods.
Further design can be made for multiple batches, multiple sessions, based on different load levels, different numbers of access requests. For example, a number of options can be devised, such as: 2 batches, 2 time periods; 4 batches, 4 time periods, etc. For the sake of brevity, this is not to be enumerated here.
One possible design is that, during peak hours, the transfer is performed in batches and in intervals based on the received access requests of the plurality of terminal devices; during off-peak hours, migration is performed directly based on the received access request of the terminal device.
The following description will take the example where the request routing module 220 determines N migration periods and the terminal device to be migrated in each migration period as an example.
For example, the request routing module 220 may determine N migration periods and the terminal device to be migrated in each migration period according to at least one of the number of terminal devices, a migration ratio in each migration period, and a migration speed according to a preset rule.
Wherein the number of terminal devices may be determined based on the number of received access requests. For example, the request receiving module 210 may extract the IP address of the terminal device based on the number of received access requests, and may determine the number of terminal devices based on different IP addresses.
The migration ratio in each migration period may be predefined. For example, it may be predefined that the migration rate in each migration period is 25%, that is, the terminal device migrated in each migration period accounts for 25% of the number of terminal devices. Wherein the migration period may be preset. For example, the length of the migration period may be preset to be predefined; for another example, the start time of the transition period may be predefined, and one possible design is to set the start time of the rush hour period as the start time of the transition period. It should be understood that the starting time of the migration period described herein refers to a starting time of batch-wise time-period migration performed on a plurality of terminal devices, and does not refer to a migration time of a system migrating from a source station to a CDN node. The embodiment of the present application does not limit the starting time for migrating the system from the source station to the CDN node.
The migration speed may specifically refer to the number of terminal devices that migrate within a predefined unit time. The unit time may be set to, for example, 1 minute, 5 minutes, or the like. The unit time may be set according to specific situations, and the unit time is not limited in the embodiments of the present application.
The request routing module 220 may determine the migration period N according to the number of the terminal devices, and then determine the terminal device to be migrated in each migration period according to the migration speed and/or the migration ratio in each migration period.
Wherein the migration speed and the migration proportion in each migration period may be mutually converted. For example, after the number of terminal devices is determined, the migration proportion in each migration period may be calculated according to the migration speed; alternatively, the migration speed may be calculated from the migration ratio in each migration period. Therefore, the request routing module 220 may determine the N transition periods and the number of terminal devices to be transitioned in each transition period according to the number of terminal devices and the transition speed, or according to the number of terminal devices and the transition ratio in each transition period.
Of course, the request routing module 220 may also determine the N migration periods and the number of terminal devices migrated in each migration period according to only any one of the number of terminal devices, the migration speed, or the migration ratio in each migration period.
For example, the number N of transition periods is determined according to the number of terminal devices, and then the plurality of terminal devices are equally allocated to the N periods. For another example, the number N of transition periods may be fixed, and the number of terminal devices to be transitioned in each transition period is controlled according to the transition speed or the transition proportion in each transition period. And the like, are not exemplified here.
After determining the number of terminal devices to be migrated in each migration period, the request routing module 220 may further determine the terminal devices to be migrated in each migration period.
In one possible implementation, the request routing module 220 may determine the migration period according to the IP address of the terminal device.
It should be understood that an IP address is a 32-bit identifier that is unique worldwide, assigned to each terminal device, router, etc. connected to the internet. The IP address is a hierarchical address structure, so that the IP addresses of the terminal devices, routers and the like connected to the internet are the same as the personal identification number and have unique identification, and the specific terminal device or router can be determined by obtaining the IP addresses of the terminal devices, routers and the like.
In the embodiment of the present application, the IP address of each terminal device may be extracted from the received access request. The IP address of each terminal device may be, for example, a source IP address carried in the access request sent by each terminal device.
Illustratively, the request routing module 220 may balance N according to the last three bits of the IP address of the terminal device, and allocate IP addresses with remainders of 0, 1, … …, and N-1 to periods 0 to N-1 of the N migration periods, respectively. The terminal device allocated to the time period n is migrated to the CDN node at the time period n; wherein N is more than or equal to 0 and less than or equal to N-1, and N is an integer. That is, the terminal device which is migrated to the CDN node by the request routing module 220 in the time period n is an example of the first terminal device, and the terminal device which is still routed to the source station by the request routing module 220 in the time period n is an example of the second terminal device. A procedure of determining the terminal device for each migration period from the IP address of the terminal device is described below with reference to fig. 4.
As shown in fig. 4, assuming that the peak period is 7:00 to 9:00, the above-mentioned period 0 to period 3 may be, for example: 4 time periods of 07:00-07:30, 07:30-08:00, 08:00-08:30, 08:30-09: 00.
And (4) the last three pairs 3 of the IP addresses of the terminal equipment are subjected to residue taking to obtain four groups of terminal equipment with the residues of 0, 1, 2 and 3 respectively. A group of terminal devices with a remainder of 0 (e.g., denoted as terminal device group #0) may be allocated to the migration period 0, a group of terminal devices with a remainder of 1 (e.g., denoted as terminal device group #1) may be allocated to the migration period 1, a group of terminal devices with a remainder of 2 (e.g., denoted as terminal device group #2) may be allocated to the migration period, and a group of terminal devices with a remainder of 3 may be allocated to the migration period 3 (e.g., denoted as terminal device group # 3).
It is understood that if the IP addresses of the terminal devices are randomly and uniformly distributed, 25% of the terminal devices may correspond to each time slot.
During the time period from 07:00 to 07:30 (i.e., time period 0), the request routing module 220 may migrate the terminal device in the terminal device group #0 to the CDN node, and still route the access request of the terminal device in the other terminal devices to the source station.
In a time period of 07:30-08:00 (i.e., time period 1), the request routing module 220 may migrate the terminal device in the terminal device group #1 to the CDN node, and if the terminal device in the terminal device group #0 has not been migrated in the previous time period, the terminal device may also be migrated to the CDN node in the time period, and the access request of the terminal device in the other terminal device is still routed to the source station.
In a period of 08:00 to 08:30 (i.e., period 2), the request routing module 220 may only migrate the terminal device in the terminal device group #2 to the CDN node, and if the terminal devices in the terminal device group #0 and the terminal device group #1 are not migrated in the previous period, they may also be migrated to the CDN node in the period, and the access requests of the terminal devices in other terminal device groups are still routed to the source station.
In a period of 08:30-09:00 (i.e., period 3), the request routing module 220 may migrate the terminal device in the terminal device group #3 to the CDN node, and if the terminal device in the other terminal device group is not migrated in the previous period, the terminal device may also be migrated to the CDN node in the period. Thereby, all the terminal devices in the terminal device group #1 to the terminal device #3 are routed to the CDN node.
It should be understood that, in the migration process, the access request of the terminal device that is not migrated is still routed to the source station, and the system service can be continuously accessed, and the response of the system server is not changed, and the user is unaware in the whole process.
Based on the system migration method, the terminal equipment can be migrated in batches and at different time periods in the peak time period, and the load of the server can be reduced.
It should be understood that the above description in connection with fig. 4 is only an example and should not constitute any limitation to the present application. The number of migration periods N, the number of terminal devices to be migrated in each migration period, and the like are not limited in the embodiment of the present application.
A possible implementation manner of migrating the first terminal device to the CDN is that, when receiving an access request from the first terminal device, the request routing module 220 intercepts the access request, or does not route the access request to the source station, but sends an update packet to the first terminal device, where the update packet may be used to modify an access path of the service system, and specifically, may modify a destination address of the access path from the source station to a CDN node, for example, modify an IP address of the source station to a domain name of the CDN node.
The first terminal device may send the access request again after installing the update package. At this time, the access request can directly reach the CDN node without passing through the route of the request routing module 220. The migration of the first terminal device from the source station to the CDN node is thereby completed.
For the terminal devices allocated to the N migration periods, migration from the source station to the CDN node can be achieved by traversing N from 0 to N-1, and performing the following steps.
And in the time interval n, intercepting the access request of the terminal equipment distributed to the time interval n, and sending an update package to modify the access path of the service system.
Specifically, the request routing module 220 may intercept, when receiving the access request in the period N, the access request of one or more terminal devices allocated to the migration in the period N, and send an update packet to the one or more terminal devices, that is, the terminal device request routing module 220 may traverse the period N from 0 to N-1 and send an update packet to the first terminal device, where the update packet may be used to modify an access path to the service system.
It should be understood that for some systems that provide services to the outside through IP addresses, when the system is migrated to the CDN, the resolution right of the domain name may be handed over to the global load balancing device of the CDN, and the content that needs to be delivered may also be injected into the CDN.
It can be understood that the terminal device can directly migrate from the access source station to the access CDN node only by receiving the update package, and in the whole process, the terminal user does not need to know what the specific domain name of the CDN is, so that the user is not perceived in the whole migration process.
In any period of time, the migrated terminal device may be observed, and if no error is found, migration of the terminal device may continue in the next migration period, that is, more terminal devices are allowed to be routed to the CDN node. If the migration fails or an error occurs, the migration is suspended, the terminal device where the access request is intercepted may resend the access request, and the resent access request may be routed to the source station, or the intercepted access request may be rerouted to the source station after retrying for a plurality of times. Other terminal devices which are not migrated can continue to be routed to the source station, that is, can continue to access the service. The terminal device that has been migrated to the CDN node can still continue to access the CDN node. In other words, in any migration period, if the migration fails, only the terminal device assigned to the migration in the migration period is affected, and the other terminal devices can still normally access the service system. Therefore, the number of affected terminal equipment can be controlled, and the coverage area is small.
And only a few terminal devices 'access requests are not responded when the migration fault occurs, and when the affected terminal device can send the access request again at any time after the migration fault occurs, the access request of the terminal device can be directly routed to the source station, and the processing process of the source station to the terminal device's access request cannot be changed. Therefore, the risk can be controlled in the whole migration process.
For example, if a terminal device requests the routing module 220 to have a fault or an error in the process of routing a certain terminal device (such as the first terminal device) to the CDN node in the time period n, the terminal device requests the routing module 220 to immediately stop routing the first terminal device to the CDN node at the time after the fault occurs in the time period n, and the request routing module 220 may route the terminal device that has sent the access request to the source station at any time after the fault occurs in the time period n, thereby ending the migration process of the system to the CDN node.
In other words, in any period, if the system migration fails, the terminal device request routing module 220 does not send the update package to the first terminal device any longer in any subsequent period, and after the time of failure, access requests of all users are directly routed to the original service system.
Based on the system migration method, different migration periods are respectively determined for the plurality of terminal devices, and the plurality of terminal devices can be migrated from the source station to the CDN node in the different migration periods, so that access requests of the plurality of terminal devices can be migrated from the source station to the CDN node in batches and at different periods, and smooth transition is achieved. And through smooth transition, the load which can be brought by a plurality of terminal equipment accessing the source station at the same time in the peak period can be reduced. On the other hand, in the migration process, the access request of the terminal device to be migrated may be routed to the CDN node, and the access request of the terminal device not to be migrated may be routed to the source station, without suspending the service of the system, so that the user may still normally access the service system, and there is no perception of system migration. And even if migration failure or error occurs, returning to the source station. Overall, the impact on the user can be reduced. Moreover, by carrying out batch and time-sharing migration on the terminal equipment, the load of the server can be reduced on one hand, and a rollback mechanism is provided on the other hand, so that higher compromise efficiency can be obtained between the server and the terminal equipment.
Fig. 5 is another schematic block diagram of a system migration apparatus suitable for the system migration method provided in the embodiment of the present application. The apparatus may be used to implement the functions of the request receiving module 210, the request routing module 220, and the control management module 230 in the above-described method. Wherein the apparatus may be a system-on-a-chip. In the embodiment of the present application, the chip system may be composed of a chip, and may also include a chip and other discrete devices.
As shown in fig. 5, the system migration apparatus 500 may include at least one processor 510 for implementing the functions of system migration in the method provided by the embodiment of the present application. For example, the processor 510 may be configured to receive access requests from a plurality of terminal devices in a process of migrating a service system from a source station to a content delivery network CDN node, determine a migration period in which an access request of each of the plurality of terminal devices migrates from the source station to the CDN node, intercept an access request of a first terminal device of the plurality of terminal devices in the same migration period, migrate the first terminal device to the CDN node, and route an access request of a second terminal device of the access requests of the plurality of terminal devices to the source station. For details, reference is made to the detailed description in the method example, which is not repeated herein.
The system migration apparatus 500 may also include at least one memory 520 for storing program instructions and/or data. The memory 520 is coupled to the processor 510. The coupling in the embodiments of the present application is an indirect coupling or a communication connection between devices, units or modules, and may be an electrical, mechanical or other form for information interaction between the devices, units or modules. The processor 510 may operate in conjunction with the memory 520. Processor 510 may execute program instructions stored in memory 520. At least one of the at least one memory may be included in the processor.
The system migration apparatus 500 may also include a communication interface 530 for communicating with other devices via a transmission medium so that the apparatus used in the system migration apparatus 500 may communicate with other devices. Illustratively, the other device may be a terminal device as described above. The communication interface 530 may be, for example, a transceiver, an interface, a bus, a circuit, or a device capable of performing a transceiving function. Processor 510 may utilize communication interface 530 to transceive data and/or information and to implement the method described in the corresponding embodiment of fig. 3 for migrating a business system from a source station to a CDN node.
The specific connection medium between the processor 510, the memory 520 and the communication interface 530 is not limited in the embodiments of the present application. In fig. 5, the processor 510, the memory 520, and the communication interface 530 are connected by a bus 540. The bus 540 is shown in fig. 5 by a thick line, and the connection between other components is merely illustrative and not intended to be limiting. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 5, but this is not intended to represent only one bus or type of bus.
It should be understood that the division of the units in the embodiments of the present application is illustrative, and is only one logical function division, and there may be other division manners in actual implementation. In addition, functional units in the embodiments of the present application may be integrated into one processor, may exist alone physically, or may be integrated into one module by two or more units. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The present application also provides a computer-readable storage medium having stored thereon a computer program (also referred to as code, or instructions). When executed, the computer program causes the electronic device to perform the method of any of the embodiments shown in fig. 3.
The present application further provides a computer program product, the computer program product comprising: a computer program (also referred to as code, or instructions), which when executed, causes a computer to perform the method of any of the embodiments shown in fig. 3.
It should be understood that the processor in the embodiments of the present application may be an integrated circuit chip having signal processing capability. In implementation, the steps of the above method embodiments may be performed by integrated logic circuits of hardware in a processor or instructions in the form of software. The processor may be a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, or discrete hardware components. The various methods, steps, and logic blocks disclosed in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in a memory, and a processor reads information in the memory and completes the steps of the method in combination with hardware of the processor.
It will also be appreciated that the memory in the embodiments of the subject application can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. The non-volatile memory may be a read-only memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an electrically Erasable EPROM (EEPROM), or a flash memory. Volatile memory can be Random Access Memory (RAM), which acts as external cache memory. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), double data rate SDRAM, enhanced SDRAM, SLDRAM, Synchronous Link DRAM (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
As used in this specification, the terms "unit," "module," and the like are intended to refer to a computer-related entity, either hardware, firmware, a combination of hardware and software, or software in execution.
Those of ordinary skill in the art will appreciate that the various illustrative logical blocks and steps (step) described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application. In the several embodiments provided in the present application, it should be understood that the disclosed apparatus, device and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
In the above embodiments, the functions of the functional units may be fully or partially implemented by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions (programs). The procedures or functions described in accordance with the embodiments of the present application are generated in whole or in part when the computer program instructions (programs) are loaded and executed on a computer. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (8)

1. A method of system migration, the method comprising:
in the process of migrating a service system from a source station to a Content Delivery Network (CDN) node, receiving access requests from a plurality of terminal devices, wherein the access requests are used for requesting to access the service system;
determining a migration period during which each of the plurality of terminal devices migrates from the source station to the CDN node; in the same migration period, an access request of a first terminal device of the plurality of terminal devices is intercepted, the first terminal device is migrated to the CDN node, and an access request of a second terminal device of the access requests of the plurality of terminal devices is routed to the source station;
the determining a migration period for each of the plurality of terminal devices to migrate from the source station to the CDN node includes:
determining N migration periods and the terminal device migrated in each migration period according to one or more of the following items: the number of the plurality of terminal devices, a migration proportion and a migration speed in each predefined migration time period; wherein N is greater than 1 and is an integer;
for N traversing from 0 to N-1, the following steps are performed:
in the time period n, sending an update package to the terminal device allocated to the time period n, where the update package is used to modify an access path of the service system from the source station to the CDN node;
wherein N is an integer, N is greater than 1 and is an integer, and N represents the number of migration periods.
2. The method of claim 1, wherein the terminal device being migrated in each migration period is determined based on internet protocol, IP, addresses of the plurality of terminal devices.
3. The method of claim 2, wherein determining N transition periods and the terminal devices to be transitioned in each period based on the number of the plurality of terminal devices and a predefined transition ratio in each transition period comprises:
the last three digits of the IP addresses of the terminal devices are left for N, the terminal devices corresponding to the IP addresses with the remainders from 0 to N-1 are sequentially allocated to the time periods from 0 to N-1 in the N migration time periods, and the terminal devices allocated to the time period N are migrated to the CDN node in the time period N; wherein N is more than or equal to 0 and less than or equal to N-1, and N is an integer.
4. The method of claim 2 or 3, wherein prior to the determining a migration period for each of the plurality of end devices to migrate from the source station to the CDN node, the method further comprises:
and extracting a source IP address from the access requests of the plurality of terminal devices, wherein the source IP address is the IP address of the access requests of the plurality of terminal devices.
5. The method of any of claims 1 to 4, further comprising:
and if the migration fails in any period, routing the access request of the terminal equipment allocated to the migration period to the source station.
6. A system migration apparatus, comprising means for implementing the method of any one of claims 1 to 5.
7. A system migration apparatus comprising a processor configured to perform the method of any one of claims 1 to 5.
8. A computer-readable storage medium comprising instructions that, when executed on a computer, cause the computer to perform the method of any of claims 1 to 5.
CN202011492762.XA 2020-12-16 2020-12-16 System migration method and device Active CN112688995B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011492762.XA CN112688995B (en) 2020-12-16 2020-12-16 System migration method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011492762.XA CN112688995B (en) 2020-12-16 2020-12-16 System migration method and device

Publications (2)

Publication Number Publication Date
CN112688995A CN112688995A (en) 2021-04-20
CN112688995B true CN112688995B (en) 2021-12-14

Family

ID=75448733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011492762.XA Active CN112688995B (en) 2020-12-16 2020-12-16 System migration method and device

Country Status (1)

Country Link
CN (1) CN112688995B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114490566B (en) * 2021-12-10 2024-01-30 苏州浪潮智能科技有限公司 Cluster data migration method and device, computer equipment and storage medium
CN116684468B (en) * 2023-08-02 2023-10-20 腾讯科技(深圳)有限公司 Data processing method, device, equipment and storage medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103532817A (en) * 2013-10-12 2014-01-22 无锡云捷科技有限公司 CDN (content delivery network) dynamic acceleration system and method
CN104902006A (en) * 2015-04-16 2015-09-09 华为技术有限公司 Content access method, content distribution network base station of wireless access network and core content distribution network device
CN104954219A (en) * 2014-03-27 2015-09-30 北京奇虎科技有限公司 CDN (Content Delivery Network) access path optimization method, device and system
CN107645525A (en) * 2016-07-21 2018-01-30 阿里巴巴集团控股有限公司 Detection processing, dispatching method and related device, the node of content distributing network
CN108600088A (en) * 2018-04-16 2018-09-28 成都医云科技有限公司 Data processing method and device
CN110858844A (en) * 2018-08-22 2020-03-03 阿里巴巴集团控股有限公司 Service request processing method, control method, device, system and electronic equipment
CN111181849A (en) * 2018-11-09 2020-05-19 北京嘀嘀无限科技发展有限公司 Return source path determining method, determining device, computer equipment and storage medium
CN111355612A (en) * 2020-02-28 2020-06-30 中国工商银行股份有限公司 CDN node emergency processing method and system for source station fault
CN111936973A (en) * 2018-06-29 2020-11-13 英特尔公司 Techniques for providing efficient migration of services at cloud edge

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011157173A2 (en) * 2011-06-03 2011-12-22 华为技术有限公司 Route decision method, content delivery apparatus and content delivery network interconnection system
US11349912B2 (en) * 2016-11-29 2022-05-31 Level 3 Communications, Llc Cross-cluster direct server return in a content delivery network (CDN)

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103532817A (en) * 2013-10-12 2014-01-22 无锡云捷科技有限公司 CDN (content delivery network) dynamic acceleration system and method
CN104954219A (en) * 2014-03-27 2015-09-30 北京奇虎科技有限公司 CDN (Content Delivery Network) access path optimization method, device and system
CN104902006A (en) * 2015-04-16 2015-09-09 华为技术有限公司 Content access method, content distribution network base station of wireless access network and core content distribution network device
CN107645525A (en) * 2016-07-21 2018-01-30 阿里巴巴集团控股有限公司 Detection processing, dispatching method and related device, the node of content distributing network
CN108600088A (en) * 2018-04-16 2018-09-28 成都医云科技有限公司 Data processing method and device
CN111936973A (en) * 2018-06-29 2020-11-13 英特尔公司 Techniques for providing efficient migration of services at cloud edge
CN110858844A (en) * 2018-08-22 2020-03-03 阿里巴巴集团控股有限公司 Service request processing method, control method, device, system and electronic equipment
CN111181849A (en) * 2018-11-09 2020-05-19 北京嘀嘀无限科技发展有限公司 Return source path determining method, determining device, computer equipment and storage medium
CN111355612A (en) * 2020-02-28 2020-06-30 中国工商银行股份有限公司 CDN node emergency processing method and system for source station fault

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于CDN的网站访问加速技术研究;杨林海;《江西科学》;20200415;全文 *

Also Published As

Publication number Publication date
CN112688995A (en) 2021-04-20

Similar Documents

Publication Publication Date Title
US10374955B2 (en) Managing network computing components utilizing request routing
US10356097B2 (en) Domain name system and method of operating using restricted channels
CN109889621B (en) Configuration method and device of virtual private cloud service
EP2933986B1 (en) Computer-implemented method and computer program product for processing named entity queries using a cached functionality in a domain name system
US9444759B2 (en) Service provider registration by a content broker
US9712422B2 (en) Selection of service nodes for provision of services
WO2021057889A1 (en) Data processing method and apparatus, electronic device, and storage medium
US20120290724A1 (en) System and method for network redirection
CN112688995B (en) System migration method and device
EP3422672B1 (en) Routing method and device
KR20110055392A (en) User-based dns server access control
CN101501669A (en) Domain name resolution resource allocation
JP2016007054A (en) Method for accessing content in network and system adapted to the same
US10812442B1 (en) Intelligent redirector based on resolver transparency
US8868756B1 (en) Sticky routing
US11431765B2 (en) Session migration—based scheduling method and server
WO2014075450A1 (en) Resource download method, service server and cellular phone client
JP5526015B2 (en) Gateway system, gateway device, and load balancing method
US10243920B1 (en) Internet protocol address reassignment between virtual machine instances
CN112866432B (en) Domain name resolution method, system, electronic equipment and storage medium
CN109862134B (en) Lease time configuration method and system of IP address and DHCP client
US9363665B1 (en) Targeting insertion work-around for long term evolution (LTE) path
JP6298245B2 (en) Relay device, DNS server, communication system including them, DNS server communication program, and relay device communication program
CN112565158B (en) Data access method, device, system, electronic equipment and computer readable medium
CN113452539B (en) Source station switching method and device, electronic equipment and storage medium

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