WO2023142924A1 - 电子地图运维方法、电子地图数据使用方法及服务系统 - Google Patents

电子地图运维方法、电子地图数据使用方法及服务系统 Download PDF

Info

Publication number
WO2023142924A1
WO2023142924A1 PCT/CN2023/070400 CN2023070400W WO2023142924A1 WO 2023142924 A1 WO2023142924 A1 WO 2023142924A1 CN 2023070400 W CN2023070400 W CN 2023070400W WO 2023142924 A1 WO2023142924 A1 WO 2023142924A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
electronic map
server cluster
cloud server
virtual cloud
Prior art date
Application number
PCT/CN2023/070400
Other languages
English (en)
French (fr)
Inventor
胡博诚
Original Assignee
京东方科技集团股份有限公司
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 京东方科技集团股份有限公司 filed Critical 京东方科技集团股份有限公司
Publication of WO2023142924A1 publication Critical patent/WO2023142924A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Definitions

  • the present disclosure relates to the field of computer technology, in particular to an electronic map operation and maintenance method, an electronic map data usage method, and an electronic map service system.
  • the original electronic map is generated by mapping software and uploaded to the map producer, and then the map producer can develop based on the original electronic map and publish it to the server.
  • the released new version of the electronic map will directly replace the server The old version of the electronic map in .
  • the present disclosure provides an electronic map operation and maintenance method, which is applied to an electronic map service system.
  • the electronic map service system includes a back-end development device and a virtual cloud server cluster, and the back-end development device and the virtual cloud A server cluster communication connection, the method includes:
  • the back-end development equipment obtains the target electronic map data to be updated
  • the back-end development equipment sequentially generates image data corresponding to different development stages of the target electronic map data
  • the back-end development equipment sequentially releases each of the mirror data to the virtual cloud server cluster, wherein the mirror data of the last development stage in each of the mirror data constitutes a new version of electronic map data, and each of the mirror data The mirror data other than the mirror data in the last development stage constitute the processing data of the old version of the electronic map;
  • the virtual cloud server cluster generates identification information corresponding to each image data, where the identification information is used to distinguish different image data.
  • said sequentially generating image data of different development stages corresponding to said target electronic map data includes:
  • the branch data of the different development stages include development branch data, test branch data and pre-release branch data
  • the mirror data of the different development stages include the development environment electronic map data image, the test environment electronic map data image and Production environment electronic map data mirroring.
  • publishing each of the image data to the virtual cloud server cluster includes:
  • the image data is released to the virtual cloud server cluster.
  • the branch data of the different development stages are all stored in the project code repository of the back-end development device, the image data of the different development stages include the storage address of the project code repository, and the image The branch name corresponding to the data;
  • the generation of identification information corresponding to each of the image data includes:
  • the current time stamp and the historical time stamp of generating the identification information last time, determine the current time stamp of generating the identification information this time;
  • the determining the current time stamp of generating the identification information according to the current time stamp and the historical time stamp of the last generation of the identification information includes:
  • the latest second timestamp is determined as the current timestamp for generating the identification information this time.
  • the determining, according to the current time stamp and the historical time stamp of the last generation of the identification information, before the current time stamp of the generation of the identification information further includes:
  • determining the latest second timestamp as the current timestamp for generating the identification information this time includes:
  • the latest second timestamp is determined as the current timestamp for generating the identification information this time.
  • determining the latest second timestamp as the current timestamp for generating the identification information this time includes:
  • the first time stamp is greater than the historical time stamp, set the current sequence number to 0, and determine the latest second time stamp as the current time stamp for generating the identification information this time.
  • the current first time stamp is less than the historical time stamp of the last generation of the identification information.
  • the generating a second value according to the storage address of the project code warehouse and the branch name corresponding to the image data includes:
  • the combination or operation of the first value and the second value to obtain the identification information corresponding to the mirror image data includes:
  • the identification information corresponding to each of the image data after generating the identification information corresponding to each of the image data, it further includes:
  • a corresponding data processing interface is configured for each mirrored data, wherein the data processing interface is used to add data, delete data, modify data, and search data for the mirrored data corresponding to the data processing interface.
  • the present disclosure also provides a method for using electronic map data, which is applied to the electronic map service system in the electronic map operation and maintenance method described in the first aspect above, and the electronic map service system also includes a business server cluster, so The virtual cloud server cluster is communicatively connected to the service server cluster, and the method is used to use the mirror image data obtained through the electronic map operation and maintenance method described in the first aspect above, and the method includes:
  • the service server cluster receives the electronic map download request sent by the user terminal
  • the service server cluster sends an acquisition request for the new version of the electronic map data to the virtual cloud server cluster in response to the electronic map download request;
  • the virtual cloud server cluster sends the new version of the electronic map data to the service server cluster in response to the acquisition request;
  • the service server cluster sends the new version of the electronic map data to the user terminal.
  • the method also includes:
  • the service server cluster detects whether the virtual cloud server cluster has an electronic map data update by polling the virtual cloud server cluster;
  • the new version of the electronic map data is sent to the service server cluster;
  • the service server cluster When the service server cluster receives the new version of the electronic map data, it sends a prompt message to the user terminal, wherein the prompt message is used to prompt the terminal user to download the new version of the electronic map data to update to the latest electronic map.
  • the electronic map service system further includes a reverse proxy server cluster, and the service server cluster communicates with the user terminal through the reverse proxy server cluster.
  • the service server cluster receiving the electronic map download request sent by the user terminal includes: the reverse proxy server cluster receiving the electronic map download request sent by the user terminal; the reverse proxy server cluster according to a preset schedule A mechanism for dispatching the electronic map download request to a target service server in the service server cluster; the target service server receives the electronic map download request;
  • the service server cluster sends an acquisition request for the new version of the electronic map data to the virtual cloud server cluster, including: the target service server responds to the electronic map download request, sending The virtual cloud server cluster sends an acquisition request for the new version of the electronic map data;
  • the service server cluster sending the new version of the electronic map data to the user terminal includes: the target service server sending the new version of the electronic map data to the reverse proxy server cluster; the reverse proxy server cluster Sending the new version of the electronic map data to the user terminal.
  • the method also includes:
  • the business server cluster sends a big data service request to the virtual cloud server cluster
  • the virtual cloud server cluster acquires required related data from at least one of the image data in response to the big data service request;
  • the virtual cloud server cluster performs data processing on the relevant data according to the big data service request, and obtains a processing result
  • the virtual cloud server cluster sends the processing result to the service server cluster.
  • obtaining required related data from at least one of the image data includes:
  • Responding to the big data service request obtain required related data from at least one of the mirrored data through the address and port of the mirrored data in the local area network to which the virtual cloud server cluster belongs.
  • the performing data processing on the related data includes:
  • a visual chart is generated.
  • the present disclosure also provides an electronic map service system, including a back-end development device and a virtual cloud server cluster, and the back-end development device is communicatively connected to the virtual cloud server cluster;
  • the back-end development device is configured to obtain target electronic map data to be updated; sequentially generate mirror data corresponding to different development stages of the target electronic map data; and sequentially publish each of the mirror data to the virtual cloud server cluster , wherein, the mirror data of the last development stage in each of the mirror data constitutes a new version of electronic map data, and the other mirror data of each of the mirror data except the mirror data of the last development stage constitute an old version of electronic map data.
  • map processing data
  • the virtual cloud server cluster is configured to generate identification information corresponding to each image data, wherein the identification information is used to distinguish different image data.
  • the electronic map service system further includes a business server cluster, and the virtual cloud server cluster is communicatively connected to the business server cluster;
  • the business server cluster is configured to send a computing service request to the virtual cloud server cluster
  • the virtual cloud server cluster is further configured to, in response to the computing service request, acquire relevant data required for computing from at least one of the image data; perform data analysis and processing on the relevant data according to the computing service request , to obtain an analysis result; and send the analysis result to the service server cluster.
  • the electronic map service system further includes a reverse proxy server cluster, the service server cluster includes a plurality of service servers, and the reverse proxy server cluster is communicatively connected to each of the service servers;
  • the reverse proxy server cluster is configured to schedule the request sent by the user terminal to one of the service servers in the service server cluster according to a preset scheduling mechanism.
  • FIG. 1 shows a flow chart of steps of an electronic map operation and maintenance method according to an embodiment of the present disclosure
  • FIG. 2 shows a block diagram of an electronic map service system according to an embodiment of the present disclosure
  • FIG. 3 shows a flow chart of steps of another electronic map operation and maintenance method according to an embodiment of the present disclosure
  • FIG. 4 shows a flowchart of electronic map operation and maintenance according to an embodiment of the present disclosure
  • FIG. 5 shows a flow chart of generating a first value according to an embodiment of the present disclosure
  • FIG. 6 shows another flow chart for generating a first value according to an embodiment of the present disclosure
  • Fig. 7 shows a flow chart of generating a unique ID according to an embodiment of the present disclosure
  • FIG. 8 shows a flowchart of steps of a method for using electronic map data according to an embodiment of the present disclosure
  • FIG. 9 shows a block diagram of another electronic map service system according to an embodiment of the present disclosure.
  • FIG. 10 shows a flow chart of updating electronic map data in a user terminal according to an embodiment of the present disclosure
  • Fig. 11 shows a block diagram of another electronic map service system according to an embodiment of the present disclosure.
  • Fig. 12 shows a flow chart of providing big data services according to an embodiment of the present disclosure.
  • the electronic map service system 100 includes a back-end development device 10 and a virtual A cloud server cluster 20, wherein the backend development device 10 is communicatively connected to the virtual cloud server cluster 20.
  • the backend development device 10 may specifically be a terminal or other equipment used by electronic map developers to develop the backend of the electronic map, which is not specifically limited in this embodiment of the present disclosure. It can be understood that, in the embodiment of the present disclosure, the backend development device 10 may include at least one device.
  • the virtual cloud server cluster 20 is a server cluster that can provide cloud services, providing a virtualized environment, wherein the virtual cloud server cluster 20 can provide cloud services based on multiple physical servers.
  • the method includes the following steps:
  • Step 101 the back-end development equipment obtains the target electronic map data to be updated.
  • the original electronic map can be drawn through a map editor according to the actual drawing of the building, and subsequent development of related functions needs to be carried out on the basis of the original electronic map, such as identifying Bluetooth beacons and other positioning Therefore, the device uses the original electronic map as the target electronic map data to be updated.
  • the back-end development device can draw the original electronic map through the map editor according to the actual drawing of the building.
  • the original electronic map can also be sent to the back-end development after drawing by other devices or platforms. equipment, which is not limited in the embodiments of the present disclosure.
  • the target electronic map data may specifically include vector data, road network data, and location data of some positioning devices (such as Bluetooth beacons).
  • the area indicated by the target electronic map data may include at least part of the indoor area and/or at least part of the outdoor area, which is not limited in this embodiment of the present disclosure.
  • Step 102 the back-end development equipment sequentially generates image data corresponding to different development stages of the target electronic map data.
  • the back-end development equipment can develop the target electronic map data in three stages, which are the preliminary development stage, the testing stage and the pre-release stage.
  • the target electronic map can be developed with related functions such as target identification and regional integration.
  • the testing stage After the development is completed, it enters the testing stage; in the testing stage, the target electronic map can be functionally tested.
  • the pre-release stage After the test is passed, it enters the pre-release stage; in the pre-release stage, redundant data deletion and final verification can be performed on the target electronic map data.
  • the data obtained in this stage can be constructed into mirror data, so that three mirror data can be obtained.
  • Step 103 The back-end development equipment releases each image data to the virtual cloud server cluster in turn, wherein the image data of the last development stage in each image data constitutes a new version of electronic map data, and the image data of the last development stage is excluded from each image data Other image data other than the data constitute the processing data of the old version of the electronic map.
  • the image data can be released to the virtual cloud server cluster.
  • the image data corresponding to the pre-release stage is the electronic map data obtained based on the actual application production environment. Therefore, the image data of the last development stage in each image data, that is, the image data obtained in the pre-release stage, constitutes the new version The electronic map data can then be provided to the user terminal for use.
  • the image data obtained in the preliminary development stage records which functions have been developed on the target electronic map
  • the image data obtained in the testing stage records what kind of functional tests have been carried out on the target electronic map. Therefore, all image data except the last development stage
  • the mirror data other than the mirror data of the original version that is, the mirror data obtained in the preliminary development stage and the mirror data obtained in the test stage, constitute the processing data of the old version of the electronic map.
  • the processing data of the old version of the electronic map and the data of the new version of the electronic map are kept in the virtual cloud server cluster, so that it can be used in the virtual
  • the cloud server cluster maintains the historical electronic map data.
  • Historical electronic map data is very important to the improvement of electronic map services. Through statistical analysis of historical electronic map data, electronic map services can be optimized and user experience improved.
  • the processing data of the old version of the electronic map and the data of the new version of the electronic map are kept in the virtual cloud server cluster, so that the rollback of the old version can be realized when there is a problem with the newly released new version of the electronic map data, thereby avoiding the new version of the electronic map data.
  • the embodiments of the present disclosure can reduce the development cost and improve the user experience by maintaining the processing data of the old version of the electronic map.
  • Step 104 The virtual cloud server cluster generates identification information corresponding to each image data, wherein the identification information is used to distinguish different image data.
  • corresponding identification information can be generated for the image data in each development stage, so that each image data can be distinguished through the unique identification information, and the distinction between the old and new versions of the electronic map data is realized. Differentiation of data obtained at different development stages.
  • the image data of each development stage is distinguished by different identification information, so that when a problem occurs in the new version of the electronic map, it is convenient to find out which development stage has the problem, and for different development stages The mirrored data is repaired.
  • the embodiment of the present disclosure may adopt a clustered server architecture.
  • the clustered server has a stronger fault recovery capability, and can switch related services of a server that has a downtime failure to other servers in time.
  • the historical electronic map data of each version can be distributed and stored by different servers in the cluster, and the mirror data can be identified by unique identification information within the cluster. In this way, when a certain server appears When there is a downtime failure and data and related services need to be migrated to other servers, the unique identification information within the cluster can ensure that the migrated mirror data and the original mirror data in the server can be distinguished in the migrated server .
  • the back-end development device first obtains the target electronic map data to be updated, then sequentially generates mirror data corresponding to different development stages of the target electronic map data, and publishes each mirror data to the virtual cloud server cluster in sequence, Among them, the mirror data of the last development stage in each mirror data constitutes the new version of electronic map data, and the other mirror data in each mirror data constitutes the processing data of the old version of electronic map, and then the virtual cloud server cluster can generate the identification corresponding to each mirror data Information to distinguish different image data.
  • the old version of the electronic map processing process data can be retained, and the unique identification information is used to distinguish each image data, realizing the historical electronic map Data maintenance and management, and provides a basis for version rollback.
  • FIG. 3 shows a flow chart of steps of another electronic map operation and maintenance method according to an embodiment of the present disclosure. Before describing the method, some related content will be introduced first.
  • the virtual cloud server cluster can be a K8S cluster.
  • the K8S cluster is an open source container cluster management system that provides functions such as application deployment, maintenance, and expansion mechanisms, and can be used to manage multiple hosts in the cloud platform. For containerized applications, the K8S cluster can make the containerized deployment of applications simple and efficient.
  • Docker is an open source application container engine that allows developers to package their applications and dependencies into a portable container, and then publish them to computers with operating systems such as Linux and Windows, or to virtualization such as K8S clusters environment.
  • the method includes the following steps:
  • Step 201 the back-end development equipment obtains the target electronic map data to be updated.
  • step 101 For an implementation manner of this step, reference may be made to step 101 in the foregoing embodiment.
  • Step 202 The back-end development device sequentially generates branch data of different development stages corresponding to the target electronic map data, wherein the branch data of different development stages includes development branch data, test branch data and pre-release branch data.
  • the data obtained in the preliminary development stage is the development branch data
  • the data obtained in the testing stage is the test branch data
  • the data obtained in the pre-release stage is the pre-release branch data
  • the branch data in different development stages are all Stored in the project code repository of the backend development facility.
  • different development projects correspond to different project code warehouses, and different project code warehouses have different storage addresses in the backend.
  • Step 203 After each branch data is generated by the back-end development device, the branch data is packaged into a process file.
  • the back-end development equipment after the back-end development equipment generates the development branch data, it can be submitted to the test branch, and the development branch data is packaged as a development process file; after the back-end development equipment is tested and the test branch data is generated, it can be submitted to the pre-release branch , and package the test branch data into a test process file; after the back-end development device generates the pre-release branch data, it can package the pre-release branch data into a pre-release process file.
  • the back-end development device can package the branch data through the mvn clean package command for the process file.
  • Step 204 The back-end development device constructs the process file as image data, wherein the image data of different development stages includes the image of the electronic map data of the development environment, the image of the electronic map data of the test environment, and the image of the electronic map data of the production environment.
  • the back-end development equipment can construct the development process file as the mirror data of the development environment electronic map (mirror data is also called mirror image), construct the test process file as the mirror data of the test environment electronic map, and construct the development process file as the production environment Electronic map mirror data.
  • image data can be created by writing and configuring a Dockerfile script, and then executing the docker build command.
  • docker will find the Dockerfile script file and create a docker image according to the instructions in the Dockerfile script file.
  • the Dockerfile script usually includes the following four parts: basic image information, maintainer information, image operation instructions, and instructions executed when the container starts.
  • the basic image can be the official basic image provided by docker, such as nodejs image, java image, mongodb image, nginx image, etc., or a basic image provided by a third party;
  • the maintainer is the maintainer of the process file;
  • mirror operation instructions Including instructions for copying process files to a certain directory of the container, instructions for specifying the directory to be operated as this directory, instructions for creating a mirror image, and instructions for exposing the external port of the container, etc.
  • the electronic map data image of the development environment, the electronic map data image of the test environment, and the electronic map data image of the production environment can all be constructed in the above manner.
  • the automatic image construction of the electronic map operation and maintenance process is realized, which improves the deployment efficiency of electronic map applications, saves labor costs, and facilitates data management.
  • Step 205 After each image data is constructed by the back-end development device, the image data is released to the virtual cloud server cluster.
  • the back-end development equipment constructs the image of the electronic map data of the development environment, it can publish the image of the electronic map data of the development environment to the virtual cloud server cluster;
  • the environmental electronic map data image is released to the virtual cloud server cluster; after the back-end development equipment builds the production environment electronic map data image, the production environment electronic map data image can be published to the virtual cloud server cluster.
  • the virtual cloud server cluster can generate unique identification information for the mirror data through subsequent steps to distinguish different mirror data and facilitate data management.
  • Step 206 The virtual cloud server cluster determines the current time stamp of the identification information generated this time according to the current time stamp and the historical time stamp of the last identification information generation.
  • the virtual cloud server cluster can generate a corresponding unique ID for each image data as identification information through a unique ID (Identity) generator.
  • the unique ID generator can generate the unique ID based on the timestamp.
  • step 206 may include the following steps:
  • S1 Determine whether the current first time stamp is smaller than the historical time stamp of last generated identification information.
  • Fig. 5 shows a flow chart of a unique ID generator generating a first value.
  • the unique ID generator can first obtain the current timestamp, that is, the first timestamp, and then judge whether the current first timestamp is Less than the historical timestamp of the last generated unique ID, if the first timestamp is greater than or equal to the historical timestamp, it means that the start time of this unique ID generation is equal to or later than the last generated unique ID time, and the timing is correct, and then The latest second timestamp may be determined as the current timestamp for generating the identification information this time.
  • the first time stamp is the time when step S1 is executed
  • the second time stamp is the time when step S2 is executed
  • the second time stamp is later than the first time stamp.
  • the time difference between the second timestamp and the first timestamp is less than a second level.
  • the unique ID generator will generate some temporary cache data, such as calculation examples, etc., thereby occupying some CPU (Central Processing Unit, central processing unit) resources, such as computing resources, storage resources, etc. Therefore, in the embodiment of the present disclosure, optionally, the virtual cloud server cluster can also count the number of times the unique ID generator continuously generates unique IDs through the accumulation of serial numbers. When the serial number is accumulated to When the value is certain, the temporary cache data is released uniformly, thereby releasing CPU resources. In this way, the space and resources in the virtual cloud server cluster can be effectively utilized.
  • CPU Central Processing Unit, central processing unit
  • the virtual cloud server cluster can represent the serial number with a fixed-digit binary number, thereby limiting the maximum value of the serial number.
  • the value range of a 16-bit serial number is 0-65535, that is, the serial number can be accumulated up to 65535. Therefore, , when the serial number accumulates to the maximum value, the temporary cache data can be released uniformly.
  • step 206 the following steps are also included:
  • Accumulation is performed on the basis of the historical serial number corresponding to the operation of generating the identification information last time, to obtain the current serial number corresponding to the operation of generating the identification information this time.
  • FIG. 6 shows another flow chart of a unique ID generator generating a first value.
  • step S2 may specifically include:
  • a preset value such as 1, can be added to the serial number corresponding to the unique ID generated last time, so as to obtain the current ID corresponding to the operation of generating the identification information this time. serial number.
  • the unique ID generator determines that the first timestamp is not less than the historical timestamp, it needs to further determine whether the first timestamp is greater than or equal to the historical timestamp. If the first timestamp is equal to the historical timestamp, it means that the generation process of this time is carried out immediately after the last generation process, and it is a continuous generation process with the last time.
  • the unique ID generator needs to continue to judge whether the serial number of this time is equal to A preset maximum value, wherein the preset maximum value is also the maximum binary number that can be represented by the digits of the serial number (for example, 65535 in the above example).
  • Case 1 If the current serial number is equal to the preset maximum value, the process of generating a unique ID will be blocked for the preset duration, that is, the preset duration will be suspended. During the blocking process, temporary data can be cleaned up, and temporary resources It can be released, and after the blockage reaches the preset duration, the process is continued, and the latest second timestamp is determined as the current timestamp for generating the unique ID this time.
  • the second case if the current serial number is less than the preset maximum value, directly determine the latest second timestamp as the current timestamp for generating the unique ID this time.
  • the current serial number is equal to the preset maximum value, but has not exceeded the preset maximum value. Therefore, the generation process can be successfully completed this time, thereby generating a valid ID.
  • the second time stamp in the first case is delayed by a preset period of time.
  • the preset duration may be 1 second.
  • step S2 may also include:
  • the current first timestamp is greater than the historical timestamp of the last generated unique ID, it means that there is a certain time interval between this generation process and the last generation process, which is a discontinuous generation process from the last time, and the unique ID generation
  • the device can set the current serial number to 0, so that when the unique ID is generated next time, the serial number will start to accumulate from 0. After the serial number is set to 0 this time, the latest second timestamp will be determined as the unique ID generated this time. This timestamp.
  • the above blocking steps can make the start time of the next unique ID generation not equal to the time when the unique ID was generated last time, so that the next generation process is not continuous with the current generation process, and step S1 is executed during the next generation process , it will be judged that the first timestamp is greater than the historical timestamp, and then the next sequence number will be set to 0 through step S24, so that the next sequence number will not exceed the maximum value allowed by the sequence number (ie, the preset maximum value).
  • step S1 referring to FIG. 5 and FIG. 6, the following steps may also be included:
  • the current first timestamp is smaller than the historical timestamp of the last generated unique ID, it means that the start time of this unique ID generation is earlier than the last generated unique ID time, the timing is wrong, and an invalid ID can be generated.
  • Step 207 The virtual cloud server cluster encodes the current time stamp to obtain the first value.
  • the unique ID generator after the unique ID generator obtains the current time stamp, it can encode the current time stamp to obtain the first value.
  • the first numerical value is related to the time stamp when the unique ID is generated this time, so it is unique.
  • Step 208 For each image data, the virtual cloud server cluster reads the storage address of the project code warehouse and the branch name corresponding to the image data from the image data, wherein the branch data of different development stages are all stored in the back-end development device
  • the mirror data of different development stages includes the storage address of the project code warehouse and the branch name corresponding to the mirror data.
  • Fig. 7 shows a flow chart of a unique ID generator generating a unique ID.
  • the unique ID generator can read the storage address of the project code warehouse from the mirror data, and the mirror data corresponding The branch name of the .
  • the code warehouses of different projects are different, and the storage addresses of the code warehouses are also different, and the branch names corresponding to different image data in the same project are different.
  • Step 209 The virtual cloud server cluster generates a second value according to the storage address of the project code warehouse and the branch name corresponding to the image data.
  • the unique ID generator can generate a second value related to the project to which the mirrored data belongs and the corresponding branch according to the storage address of the project code warehouse and the branch name corresponding to the mirrored data.
  • step 209 may specifically be implemented through the following steps, including:
  • Hash code the storage address of the project code warehouse to obtain the first hash value
  • the unique ID generator can use the hash (Hash) algorithm to perform hash coding on the storage address of the project code warehouse and the branch name corresponding to the mirror data, so as to obtain the first hash value related to the project, and the first hash value related to the mirror image.
  • the second value includes the first hash value and the second hash value.
  • Step 210 The virtual cloud server cluster combines or operates the first value and the second value to obtain identification information corresponding to the image data, wherein the identification information is used to distinguish different image data.
  • step 210 may include:
  • a combination or operation is performed on the first value, the first hash value and the second hash value to obtain identification information corresponding to the image data.
  • the way of combining may be to combine the first value, the first hash value and the second hash value into one value according to a preset arrangement order, and this value is the unique ID of the image data.
  • the way of calculation can be to calculate the first value, the first hash value and the second hash value according to the preset calculation method, such as addition, multiplication, etc., to obtain a calculation result, which is the mirror image data. Unique ID.
  • the first numerical value is unique
  • the second numerical value is related to the item and corresponding branch of the image data. Therefore, the identification information obtained based on the first numerical value and the second numerical value can not only be used to distinguish different
  • the mirrored data of the mirrored data can also reflect the project and corresponding branch of the mirrored data. In this way, when a problem occurs in the operation and maintenance process of the mirrored data, the project and branch with the problem can be quickly found according to the identification information of the mirrored data, which improves the operation and maintenance process. dimension efficiency.
  • the unique ID can also be generated by a UUID (Universally Unique Identifier) generator, Redis atomic self-increment, snowflake algorithm, etc., which is not discussed in the embodiments of the present disclosure limited.
  • UUID Universally Unique Identifier
  • new test branch data and new pre-release branch data are obtained, and then through steps 203-210, a new set of development environment electronic map data mirroring, testing environment electronic map data mirroring and production environment electronic map data mirroring are obtained. Map data mirroring, so as to realize the area deletion and area merging of the electronic map.
  • step 210 the following steps may also be included after step 210:
  • a corresponding data processing interface is configured for each mirrored data, wherein the data processing interface is used to add data, delete data, modify data, and search data for the mirrored data corresponding to the data processing interface.
  • the image data is stored in a specific device of the virtual cloud server cluster.
  • the virtual cloud server cluster can Configure a corresponding data processing interface for each mirrored data, and open the data processing interface to other devices, so that other devices can add, modify, delete, and check related data through the data processing interface.
  • each data or processing process can be visualized, so that developers can develop and maintain electronic maps more efficiently.
  • the back-end development device first obtains the target electronic map data to be updated, then sequentially generates mirror data corresponding to different development stages of the target electronic map data, and publishes each mirror data to the virtual cloud server cluster in sequence, Among them, the mirror data of the last development stage in each mirror data constitutes the new version of electronic map data, and the other mirror data in each mirror data constitutes the processing data of the old version of electronic map, and then the virtual cloud server cluster can generate the identification corresponding to each mirror data Information to distinguish different image data.
  • the old version of the electronic map processing process data can be retained, and the unique identification information is used to distinguish each image data, realizing the historical electronic map Data maintenance and management, and provides a basis for version rollback.
  • FIG. 8 it shows a flow chart of steps of a method for using electronic map data according to an embodiment of the present disclosure.
  • the method is applied to the electronic map service system 100 in the electronic map operation and maintenance method described above.
  • the electronic map data The map service system 100 also includes a business server cluster 30 , the virtual cloud server cluster 20 is communicatively connected to the business server cluster 30 , and the user terminal 200 is communicatively connected to the business server cluster 30 .
  • the business server cluster 30 can provide further services based on the image data (electronic map data) provided by the virtual cloud server cluster 20, such as security services, operation and maintenance services, etc. of the area indicated by the map.
  • This method can be used to use the image data obtained through the electronic map operation and maintenance method described above, and the method includes the following steps:
  • Step 301 The service server cluster receives an electronic map download request sent by a user terminal.
  • the user terminal can send an electronic map download request to the business server cluster through the electronic map client to request to obtain the current latest version of the electronic map data.
  • Step 302 In response to the request for downloading the electronic map, the business server cluster sends a request for acquiring new version of the electronic map data to the virtual cloud server cluster.
  • the business server cluster receives the electronic map download request, responds, and then sends a request for acquiring new version of the electronic map data to the virtual cloud server cluster.
  • Step 303 The virtual cloud server cluster sends the new version of the electronic map data to the service server cluster in response to the acquisition request.
  • the virtual cloud server cluster receives the electronic map download request and responds, and then returns the new version of the electronic map data, that is, the mirror data of the electronic map of the production environment, to the business server cluster.
  • Step 304 The business server cluster sends the new version of the electronic map data to the user terminal.
  • the business server cluster After the business server cluster receives the new version of the electronic map data, it can return it to the user terminal requesting the electronic map data.
  • the map data service can be provided by a virtual cloud server cluster, and the business service can be provided by a business server cluster.
  • the business service and the map data service are respectively stored in different server clusters to realize the decoupling of the two. Decoupling means to distinguish the computing, memory and other resources of the server so that server resources can be allocated according to the specific needs of each workload, which can improve the efficiency of providing services.
  • the method may also include the following steps:
  • the business server cluster detects whether the virtual cloud server cluster has electronic map data updates by polling the virtual cloud server cluster;
  • the virtual cloud server cluster When the virtual cloud server cluster is updated with new electronic map data, it sends the new electronic map data to the business server cluster;
  • the service server cluster When the service server cluster receives new electronic map data of a new version, it sends prompt information to the user terminal, wherein the prompt information is used to remind the terminal user to download the new electronic map data of the new version to update to the latest electronic map.
  • the business server cluster can actively monitor whether the virtual cloud server cluster has electronic map data updates through the polling mechanism. If there is an update, based on the polling mechanism, after the virtual cloud server cluster is updated, it can Immediately return the updated electronic map data to the business server cluster.
  • the service server when the service server is a Web server, the service server cluster and the virtual cloud server cluster may use a WebSocket (network socket) connection for communication, and correspondingly, the polling method may use WebSocket polling.
  • WebSocket network socket
  • a communication connection that can implement a polling mechanism needs to be established between the business server cluster and the virtual cloud server cluster.
  • the business server cluster first initiates a request to upgrade to the WebSocket communication protocol.
  • the virtual cloud server cluster can return a response protocol upgrade message to the business server cluster, thereby establishing a WebSocket connection between the two , and then the business server cluster can poll.
  • the business server cluster When the business server cluster performs polling, it can first initiate an inquiry to the virtual cloud server cluster to ask whether there is an update of the electronic map data in the virtual cloud server cluster. If there is no update, the virtual cloud server cluster will not respond. If there is an update, then The virtual cloud server cluster can return the latest electronic map data to the business server cluster. In the business server cluster, it is necessary to set the length of time to wait for the response of the virtual cloud server cluster after the query, and the time interval between the end of this query and the start of the next query. If the virtual cloud server cluster does not respond within this time, it is considered that there is no update. This query ends, and then the next query is made after the time interval elapses.
  • the business server cluster can first suspend polling, and then immediately request the latest version of the virtual cloud server cluster through steps 302-304.
  • Electronic map data to be fed back to the client. After a request from the business server cluster, you can wait for a period of time (the time is usually very short, such as a few seconds). If the latest electronic map data has not been obtained from the virtual cloud server cluster after a period of time, it means that the business server cluster has passed the previous round.
  • the electronic map data obtained by the query is the latest electronic map data, and then the business server cluster can directly return the latest local electronic map to the client.
  • the embodiment of the present disclosure can make the business server cluster
  • the latest electronic map data is obtained from the virtual cloud server cluster at the first time, so that when the client initiates a request, the business server cluster can quickly respond to the client request, and quickly send the latest electronic map data to the client, shortening the time
  • the user terminal obtains the time of the latest electronic map data, which improves the user experience.
  • a judging repetition mechanism for the latest electronic map data can also be configured in the service server cluster to deal with the situation that the virtual cloud server cluster may repeatedly send the electronic map data.
  • the virtual cloud server cluster may mistakenly believe that there is an update when the electronic map data is not updated due to errors, and then send the previously sent electronic map data to the service server cluster.
  • a cache can be set in the business server cluster to store the electronic map data obtained from the virtual cloud server cluster each time. Each time the business server cluster receives an electronic map data from the virtual cloud server cluster, it can uniquely store the electronic map data. Compare the unique identification information with the unique identification information of other electronic map data in the cache.
  • the business server cluster If there is electronic map data with the same unique identification information in the cache, it means that the business server cluster has received the electronic map data before, and then the business server The cluster can delete the electronic map data received this time, and then there is no need to perform related operations on the electronic map data, thereby saving the resources of the business server cluster.
  • the business server cluster After the business server cluster obtains the latest electronic map data, it can immediately use the message push mechanism to prompt the user to update the electronic map.
  • the business server cluster can obtain the latest electronic map data at the first time, so that the user terminal can update the electronic map in time, and avoid navigation errors caused by users using the old version of the electronic map.
  • the business server cluster can prompt the user to update the electronic map instead of directly sending it to the user terminal for update. In this way, it can avoid affecting users who are using the old version of the electronic map.
  • each time the user terminal needs to use the electronic map it may first determine whether there is an update of the electronic map data in the virtual cloud server cluster through the business server cluster, and if so, update the current latest version of the electronic map The map data is returned to the user terminal. If there is no map data, the user terminal is notified, and the user terminal only needs to use the electronic map data currently stored locally.
  • the terminal user can download the electronic map data to the local terminal, and then use it offline.
  • the service server cluster can update the local electronic map data through a polling mechanism without affecting users who use the electronic map offline.
  • the terminal user can use the electronic map data in the service server cluster online while the terminal maintains a communication connection with the service server cluster, without downloading the electronic map data to the terminal locally.
  • the virtual cloud server cluster can be set to regularly publish electronic map data when there are no users or few users are online, so that the business server cluster can update the local electronic map data at this time.
  • the map data is updated to avoid large-scale impact on the use of online users.
  • the business server cluster can perform grayscale update of electronic map data for all end users.
  • the business server cluster obtains the latest electronic map data from the virtual cloud server cluster, there are still some users who are online Using the old version of electronic map data, the business server cluster can retain the latest electronic map data and the old version of electronic map data at the same time, and provide the latest electronic map data to users who access the business server cluster later, but continue to provide the old version of electronic map data to users who are online at the moment. map.
  • the business server cluster When a user using the old version of electronic map data goes offline and then accesses the business server cluster again, the business server cluster will also provide the user with the latest electronic map data until all users using the old version of the electronic map go offline, and the business server cluster will The data of the old version of the electronic map is deleted, so as to completely switch to the new version of the electronic map to provide map services.
  • it can be guaranteed that the current use of electronic map data by online users will not be affected, and the latest electronic map data can be used next time they go online.
  • the electronic map service system 100 may further include a reverse proxy server cluster 40 , and the service server cluster 30 is communicatively connected with the user terminal 200 through the reverse proxy server cluster 40 .
  • the backend development equipment 10 the virtual cloud server cluster 20, the service server cluster 30 and the reverse proxy server cluster 40 belong to the backend, and the user terminal 200 belongs to the frontend.
  • step 301 may include the following steps: the reverse proxy server cluster receives the electronic map download request sent by the user terminal; the reverse proxy server cluster dispatches the electronic map download request to the target in the service server cluster according to a preset scheduling mechanism A service server; the target service server receives the electronic map download request.
  • Step 302 may include the following steps: in response to the electronic map download request, the target service server sends an acquisition request for new version electronic map data to the virtual cloud server cluster.
  • Step 304 may include the following steps: the target service server sends the new version of the electronic map data to the reverse proxy server cluster; the reverse proxy server cluster sends the new version of the electronic map data to the user terminal.
  • the electronic map download request of the user terminal is first sent to the reverse proxy server cluster, and the reverse proxy server cluster can provide reverse proxy service based on the scheduling mechanism, so as to schedule the electronic map download request to the target business server in the business server cluster , and then the target service server processes the request of the user terminal.
  • the reverse proxy mechanism the user request can be dispatched to the business server that undertakes the request, and the business server that actually provides the service is hidden from the user. The user does not need to know the address of the business server that actually provides the service, and does not need to be configured on the user front end.
  • the business server can be a Web (website) server
  • the reverse proxy server can be used to accelerate the Web, that is, use the reverse proxy server as the front-end of the Web server to reduce the load on the network and server, and improve access efficiency .
  • the method may also include the following steps:
  • the business server cluster sends a big data service request to the virtual cloud server cluster
  • the virtual cloud server cluster obtains required relevant data from at least one image data in response to the big data service request;
  • the virtual cloud server cluster performs data processing on relevant data according to the big data service request, and obtains the processing results;
  • the virtual cloud server cluster sends the processing result to the business server cluster.
  • the virtual cloud server cluster can not only provide map data services, but also provide big data services, such as big data calculation, statistics, analysis, visualization processing and other services.
  • the virtual cloud server cluster can deploy data analysis algorithm packages to provide big data services such as regression analysis and decision tree analysis, and the virtual cloud server cluster can also deploy data visualization tool sets to provide automatic report generation, AB testing, etc. Data visualization chart making and other big data services.
  • the business server cluster When the business server cluster needs it, it can send a big data service request to the virtual cloud server cluster, and the virtual cloud server cluster will respond after receiving the request, and obtain the relevant data required for this big data service from at least one image data , where what kind of data to obtain is related to the requested service.
  • the virtual cloud server cluster can then perform data processing on the relevant data for the requested big data service, and obtain processing results, where the processing is related to the requested service.
  • the above step of obtaining the required related data from at least one image data in response to the big data service request may specifically include:
  • the required related data is obtained from at least one mirrored data through the address and port of the mirrored data in the local area network to which the virtual cloud server cluster belongs.
  • the data analysis algorithm package or data visualization tool set can be stored in different physical servers in the virtual cloud server cluster with each image data. Therefore, referring to Figure 12, the data analysis algorithm package or data visualization tool set (Fig. 12 Take the data analysis algorithm package as an example) before the physical server where the data analysis package is located needs to establish a connection with the physical server where the required image data is located through the corresponding LAN address and port, and then you can pass the LAN address and port Grab the relevant data in the image data.
  • the data analysis algorithm package or the data visualization tool set can process the captured relevant data through models or tools.
  • the above-mentioned steps of performing data processing on relevant data may specifically include:
  • the virtual cloud server cluster can return big data service processing results such as data analysis results and visual charts to the business server cluster, and then the business server cluster can further provide other services based on the data analysis results or visual charts.
  • the map data service and the big data service are unified in the virtual cloud server cluster, which realizes the call of the computing service and the map data under the unified local area network, and improves the operation efficiency of the big data algorithm;
  • the business service and the The map data service is stored in different server clusters to realize the decoupling of the two, so that the business server can focus on processing related business services (such as security services) in the area indicated by the electronic map (such as the park), without having to provide storage and Maintaining map data consumes more computing, network calls, storage and other resources.
  • the business server cluster when the business server cluster receives the electronic map download request sent by the user terminal, it responds, and sends an acquisition request for the new version of the electronic map data to the virtual cloud server cluster, and the virtual cloud server cluster responds to the acquisition request.
  • the new version of the electronic map data is returned to the business server cluster, and the business server cluster then returns the new version of the electronic map data to the user terminal to provide the user terminal with services related to the electronic map, realizing the acquisition and use of the electronic map data.
  • the embodiment of the present disclosure also discloses an electronic map service system, referring to Fig. 2, Fig. 9 and Fig. 11, which includes a back-end development device and a virtual cloud server cluster, and the back-end development device is communicatively connected to the virtual cloud server cluster ;
  • the back-end development device is configured to obtain target electronic map data to be updated; sequentially generate mirror data corresponding to different development stages of the target electronic map data; and sequentially publish each of the mirror data to the virtual cloud server cluster , wherein, the mirror data of the last development stage in each of the mirror data constitutes a new version of electronic map data, and the other mirror data of each of the mirror data except the mirror data of the last development stage constitute an old version of electronic map data.
  • map processing data
  • the virtual cloud server cluster is configured to generate identification information corresponding to each image data, wherein the identification information is used to distinguish different image data.
  • the electronic map service system further includes a business server cluster, and the virtual cloud server cluster is communicatively connected to the business server cluster;
  • the business server cluster is configured to send a computing service request to the virtual cloud server cluster
  • the virtual cloud server cluster is further configured to, in response to the computing service request, acquire relevant data required for computing from at least one of the image data; perform data analysis and processing on the relevant data according to the computing service request , to obtain an analysis result; and send the analysis result to the service server cluster.
  • the electronic map service system further includes a reverse proxy server cluster, the service server cluster includes a plurality of service servers, and the reverse proxy server cluster is communicatively connected to each of the service servers ;
  • the reverse proxy server cluster is configured to schedule the request sent by the user terminal to one of the service servers in the service server cluster according to a preset scheduling mechanism.
  • references herein to "one embodiment,” “an embodiment,” or “one or more embodiments” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Additionally, please note that examples of the word “in one embodiment” herein do not necessarily all refer to the same embodiment.
  • any reference signs placed between parentheses shall not be construed as limiting the claim.
  • the word “comprising” does not exclude the presence of elements or steps not listed in a claim.
  • the word “a” or “an” preceding an element does not exclude the presence of a plurality of such elements.
  • the disclosure can be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In a unit claim enumerating several means, several of these means can be embodied by one and the same item of hardware.
  • the use of the words first, second, and third, etc. does not indicate any order. These words can be interpreted as names.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开提供了一种电子地图运维方法、电子地图数据使用方法及服务系统,涉及计算机技术领域。该方法包括:后端开发设备获取待更新的目标电子地图数据,依次生成不同开发阶段的镜像数据,依次将各个镜像数据发布至虚拟云服务器集群;其中,最后一个开发阶段的镜像数据构成新版电子地图数据,各个镜像数据中的其他镜像数据构成旧版电子地图处理过程数据,之后虚拟云服务器集群可以生成每个镜像数据对应的标识信息,用以区分不同的镜像数据。本公开中,将新版电子地图数据发布至虚拟云服务器集群的同时,可保留旧版电子地图处理过程数据,并通过唯一标识信息区分各个镜像数据,实现了对历史电子地图数据的维护管理,为版本回滚提供了基础。

Description

电子地图运维方法、电子地图数据使用方法及服务系统
相关申请的交叉引用
本申请要求在2022年1月29日提交中国专利局、申请号为202210111748.3、名称为“电子地图运维方法、电子地图数据使用方法及服务系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本公开涉及计算机技术领域,特别是涉及一种电子地图运维方法、电子地图数据使用方法、及电子地图服务系统。
背景技术
随着智慧生活的需求多样化,电子地图的使用越来越广泛。目前常用的电子地图制作流程为:通过制图软件生成原始电子地图,并上传至地图制作方,进而地图制作方可以基于原始电子地图进行开发,并发布至服务器,发布的新版电子地图将直接替换服务器中的旧版电子地图。当需要根据建筑物的实际规划对电子地图进行区域删减、区域合并等操作时,可以登录到地图制作方的开发平台上进行操作。
发明内容
第一方面,本公开提供一种电子地图运维方法,应用于电子地图服务系统,所述电子地图服务系统包括后端开发设备和虚拟云服务器集群,所述后端开发设备与所述虚拟云服务器集群通信连接,所述方法包括:
所述后端开发设备获取待更新的目标电子地图数据;
所述后端开发设备依次生成所述目标电子地图数据对应的不同开发阶段的镜像数据;
所述后端开发设备依次将各个所述镜像数据发布至所述虚拟云服务器集群,其中,各个所述镜像数据中的最后一个开发阶段的镜像数据构成新版电子地图数据,各个所述镜像数据中除所述最后一个开发阶段的镜像数据之外的其他所述镜像数据构成旧版电子地图处理过程数据;
所述虚拟云服务器集群生成每个所述镜像数据对应的标识信息,其中,所述标识信息用于区分不同的所述镜像数据。
可选地,所述依次生成所述目标电子地图数据对应的不同开发阶段的镜像数据,包括:
依次生成所述目标电子地图数据对应的不同开发阶段的分支数据;
每生成一个所述分支数据之后,将所述分支数据打包为过程文件;
将所述过程文件构建为镜像数据;
其中,所述不同开发阶段的分支数据包括开发分支数据、测试分支数据和预发布分支数据,相应地,所述不同开发阶段的镜像数据包括开发环境电子地图数据镜像、测试环境电子地图数据镜像和生产环境电子地图数据镜像。
可选地,所述依次将各个所述镜像数据发布至虚拟云服务器集群,包括:
每构建出一个所述镜像数据之后,将所述镜像数据发布至虚拟云服务器集群。
可选地,所述不同开发阶段的分支数据均存储在所述后端开发设备的项目代码仓库中,所述不同开发阶段的镜像数据中包括所述项目代码仓库的存储地址,以及所述镜像数据对应的分支名称;
所述生成每个所述镜像数据对应的标识信息,包括:
根据当前时间戳,以及上次生成所述标识信息的历史时间戳,确定本次生成所述标识信息的本次时间戳;
对所述本次时间戳进行编码,获得第一数值;
对于每个所述镜像数据,从所述镜像数据中读取所述项目代码仓库的存储地址,以及所述镜像数据对应的分支名称;
根据所述项目代码仓库的存储地址和所述镜像数据对应的分支名称,生成第二数值;
对所述第一数值和所述第二数值进行组合或运算,获得所述镜像数据对应的标识信息。
可选地,所述根据当前时间戳,以及上次生成所述标识信息的历史时间戳,确定本次生成所述标识信息的本次时间戳,包括:
判断当前的第一时间戳是否小于上次生成所述标识信息的历史时间戳;
若所述第一时间戳大于或等于所述历史时间戳,则将最新的第二时间戳 确定为本次生成所述标识信息的本次时间戳。
可选地,所述根据当前时间戳,以及上次生成所述标识信息的历史时间戳,确定本次生成所述标识信息的本次时间戳之前,还包括:
在上次生成所述标识信息的操作所对应的历史序列号的基础上进行累加,得到本次生成所述标识信息的操作所对应的本次序列号;
所述若所述第一时间戳大于或等于所述历史时间戳,则将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳,包括:
若所述第一时间戳等于所述历史时间戳,则判断所述本次序列号是否等于预设最大值;
若所述本次序列号等于所述预设最大值,则阻塞预设时长以释放临时资源,并将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳;
若所述本次序列号小于所述预设最大值,则将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳。
可选地,所述若所述第一时间戳大于或等于所述历史时间戳,则将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳,包括:
若所述第一时间戳大于所述历史时间戳,则将所述本次序列号置为0,并将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳。
可选地,所述判断当前的第一时间戳是否小于上次生成所述标识信息的历史时间戳之后,还包括:
若所述第一时间戳小于所述历史时间戳,则生成无效标识信息。
可选地,所述根据所述项目代码仓库的存储地址和所述镜像数据对应的分支名称,生成第二数值,包括:
对所述项目代码仓库的存储地址进行哈希编码,获得第一哈希值;
对所述镜像数据对应的分支名称进行哈希编码,获得第二哈希值,得到包括所述第一哈希值和所述第二哈希值的第二数值;
所述对所述第一数值和所述第二数值进行组合或运算,获得所述镜像数据对应的标识信息,包括:
对所述第一数值、所述第一哈希值和所述第二哈希值进行组合或运算,获得所述镜像数据对应的标识信息。
可选地,所述生成每个所述镜像数据对应的标识信息之后,还包括:
对每个所述镜像数据配置对应的数据处理接口,其中,所述数据处理接口用于对与所述数据处理接口对应的所述镜像数据进行增加数据、删除数据、修改数据以及查找数据。
第二方面,本公开还提供一种电子地图数据使用方法,应用于如上第一方面所述的电子地图运维方法中的电子地图服务系统,所述电子地图服务系统还包括业务服务器集群,所述虚拟云服务器集群与所述业务服务器集群通信连接,所述方法用于对通过如上第一方面所述的电子地图运维方法获得的所述镜像数据进行使用,所述方法包括:
所述业务服务器集群接收用户终端发送的电子地图下载请求;
所述业务服务器集群响应于所述电子地图下载请求,向所述虚拟云服务器集群发送对所述新版电子地图数据的获取请求;
所述虚拟云服务器集群响应于所述获取请求,将所述新版电子地图数据发送至所述业务服务器集群;
所述业务服务器集群将所述新版电子地图数据发送至所述用户终端。
可选地,所述方法还包括:
所述业务服务器集群通过向所述虚拟云服务器集群进行轮询,检测所述虚拟云服务器集群是否有电子地图数据的更新;
所述虚拟云服务器集群在更新得到新的新版电子地图数据时,将所述新的新版电子地图数据发送至所述业务服务器集群;
所述业务服务器集群在接收到所述新的新版电子地图数据时,向用户终端发送提示信息,其中,所述提示信息用于提示终端用户下载所述新的新版电子地图数据,以更新至最新的电子地图。
可选地,所述电子地图服务系统还包括反向代理服务器集群,所述业务服务器集群通过所述反向代理服务器集群与所述用户终端通信连接。
可选地,所述业务服务器集群接收用户终端发送的电子地图下载请求,包括:所述反向代理服务器集群接收用户终端发送的电子地图下载请求;所述反向代理服务器集群根据预设的调度机制,将所述电子地图下载请求调度至所述业务服务器集群中的目标业务服务器;所述目标业务服务器接收所述电子地图下载请求;
所述业务服务器集群响应于所述电子地图下载请求,向所述虚拟云服务 器集群发送对所述新版电子地图数据的获取请求,包括:所述目标业务服务器响应于所述电子地图下载请求,向所述虚拟云服务器集群发送对所述新版电子地图数据的获取请求;
所述业务服务器集群将所述新版电子地图数据发送至所述用户终端,包括:所述目标业务服务器将所述新版电子地图数据发送至所述反向代理服务器集群;所述反向代理服务器集群将所述新版电子地图数据发送至所述用户终端。
可选地,所述方法还包括:
所述业务服务器集群向所述虚拟云服务器集群发送大数据服务请求;
所述虚拟云服务器集群响应于所述大数据服务请求,从至少一个所述镜像数据中获取所需的相关数据;
所述虚拟云服务器集群根据所述大数据服务请求,对所述相关数据进行数据处理,得到处理结果;
所述虚拟云服务器集群将所述处理结果发送至所述业务服务器集群。
可选地,所述响应于所述大数据服务请求,从至少一个所述镜像数据中获取所需的相关数据,包括:
响应于所述大数据服务请求,通过所述镜像数据在所述虚拟云服务器集群所属的局域网中的地址和端口,从至少一个所述镜像数据中获取所需的相关数据。
可选地,所述对所述相关数据进行数据处理,包括:
通过数据分析模型,对所述相关数据进行数据分析;
和/或,
根据所述相关数据,生成可视化图表。
第三方面,本公开还提供一种电子地图服务系统,包括后端开发设备和虚拟云服务器集群,所述后端开发设备与所述虚拟云服务器集群通信连接;
所述后端开发设备,配置为获取待更新的目标电子地图数据;依次生成所述目标电子地图数据对应的不同开发阶段的镜像数据;依次将各个所述镜像数据发布至所述虚拟云服务器集群,其中,各个所述镜像数据中的最后一个开发阶段的镜像数据构成新版电子地图数据,各个所述镜像数据中除所述最后一个开发阶段的镜像数据之外的其他所述镜像数据构成旧版电子地图处 理过程数据;
所述虚拟云服务器集群,配置为生成每个所述镜像数据对应的标识信息,其中,所述标识信息用于区分不同的所述镜像数据。
可选地,所述电子地图服务系统还包括业务服务器集群,所述虚拟云服务器集群与所述业务服务器集群通信连接;
所述业务服务器集群,配置为向所述虚拟云服务器集群发送计算服务请求;
所述虚拟云服务器集群,还配置为响应于所述计算服务请求,从至少一个所述镜像数据中获取计算所需的相关数据;根据所述计算服务请求,对所述相关数据进行数据分析处理,得到分析结果;将所述分析结果发送至所述业务服务器集群。
可选地,所述电子地图服务系统还包括反向代理服务器集群,所述业务服务器集群包括多个业务服务器,所述反向代理服务器集群与每个所述业务服务器均通信连接;
所述反向代理服务器集群,配置为根据预设的调度机制,将所述用户终端发送的请求调度至所述业务服务器集群中的一个所述业务服务器。
上述说明仅是本公开技术方案的概述,为了能够更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为了让本公开的上述和其它目的、特征和优点能够更明显易懂,以下特举本公开的具体实施方式。
附图说明
为了更清楚地说明本公开实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本公开实施例的一种电子地图运维方法的步骤流程图;
图2示出了本公开实施例的一种电子地图服务系统的框图;
图3示出了本公开实施例的另一种电子地图运维方法的步骤流程图;
图4示出了本公开实施例的一种电子地图运维的流程图;
图5示出了本公开实施例的一种生成第一数值的流程图;
图6示出了本公开实施例的另一种生成第一数值的流程图;
图7示出了本公开实施例的一种生成唯一ID的流程图;
图8示出了本公开实施例的一种电子地图数据使用方法的步骤流程图;
图9示出了本公开实施例的另一种电子地图服务系统的框图;
图10示出了本公开实施例的一种更新用户终端中电子地图数据的流程图;
图11示出了本公开实施例的又一种电子地图服务系统的框图;
图12示出了本公开实施例的一种提供大数据服务的流程图。
具体实施例
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等方位词仅用于表示基于附图的相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
参照图1,示出了本公开实施例的一种电子地图运维方法的步骤流程图,该方法应用于电子地图服务系统,参照图2,电子地图服务系统100包括后端开发设备10和虚拟云服务器集群20,其中,后端开发设备10与虚拟云服务 器集群20通信连接。
在一些实施例中,后端开发设备10具体可以是电子地图开发人员进行电子地图后端开发所使用的终端等设备,本公开实施例对此不作具体限定。可以理解的是,在本公开实施例中,后端开发设备10可以包括至少一台设备。
在一些实施例中,虚拟云服务器集群20为可以提供云服务的服务器集群,提供了一个虚拟化环境,其中,虚拟云服务器集群20可基于多个实体服务器提供云服务。
该方法包括以下步骤:
步骤101:后端开发设备获取待更新的目标电子地图数据。
在第一次制作电子地图时,可以根据建筑物的实际图纸,通过地图编辑器绘制得到原始电子地图,后续需要在该原始电子地图的基础上进行相关功能的开发,例如标识蓝牙信标等定位装置,因此,将该原始电子地图作为待更新的目标电子地图数据。
在一些实施例中,后端开发设备可以根据建筑物的实际图纸,通过地图编辑器绘制得到原始电子地图,当然,原始电子地图也可以是在其他设备或平台绘制完成后,发送至后端开发设备的,本公开实施例对此不作限定。
在第二次及后续制作电子地图时,需要在旧版电子地图数据的基础上进行优化功能、或地图修改等开发,因此,在这种情况下,将上一次发布的最新版电子地图数据作为待更新的目标电子地图数据。
可选地,目标电子地图数据具体可以包括矢量数据、路网数据,以及一些定位装置(例如蓝牙信标)的位置数据等。
还可选地,目标电子地图数据所指示的区域可以包括至少部分室内区域,和/或至少部分室外区域,本公开实施例对此并不限定。
步骤102:后端开发设备依次生成目标电子地图数据对应的不同开发阶段的镜像数据。
在电子地图的开发过程中,后端开发设备可以对目标电子地图数据进行三个阶段的开发,分别是初步开发阶段、测试阶段及预发布阶段。在初步开发阶段,可对目标电子地图进行例如目标物标识、区域整合等相关功能的开发,开发完成,进入测试阶段;在测试阶段,可以对目标电子地图进行功能测试,测试通过,进入预发布阶段;在预发布阶段,可以对目标电子地图数 据进行冗余数据的删除、最后校验等工作。
在每个开发阶段完成后,都可以将本阶段所得的数据构建成镜像数据,从而可得到三个镜像数据。
步骤103:后端开发设备依次将各个镜像数据发布至虚拟云服务器集群,其中,各个镜像数据中的最后一个开发阶段的镜像数据构成新版电子地图数据,各个镜像数据中除最后一个开发阶段的镜像数据之外的其他镜像数据构成旧版电子地图处理过程数据。
后端开发设备每生成一个镜像数据后,可以将该镜像数据发布至虚拟云服务器集群。
其中,预发布阶段对应的镜像数据是基于实际应用的生产环境获得的电子地图数据,因此,各个镜像数据中的最后一个开发阶段的镜像数据,也即预发布阶段得到的镜像数据,构成了新版电子地图数据,进而可提供给用户终端进行使用。
初步开发阶段得到的镜像数据记录了对目标电子地图进行了哪些功能开发,测试阶段得到的镜像数据记录了对目标电子地图进行了什么样的功能测试,因此,各个镜像数据中除最后一个开发阶段的镜像数据之外的其他镜像数据,也即初步开发阶段得到的镜像数据和测试阶段得到的镜像数据,构成了旧版电子地图处理过程数据。
由于初步开发阶段和测试阶段得到的镜像数据可反映对目标电子地图的开发过程及测试过程,因此,将旧版电子地图处理过程数据与新版电子地图数据一起保留在虚拟云服务器集群,从而可以在虚拟云服务器集群进行历史电子地图数据的维护。历史电子地图数据对于电子地图服务的改进十分重要,通过对历史电子地图数据进行统计分析,可优化电子地图服务,提高用户体验。
另外,将旧版电子地图处理过程数据与新版电子地图数据一起保留在虚拟云服务器集群,使得后续可以在新发布的新版电子地图数据出现问题时实现旧版本的回滚,从而避免了新版电子地图数据出现问题时,需要大量时间重新进行电子地图开发,并影响用户使用,因此,本公开实施例可通过对旧版电子地图处理过程数据的维护,降低了开发成本,提高了用户体验。
步骤104:虚拟云服务器集群生成每个镜像数据对应的标识信息,其中, 标识信息用于区分不同的镜像数据。
在本公开实施例中,针对每个开发阶段的镜像数据,都可以生成对应的标识信息,从而通过具有唯一性的标识信息区分各个镜像数据,实现了电子地图数据新旧版本的区分,还实现了不同开发阶段所得数据的区分。
在本公开实施例对每个开发阶段的镜像数据都通过不同的标识信息进行区分,从而在新版电子地图后续出现问题时,能够方便地找出是哪个开发阶段出现了问题,并针对不同开发阶段的镜像数据进行修复。
本公开实施例可采用集群式服务器架构,相较于单体服务器,集群式服务器的故障恢复能力强,可以将出现宕机故障的服务器相关服务及时切换至其他服务器中。在本公开实施例中,各版本的历史电子地图数据可以通过集群中的不同服务器进行分布式存储,并且通过在集群范围内具有唯一性的标识信息进行镜像数据标识,如此,当某个服务器出现宕机故障,需要将数据及相关服务迁移到其他服务器时,在集群范围内具有唯一性的标识信息可保证在迁移后的服务器中,被迁移镜像数据和该服务器中原有的镜像数据能够得到区分。
在本公开实施例中,后端开发设备首先获取待更新的目标电子地图数据,然后依次生成目标电子地图数据对应的不同开发阶段的镜像数据,并依次将各个镜像数据发布至虚拟云服务器集群,其中,各个镜像数据中的最后一个开发阶段的镜像数据构成新版电子地图数据,各个镜像数据中的其他镜像数据构成旧版电子地图处理过程数据,之后虚拟云服务器集群可以生成每个镜像数据对应的标识信息,用以区分不同的镜像数据。在本公开实施例中,在将新版电子地图数据发布至虚拟云服务器集群的同时,可以保留旧版电子地图处理过程数据,并通过具有唯一性的标识信息区分各个镜像数据,实现了对历史电子地图数据的维护和管理,并为版本回滚提供了基础。
参照图3,示出了本公开实施例的另一种电子地图运维方法的步骤流程图,在对该方法进行说明之前,首先对一些相关内容进行介绍。
在一些可选实施例中,虚拟云服务器集群可以是K8S集群,K8S集群是一个开源的容器集群管理系统,提供应用部署、维护、扩展机制等功能,可用于管理云平台中多个主机上的容器化的应用,K8S集群可以让应用的容器 化部署变得简单且高效。
将应用整合到容器中并且运行起来的这个过程称为容器化,在容器化部署中,可以首先通过Docker实现应用的容器化。Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到Linux、Windows等操作系统的计算机上,也可以发布到K8S集群等虚拟化环境。
结合图4所示的电子地图运维的具体流程,该方法包括以下步骤:
步骤201:后端开发设备获取待更新的目标电子地图数据。
本步骤的实现方式可参照上述实施例的步骤101。
步骤202:后端开发设备依次生成目标电子地图数据对应的不同开发阶段的分支数据,其中,不同开发阶段的分支数据包括开发分支数据、测试分支数据和预发布分支数据。
参照图4,经过初步开发阶段所得到的数据为开发分支数据,经过测试阶段所得到的数据为测试分支数据,经过预发布阶段所得到的数据为预发布分支数据,不同开发阶段的分支数据均存储在后端开发设备的项目代码仓库中。在实际应用中,不同开发项目对应的项目代码仓库不同,不同项目代码仓库在后端的存储地址不同。
步骤203:后端开发设备每生成一个分支数据之后,并将分支数据打包为过程文件。
参照图4,后端开发设备生成开发分支数据之后,可以提交至测试分支,并将开发分支数据打包为开发过程文件;后端开发设备测试完毕,生成测试分支数据之后,可以提交至预发布分支,并将测试分支数据打包为测试过程文件;后端开发设备生成预发布分支数据之后,可以将预发布分支数据打包为预发布过程文件。
可选地,参照图4,以maven项目(maven是一种具有项目构建、项目依赖管理、项目信息管理等功能的工具)为例,后端开发设备可以通过mvn clean package命令,将分支数据打包为过程文件。
步骤204:后端开发设备将过程文件构建为镜像数据,其中,不同开发阶段的镜像数据包括开发环境电子地图数据镜像、测试环境电子地图数据镜像和生产环境电子地图数据镜像。
参照图4,后端开发设备可以将开发过程文件构建为开发环境电子地图镜像数据(镜像数据也称镜像),将测试过程文件构建为测试环境电子地图镜像数据,将开发过程文件构建为生产环境电子地图镜像数据。
以通过Docker实现容器化,虚拟云服务器集群为K8S集群为例,镜像数据的创建,可以通过编写及配置Dockerfile脚本,然后执行docker build命令来创建。当执行docker build命令时,docker会寻找到Dockerfile脚本文件,并根据Dockerfile脚本文件里的指令创建docker镜像。
Dockerfile脚本通常包括以下四部分内容:基础镜像信息、维护者信息、镜像操作指令和容器启动时执行的指令。其中,基础镜像可以是docker官方提供的基础镜像,例如nodejs镜像,java镜像,mongodb镜像,nginx镜像等,也可以是第三方提供的基础镜像;维护者即为过程文件的维护者;镜像操作指令包括将过程文件拷贝到容器的某个目录的指令、指定需操作的目录为该目录的指令、创建镜像的指令,以及暴露容器对外端口的指令等。
在本公开实施例中,开发环境电子地图数据镜像、测试环境电子地图数据镜像和生产环境电子地图数据镜像均可以通过上述方式构建得到。通过容器化部署,实现了电子地图运维过程的自动化镜像构建,提高了电子地图应用的部署效率,节约了人力成本,且便于数据管理。
步骤205:后端开发设备每构建出一个镜像数据之后,将镜像数据发布至虚拟云服务器集群。
参照图4,后端开发设备构建出开发环境电子地图数据镜像之后,可以将开发环境电子地图数据镜像发布至虚拟云服务器集群;后端开发设备构建出测试环境电子地图数据镜像之后,可以将测试环境电子地图数据镜像发布至虚拟云服务器集群;后端开发设备构建出生产环境电子地图数据镜像之后,可以将生产环境电子地图数据镜像发布至虚拟云服务器集群。
而后端开发设备每将一个镜像数据发布至虚拟云服务器集群,虚拟云服务器集群便可通过后续的步骤,对该镜像数据生成唯一标识信息,用以区分不同的镜像数据,便于数据管理。
步骤206:虚拟云服务器集群根据当前时间戳,以及上次生成标识信息的历史时间戳,确定本次生成标识信息的本次时间戳。
在本公开实施例中,虚拟云服务器集群可以通过唯一ID(Identity)生成 器,对每个镜像数据生成对应的唯一ID作为标识信息。在一些实施例中,唯一ID生成器可以基于时间戳,生成唯一ID。
具体地,在一种可选的实施方式中,步骤206可以包括以下步骤:
S1:判断当前的第一时间戳是否小于上次生成标识信息的历史时间戳。
S2:若第一时间戳大于或等于历史时间戳,则将最新的第二时间戳确定为本次生成标识信息的本次时间戳。
图5示出了一种唯一ID生成器生成第一数值的流程图,参照图5,唯一ID生成器首先可以获取当前时间戳,也即第一时间戳,然后判断当前的第一时间戳是否小于上一次生成唯一ID的历史时间戳,若第一时间戳大于或等于历史时间戳,说明本次生成唯一ID的起始时间等于或晚于上次生成出唯一ID的时间,时序正确,进而可以将最新的第二时间戳确定为本次生成标识信息的本次时间戳。其中,第一时间戳为执行步骤S1时的时间,第二时间戳为执行步骤S2时的时间,第二时间戳晚于第一时间戳。在实际应用中,由于服务器执行步骤的速度很快,因此,第二时间戳与第一时间戳之间时差不足秒级。
进一步地,在实际应用中,唯一ID生成器在生成唯一ID的过程中,会产生一些临时的缓存数据,例如算例等,从而占用一些CPU(Central Processing Unit,中央处理器)资源,例如计算资源、存储资源等,因此,在本公开实施例中,可选地,虚拟云服务器集群还可以通过序列号的累加,对唯一ID生成器连续生成唯一ID的次数进行统计,当序列号累加至一定值时,统一释放临时的缓存数据,从而释放CPU资源,如此,可有效利用虚拟云服务器集群中的空间和资源。
虚拟云服务器集群可以通过固定位数的二进制数表示序列号,从而限定了序列号的最大值,例如,16位序列号的数值范围为0-65535,也即序列号最大可以累加至65535,因此,可以在序列号累加至最大值时,统一释放临时的缓存数据。
具体地,在步骤206之前,还包括以下步骤:
在上次生成标识信息的操作所对应的历史序列号的基础上进行累加,得到本次生成标识信息的操作所对应的本次序列号。
相应地,图6示出了另一种唯一ID生成器生成第一数值的流程图,参照图6,步骤S2具体可以包括:
S21:若第一时间戳等于历史时间戳,则判断本次序列号是否等于预设最大值;
S22:若本次序列号等于预设最大值,则阻塞预设时长以释放临时资源,并将最新的第二时间戳确定为本次生成标识信息的本次时间戳;
S23:若本次序列号小于预设最大值,则将最新的第二时间戳确定为本次生成标识信息的本次时间戳。
其中,当本次需要生成唯一ID时,可以在上次生成的唯一ID对应的序列号的基础上,加上预设值,例如1,从而得到本次生成标识信息的操作所对应的本次序列号。进而在唯一ID生成器确定出第一时间戳不小于历史时间戳时,还需进一步判断第一时间戳是大于还是等于历史时间戳。若第一时间戳等于历史时间戳,说明本次生成过程是在上次生成过程之后紧接着进行的,是与上次连续的生成过程,则唯一ID生成器需继续判断本次序列号是否等于预设最大值,其中,该预设最大值也即序列号位数可表示的最大二进制数(例如上述举例中的65535)。
第一种情况:若本次序列号等于预设最大值,则将本次生成唯一ID的过程阻塞预设时长,也即暂停预设时长,在阻塞过程中,临时数据可被清理,临时资源可得到释放,阻塞达到预设时长后,继续该过程,将最新的第二时间戳确定为本次生成唯一ID的本次时间戳。
第二种情况:若本次序列号小于预设最大值,则直接将最新的第二时间戳确定为本次生成唯一ID的本次时间戳。
其中,在第一种情况下,本次序列号等于预设最大值,但仍未超过预设最大值,因此,本次可顺利完成生成过程,从而生成有效ID。
另外,在第一种情况下,由于生成唯一ID的过程被阻塞,因此,相较于第二种情况中的第二时间戳,第一种情况中的第二时间戳延迟了预设时长。在一些实施例中,预设时长可以为1秒。
此外,步骤S2还可以包括:
S24:若第一时间戳大于历史时间戳,则将本次序列号置为0,并将最新的第二时间戳确定为本次生成标识信息的本次时间戳。
其中,若当前的第一时间戳大于上次生成唯一ID的历史时间戳,说明本次生成过程与上次生成过程间隔了一定的时间,是与上次不连续的生成过程, 则唯一ID生成器可以将本次序列号置为0,以使下次生成唯一ID时,序列号从0开始累加,本次序列号置0后,将最新的第二时间戳确定为本次生成唯一ID的本次时间戳。
上述阻塞的步骤可使下次生成唯一ID的起始时间不等于本次上次生成出唯一ID的时间,从而使得下次生成过程与本次生成过程不连续,下次生成过程中执行步骤S1时,将判断为第一时间戳大于历史时间戳,进而通过步骤S24将下次序列号置为0,使得下次序列号不会超过序列号允许的最大值(即预设最大值)。
此外,在步骤S1之后,参照图5和图6,还可以包括以下步骤:
S3:若第一时间戳小于历史时间戳,则生成无效标识信息。
若当前的第一时间戳小于上次生成唯一ID的历史时间戳,说明本次生成唯一ID的起始时间早于上次生成出唯一ID的时间,时序有误,进而可以生成无效ID。
步骤207:虚拟云服务器集群对本次时间戳进行编码,获得第一数值。
参照图5和图6,唯一ID生成器得到本次时间戳后,可以对本次时间戳进行编码,从而获得第一数值。在本公开实施例中,第一数值与本次生成唯一ID的时间戳相关,因此具有唯一性。
步骤208:对于每个镜像数据,虚拟云服务器集群从镜像数据中读取项目代码仓库的存储地址,以及镜像数据对应的分支名称,其中,不同开发阶段的分支数据均存储在后端开发设备的项目代码仓库中,不同开发阶段的镜像数据中包括项目代码仓库的存储地址,以及镜像数据对应的分支名称。
图7示出了一种唯一ID生成器生成唯一ID的流程图,参照图7,对于每个镜像数据,唯一ID生成器可以从镜像数据中读取项目代码仓库的存储地址,以及镜像数据对应的分支名称。其中,不同项目(例如maven项目)的代码仓库不同,代码仓库的存储地址也就不同,而同一项目中不同镜像数据对应的分支名称不同。
步骤209:虚拟云服务器集群根据项目代码仓库的存储地址和镜像数据对应的分支名称,生成第二数值。
唯一ID生成器可以根据项目代码仓库的存储地址和镜像数据对应的分支名称,生成与镜像数据所属项目及对应分支相关的第二数值。
在一些实施例中,参照图7,步骤209具体可以通过下述步骤实现,包括:
对项目代码仓库的存储地址进行哈希编码,获得第一哈希值;
对镜像数据对应的分支名称进行哈希编码,获得第二哈希值,得到包括第一哈希值和第二哈希值的第二数值。
其中,唯一ID生成器可以通过哈希(Hash)算法,分别对项目代码仓库的存储地址以及镜像数据对应的分支名称进行哈希编码,从而获得与项目相关的第一哈希值,以及与镜像对应分支相关的第二哈希值,第二数值即包括第一哈希值和第二哈希值。
步骤210:虚拟云服务器集群对第一数值和第二数值进行组合或运算,获得镜像数据对应的标识信息,其中,标识信息用于区分不同的镜像数据。
在第二数值包括第一哈希值和第二哈希值的情况下,步骤210可以包括:
对第一数值、第一哈希值和第二哈希值进行组合或运算,获得镜像数据对应的标识信息。
其中,组合的方式可以是按照预设的排列顺序,将第一数值、第一哈希值和第二哈希值组合为一个数值,该数值即为镜像数据的唯一ID。运算的方式可以是按照预设的运算方法,例如加法、乘法等,对第一数值、第一哈希值和第二哈希值进行运算而得到一个计算结果,该计算结果即为镜像数据的唯一ID。
在本公开实施例中,第一数值具有唯一性,第二数值与镜像数据的所属项目及对应分支相关,因此,基于第一数值和第二数值所获得的标识信息,不仅能够用于区分不同的镜像数据,还能够反映镜像数据的所属项目及对应分支,如此,当镜像数据在运维过程中出现问题时,可以根据镜像数据的标识信息,快速找到出现问题的项目及分支,提高了运维效率。
当然,在实际应用中,还可选地,唯一ID还可以采用UUID(Universally Unique Identifier,通用唯一识别码)生成器、Redis原子性自增、雪花算法等方式生成,本公开实施例对此不作限定。
在实际应用中,在一组开发环境电子地图数据镜像、测试环境电子地图数据镜像和生产环境电子地图数据镜像发布之后,当图纸对应的实际场地有区域删减(例如某建筑规划至园区之外)、区域合并(例如增加区域并入停车场,以扩充车位)等变更时,可以在后端开发设备中首先修改电子地图, 将需要删减的区域从电子地图中删除,或者将需要并入的区域在电子地图中进行绘制,从而得到更新后的电子地图,进而经过其他开发之后得到新的开发分支数据。进而再经过测试等环节得到新的测试分支数据和新的预发布分支数据,然后再通过步骤203-210,得到新的一组开发环境电子地图数据镜像、测试环境电子地图数据镜像和生产环境电子地图数据镜像,从而实现电子地图的区域删减及区域合并。
每次实际场地有变化时,便可基于变化后的实际场地获得三个镜像数据,并且每次发布的三个镜像数据均可以保存在虚拟云服务器集群中,并通过在集群范围内具有唯一性的标识信息进行区分。
此外,在一些实施例中,步骤210之后还可以包括以下步骤:
对每个镜像数据配置对应的数据处理接口,其中,数据处理接口用于对与数据处理接口对应的镜像数据进行增加数据、删除数据、修改数据以及查找数据。
其中,镜像数据存储在虚拟云服务器集群的特定设备中,当需要根据镜像数据进行统计、分析等操作时,需要从相应的设备中读取镜像数据中的相关数据,因此,虚拟云服务器集群可以对每个镜像数据配置对应的数据处理接口,并对其他设备开放该数据处理接口,从而其他设备可通过该数据处理接口,进行相关数据的增改删查。
在本公开实施例中,在整个运维过程中,各数据或处理过程都可以实现可视化,以便于开发人员更高效地进行电子地图的开发及维护。
在本公开实施例中,后端开发设备首先获取待更新的目标电子地图数据,然后依次生成目标电子地图数据对应的不同开发阶段的镜像数据,并依次将各个镜像数据发布至虚拟云服务器集群,其中,各个镜像数据中的最后一个开发阶段的镜像数据构成新版电子地图数据,各个镜像数据中的其他镜像数据构成旧版电子地图处理过程数据,之后虚拟云服务器集群可以生成每个镜像数据对应的标识信息,用以区分不同的镜像数据。在本公开实施例中,在将新版电子地图数据发布至虚拟云服务器集群的同时,可以保留旧版电子地图处理过程数据,并通过具有唯一性的标识信息区分各个镜像数据,实现了对历史电子地图数据的维护和管理,并为版本回滚提供了基础。
参照图8,示出了本公开实施例的一种电子地图数据使用方法的步骤流程图,该方法应用于如上所述的电子地图运维方法中的电子地图服务系统100,参照图9,电子地图服务系统100还包括业务服务器集群30,虚拟云服务器集群20与业务服务器集群30通信连接,用户终端200与业务服务器集群30通信连接。
在一些实施例中,业务服务器集群30可以在虚拟云服务器集群20提供的镜像数据(电子地图数据)的基础上,提供进一步的服务,例如地图所指示区域的安防服务、运维服务等。
该方法可用于对通过如上所述的电子地图运维方法获得的镜像数据进行使用,该方法包括以下步骤:
步骤301:业务服务器集群接收用户终端发送的电子地图下载请求。
当用户需要查看电子地图时,用户终端可以通过电子地图客户端,向业务服务器集群发送电子地图下载请求,以请求获取当前最新版的电子地图数据。
步骤302:业务服务器集群响应于电子地图下载请求,向虚拟云服务器集群发送对新版电子地图数据的获取请求。
业务服务器集群接收到该电子地图下载请求,并进行响应,进而向虚拟云服务器集群发送对新版电子地图数据的获取请求。
步骤303:虚拟云服务器集群响应于获取请求,将新版电子地图数据发送至业务服务器集群。
虚拟云服务器集群接收到该电子地图下载请求,并进行响应,进而将新版电子地图数据,也即生产环境电子地图镜像数据,返回给业务服务器集群。
步骤304:业务服务器集群将新版电子地图数据发送至用户终端。
业务服务器集群收到新版电子地图数据后,可以返回给请求电子地图数据的用户终端。在本公开实施例中,地图数据服务可以由虚拟云服务器集群提供,业务服务可以由业务服务器集群提供,业务服务和地图数据服务分别存放在不同的服务器集群中,实现两者的解耦,服务器解耦意味着将服务器的计算、内存等资源进行区分,以便根据每项工作负载的具体需要来分配服务器资源,可提高提供服务的效率。
可选地,参照图10,该方法还可以包括以下步骤:
业务服务器集群通过向虚拟云服务器集群进行轮询,检测虚拟云服务器集群是否有电子地图数据的更新;
虚拟云服务器集群在更新得到新的新版电子地图数据时,将新的新版电子地图数据发送至业务服务器集群;
业务服务器集群在接收到新的新版电子地图数据时,向用户终端发送提示信息,其中,提示信息用于提示终端用户下载新的新版电子地图数据,以更新至最新的电子地图。
在本公开实施例中,业务服务器集群可以通过轮询机制,主动监测虚拟云服务器集群是否有电子地图数据的更新,若有更新,则基于轮询机制,虚拟云服务器集群在更新完毕后,可以马上将更新后的电子地图数据返回给业务服务器集群。
可选地,在业务服务器为Web服务器的情况下,业务服务器集群与虚拟云服务器集群之间可采用WebSocket(网络套接字)连接进行通信,相应地,轮询方式可以采用WebSocket轮询。
在此之前,业务服务器集群与虚拟云服务器集群之间首先需要建立可实现轮询机制的通信连接。以WebSocket连接为例,业务服务器集群首先发起请求,请求升级至WebSocket通信协议,虚拟云服务器集群接收到请求后,可向业务服务器集群返回响应协议升级消息,从而建立起二者之间的WebSocket连接,然后业务服务器集群可以进行轮询。
业务服务器集群进行轮询时,首先可以向虚拟云服务器集群发起询问,以询问虚拟云服务器集群是否有电子地图数据的更新,若无更新,则虚拟云服务器集群不进行应答,若有更新,则虚拟云服务器集群可将最新的电子地图数据返回给业务服务器集群。在业务服务器集群,需要设置询问后等待虚拟云服务器集群应答的时长,以及本次询问结束与下次询问开始之间的时间间隔,若该时长内虚拟云服务器集群未应答,则认为无更新,本次询问结束,然后在经过该时间间隔后再进行下一次询问。
当然,在实际应用中,若用户端主动请求新版电子地图数据的下载(即步骤301),则业务服务器集群可以先暂停轮询,然后通过步骤302-304,即时向虚拟云服务器集群请求最新的电子地图数据,以反馈给用户端。业务服 务器集群请求后可以等待一段时间(该时间通常很短,例如几秒),若经过一段时间后仍未从虚拟云服务器集群获得最新的电子地图数据,则说明此时业务服务器集群通过之前轮询获得的电子地图数据已是最新的电子地图数据,进而业务服务器集群可以直接将本地的最新电子地图直接返回给用户端。
相较于只有用户端请求时,业务服务器集群才从虚拟云服务器集群获取最新电子地图数据的方案,本公开实施例通过增加业务服务器集群向虚拟云服务器集群的轮询机制,可使业务服务器集群在第一时间从虚拟云服务器集群获取到最新电子地图数据,从而当用户端发起请求时,业务服务器集群能够迅速对用户端请求作出响应,很快将最新电子地图数据发送至用户端,缩短了用户端获取到最新电子地图数据时间,提高了用户体验。
另外,本公开实施例还可以在业务服务器集群中配置最新电子地图数据的判断重复机制,以应对虚拟云服务器集群可能重复发送电子地图数据的情况。具体地,在实际应用中,虚拟云服务器集群可能由于出错,在没有更新电子地图数据的情况下,错认为存在更新,进而向业务服务器集群发送之前已发送过的电子地图数据。业务服务器集群中可以设置缓存,用于存储每次从虚拟云服务器集群获取的电子地图数据,业务服务器集群每次从虚拟云服务器集群接收到一个电子地图数据,便可将该电子地图数据的唯一性标识信息与缓存中其他电子地图数据的唯一性标识信息进行对比,若缓存中存在相同唯一性标识信息的电子地图数据,则说明业务服务器集群之前已收到过该电子地图数据,进而业务服务器集群可以将本次接收到的电子地图数据删除,之后便无需进行对该电子地图数据的相关操作,从而节约了业务服务器集群的资源。
业务服务器集群在获取到最新电子地图数据后,可以马上通过消息推送机制,将提示用户可更新电子地图。
在本公开实施例中,通过轮询机制,业务服务器集群可以在第一时间获得最新的电子地图数据,从而方便用户终端及时更新电子地图,避免了用户使用旧版电子地图而出现导航错误等问题。另外,通过消息推送机制,业务服务器集群可以提示用户更新电子地图,而不是直接发送到用户终端实现更新,如此,可以避免影响正在使用旧版电子地图的用户。
当然,在实际应用中,也可以是用户终端在每次需要使用电子地图时, 首先通过业务服务器集群确定虚拟云服务器集群中是否有电子地图数据的更新,若有,则将当前最新版的电子地图数据返回给用户终端,若无,则通知用户终端,用户终端使用当前本地存储的电子地图数据即可。
在一些实施例中,终端用户可以将电子地图数据下载至终端本地,然后进行离线使用。在这种情况下,业务服务器集群可以通过轮询机制更新本地的电子地图数据,而不会影响离线使用电子地图的用户。
在另一些实施例中,终端用户可以在终端与业务服务器集群保持通信连接的情况下,在线使用业务服务器集群中的电子地图数据,而不需要将电子地图数据下载至终端本地。
在这种情况下,可选地,虚拟云服务器集群可以设置为在没有用户使用或较少用户在线使用的时间,进行电子地图数据的定时发布,从而业务服务器集群可以在该时间对本地的电子地图数据进行更新,以避免大规模影响在线用户的使用。
在这种情况下,还可选地,业务服务器集群可以对所有终端用户进行电子地图数据的灰度更新,业务服务器集群从虚拟云服务器集群获取到最新电子地图数据时,仍存在一些用户正在在线使用旧版电子地图数据,则业务服务器集群可以同时保留最新电子地图数据和旧版电子地图数据,并对之后接入业务服务器集群的用户提供最新电子地图数据,但对此刻在线的用户仍然继续提供旧版电子地图。当使用旧版电子地图数据的用户离线后又再次接入业务服务器集群时,业务服务器集群就对该用户也提供最新电子地图数据,直至使用旧版电子地图的用户全部经过离线,业务服务器集群便可将该旧版电子地图数据删除,从而彻底切换为新版电子地图来提供地图服务。在该方案中,可以保证在线用户的本次电子地图数据使用不受影响,且下次上线能够使用到最新的电子地图数据。
参照图11,电子地图服务系统100还可以包括反向代理服务器集群40,业务服务器集群30通过反向代理服务器集群40与用户终端200通信连接。其中,后端开发设备10、虚拟云服务器集群20、业务服务器集群30和反向代理服务器集群40属于后端,用户终端200属于前端。
相应地,步骤301可以包括以下步骤:反向代理服务器集群接收用户终端发送的电子地图下载请求;反向代理服务器集群根据预设的调度机制,将 电子地图下载请求调度至业务服务器集群中的目标业务服务器;目标业务服务器接收电子地图下载请求。
步骤302可以包括以下步骤:目标业务服务器响应于电子地图下载请求,向虚拟云服务器集群发送对新版电子地图数据的获取请求。
步骤304可以包括以下步骤:目标业务服务器将新版电子地图数据发送至反向代理服务器集群;反向代理服务器集群将新版电子地图数据发送至用户终端。
其中,用户终端的电子地图下载请求首先发送到反向代理服务器集群,反向代理服务器集群可基于调度机制,提供反向代理服务,从而将电子地图下载请求调度至业务服务器集群中的目标业务服务器,进而由目标业务服务器处理该用户终端的请求。通过反向代理机制,可以将用户请求调度至承接该请求的业务服务器,而对用户隐藏实际提供服务的业务服务器,用户不需要知道实际提供服务的业务服务器地址,也无须在用户前端进行配置。在一些实施例中,业务服务器可以为Web(网站)服务器,反向代理服务器可用来进行Web加速,即使用反向代理服务器作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。
进一步可选地,该方法还可以包括以下步骤:
业务服务器集群向虚拟云服务器集群发送大数据服务请求;
虚拟云服务器集群响应于大数据服务请求,从至少一个镜像数据中获取所需的相关数据;
虚拟云服务器集群根据大数据服务请求,对相关数据进行数据处理,得到处理结果;
虚拟云服务器集群将处理结果发送至业务服务器集群。
在本公开实施例中,虚拟云服务器集群不仅可以提供地图数据服务,还可以提供大数据服务,例如大数据的计算、统计、分析、可视化处理等服务。其中,虚拟云服务器集群可以部署数据分析算法包,用于提供例如回归分析、决策树分析等大数据服务,虚拟云服务器集群还可以部署数据可视化工具集,用于提供例如自动化报表生成、AB测试数据可视化图表制作等大数据服务。
当业务服务器集群有需要时,可以向虚拟云服务器集群发送大数据服务请求,虚拟云服务器集群接收到该请求后进行响应,从至少一个镜像数据中 获取进行本次大数据服务所需的相关数据,其中,获取什么样数据与所请求的服务相关。虚拟云服务器集群进而可以所请求的大数据服务,对相关数据进行数据处理,得到处理结果,其中,进行什么样处理与所请求的服务相关。
上述响应于大数据服务请求,从至少一个镜像数据中获取所需的相关数据的步骤,具体可以包括:
响应于大数据服务请求,通过镜像数据在虚拟云服务器集群所属的局域网中的地址和端口,从至少一个镜像数据中获取所需的相关数据。
在实际应用中,数据分析算法包或数据可视化工具集,可以与各个镜像数据存放在虚拟云服务器集群中的不同实体服务器中,因此,参照图12,数据分析算法包或数据可视化工具集(图12以数据分析算法包为例)所在的实体服务器在提供大数据服务之前,需要首先通过相应的局域网地址和端口,与所需镜像数据所在的实体服务器建立连接,进而可以通过该局域网地址和端口抓取该镜像数据中的相关数据。
之后,参照图12,数据分析算法包或数据可视化工具集便可以通过模型或工具,对抓取到的相关数据进行数据处理。
可选地,上述对相关数据进行数据处理的步骤,具体可以包括:
通过数据分析模型,对相关数据进行数据分析;
和/或,
根据相关数据,生成可视化图表。
其中,参照图12,虚拟云服务器集群可以将数据分析结果、可视化图表等大数据服务处理结果返回给业务服务器集群,进而业务服务器集群可以基于数据分析结果或可视化图表,进一步提供其他服务。
在本公开实施例中,将地图数据服务和大数据服务统一在虚拟云服务器集群中进行,实现了计算服务和地图数据在统一局域网下调用,提高了大数据算法的运行效率;将业务服务和地图数据服务存放在不同的服务器集群中进行,实现两者的解耦,使业务服务器能专注于处理电子地图所指示区域(例如园区)的相关业务服务(例如安防服务),而不必为存储和维护地图数据消耗更多的计算、网络调用、存储等资源。
在本公开实施例中,业务服务器集群接收到用户终端发送的电子地图下载请求时进行响应,向虚拟云服务器集群发送对新版电子地图数据的获取请 求,虚拟云服务器集群响应于该获取请求,将新版电子地图数据返回给业务服务器集群,业务服务器集群进而将新版电子地图数据返回给用户终端,以向用户终端提供电子地图的相关服务,实现了电子地图数据的获取和使用。
本公开实施例还公开了一种电子地图服务系统,参照图2、图9和图11,包括后端开发设备和虚拟云服务器集群,所述后端开发设备与所述虚拟云服务器集群通信连接;
所述后端开发设备,配置为获取待更新的目标电子地图数据;依次生成所述目标电子地图数据对应的不同开发阶段的镜像数据;依次将各个所述镜像数据发布至所述虚拟云服务器集群,其中,各个所述镜像数据中的最后一个开发阶段的镜像数据构成新版电子地图数据,各个所述镜像数据中除所述最后一个开发阶段的镜像数据之外的其他所述镜像数据构成旧版电子地图处理过程数据;
所述虚拟云服务器集群,配置为生成每个所述镜像数据对应的标识信息,其中,所述标识信息用于区分不同的所述镜像数据。
可选地,参照图9,所述电子地图服务系统还包括业务服务器集群,所述虚拟云服务器集群与所述业务服务器集群通信连接;
所述业务服务器集群,配置为向所述虚拟云服务器集群发送计算服务请求;
所述虚拟云服务器集群,还配置为响应于所述计算服务请求,从至少一个所述镜像数据中获取计算所需的相关数据;根据所述计算服务请求,对所述相关数据进行数据分析处理,得到分析结果;将所述分析结果发送至所述业务服务器集群。
可选地,参照图11,所述电子地图服务系统还包括反向代理服务器集群,所述业务服务器集群包括多个业务服务器,所述反向代理服务器集群与每个所述业务服务器均通信连接;
所述反向代理服务器集群,配置为根据预设的调度机制,将所述用户终端发送的请求调度至所述业务服务器集群中的一个所述业务服务器。
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本公开的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本公开可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
最后应说明的是:以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围。

Claims (20)

  1. 一种电子地图运维方法,其特征在于,应用于电子地图服务系统,所述电子地图服务系统包括后端开发设备和虚拟云服务器集群,所述后端开发设备与所述虚拟云服务器集群通信连接,所述方法包括:
    所述后端开发设备获取待更新的目标电子地图数据;
    所述后端开发设备依次生成所述目标电子地图数据对应的不同开发阶段的镜像数据;
    所述后端开发设备依次将各个所述镜像数据发布至所述虚拟云服务器集群,其中,各个所述镜像数据中的最后一个开发阶段的镜像数据构成新版电子地图数据,各个所述镜像数据中除所述最后一个开发阶段的镜像数据之外的其他所述镜像数据构成旧版电子地图处理过程数据;
    所述虚拟云服务器集群生成每个所述镜像数据对应的标识信息,其中,所述标识信息用于区分不同的所述镜像数据。
  2. 根据权利要求1所述的方法,其特征在于,所述依次生成所述目标电子地图数据对应的不同开发阶段的镜像数据,包括:
    依次生成所述目标电子地图数据对应的不同开发阶段的分支数据;
    每生成一个所述分支数据之后,将所述分支数据打包为过程文件;
    将所述过程文件构建为镜像数据;
    其中,所述不同开发阶段的分支数据包括开发分支数据、测试分支数据和预发布分支数据,相应地,所述不同开发阶段的镜像数据包括开发环境电子地图数据镜像、测试环境电子地图数据镜像和生产环境电子地图数据镜像。
  3. 根据权利要求2所述的方法,其特征在于,所述依次将各个所述镜像数据发布至虚拟云服务器集群,包括:
    每构建出一个所述镜像数据之后,将所述镜像数据发布至虚拟云服务器集群。
  4. 根据权利要求2所述的方法,其特征在于,所述不同开发阶段的分支数据均存储在所述后端开发设备的项目代码仓库中,所述不同开发阶段的镜像数据中包括所述项目代码仓库的存储地址,以及所述镜像数据对应的分支名称;
    所述生成每个所述镜像数据对应的标识信息,包括:
    根据当前时间戳,以及上次生成所述标识信息的历史时间戳,确定本次生成所述标识信息的本次时间戳;
    对所述本次时间戳进行编码,获得第一数值;
    对于每个所述镜像数据,从所述镜像数据中读取所述项目代码仓库的存储地址,以及所述镜像数据对应的分支名称;
    根据所述项目代码仓库的存储地址和所述镜像数据对应的分支名称,生成第二数值;
    对所述第一数值和所述第二数值进行组合或运算,获得所述镜像数据对应的标识信息。
  5. 根据权利要求4所述的方法,其特征在于,所述根据当前时间戳,以及上次生成所述标识信息的历史时间戳,确定本次生成所述标识信息的本次时间戳,包括:
    判断当前的第一时间戳是否小于上次生成所述标识信息的历史时间戳;
    若所述第一时间戳大于或等于所述历史时间戳,则将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳。
  6. 根据权利要求5所述的方法,其特征在于,所述根据当前时间戳,以及上次生成所述标识信息的历史时间戳,确定本次生成所述标识信息的本次时间戳之前,还包括:
    在上次生成所述标识信息的操作所对应的历史序列号的基础上进行累加,得到本次生成所述标识信息的操作所对应的本次序列号;
    所述若所述第一时间戳大于或等于所述历史时间戳,则将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳,包括:
    若所述第一时间戳等于所述历史时间戳,则判断所述本次序列号是否等于预设最大值;
    若所述本次序列号等于所述预设最大值,则阻塞预设时长以释放临时资源,并将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳;
    若所述本次序列号小于所述预设最大值,则将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳。
  7. 根据权利要求6所述的方法,其特征在于,所述若所述第一时间戳大于或等于所述历史时间戳,则将最新的第二时间戳确定为本次生成所述标识 信息的本次时间戳,包括:
    若所述第一时间戳大于所述历史时间戳,则将所述本次序列号置为0,并将最新的第二时间戳确定为本次生成所述标识信息的本次时间戳。
  8. 根据权利要求5所述的方法,其特征在于,所述判断当前的第一时间戳是否小于上次生成所述标识信息的历史时间戳之后,还包括:
    若所述第一时间戳小于所述历史时间戳,则生成无效标识信息。
  9. 根据权利要求4所述的方法,其特征在于,所述根据所述项目代码仓库的存储地址和所述镜像数据对应的分支名称,生成第二数值,包括:
    对所述项目代码仓库的存储地址进行哈希编码,获得第一哈希值;
    对所述镜像数据对应的分支名称进行哈希编码,获得第二哈希值,得到包括所述第一哈希值和所述第二哈希值的第二数值;
    所述对所述第一数值和所述第二数值进行组合或运算,获得所述镜像数据对应的标识信息,包括:
    对所述第一数值、所述第一哈希值和所述第二哈希值进行组合或运算,获得所述镜像数据对应的标识信息。
  10. 根据权利要求1所述的方法,其特征在于,所述生成每个所述镜像数据对应的标识信息之后,还包括:
    对每个所述镜像数据配置对应的数据处理接口,其中,所述数据处理接口用于对与所述数据处理接口对应的所述镜像数据进行增加数据、删除数据、修改数据以及查找数据。
  11. 一种电子地图数据使用方法,其特征在于,应用于如权利要求1-10任一项所述的电子地图运维方法中的电子地图服务系统,所述电子地图服务系统还包括业务服务器集群,所述虚拟云服务器集群与所述业务服务器集群通信连接,所述方法用于对通过如权利要求1-10任一项所述的电子地图运维方法获得的所述镜像数据进行使用,所述方法包括:
    所述业务服务器集群接收用户终端发送的电子地图下载请求;
    所述业务服务器集群响应于所述电子地图下载请求,向所述虚拟云服务器集群发送对所述新版电子地图数据的获取请求;
    所述虚拟云服务器集群响应于所述获取请求,将所述新版电子地图数据 发送至所述业务服务器集群;
    所述业务服务器集群将所述新版电子地图数据发送至所述用户终端。
  12. 根据权利要求11所述的方法,其特征在于,所述方法还包括:
    所述业务服务器集群通过向所述虚拟云服务器集群进行轮询,检测所述虚拟云服务器集群是否有电子地图数据的更新;
    所述虚拟云服务器集群在更新得到新的新版电子地图数据时,将所述新的新版电子地图数据发送至所述业务服务器集群;
    所述业务服务器集群在接收到所述新的新版电子地图数据时,向用户终端发送提示信息,其中,所述提示信息用于提示终端用户下载所述新的新版电子地图数据,以更新至最新的电子地图。
  13. 根据权利要求11所述的方法,其特征在于,所述电子地图服务系统还包括反向代理服务器集群,所述业务服务器集群通过所述反向代理服务器集群与所述用户终端通信连接。
  14. 根据权利要求13所述的方法,其特征在于,所述业务服务器集群接收用户终端发送的电子地图下载请求,包括:所述反向代理服务器集群接收用户终端发送的电子地图下载请求;所述反向代理服务器集群根据预设的调度机制,将所述电子地图下载请求调度至所述业务服务器集群中的目标业务服务器;所述目标业务服务器接收所述电子地图下载请求;
    所述业务服务器集群响应于所述电子地图下载请求,向所述虚拟云服务器集群发送对所述新版电子地图数据的获取请求,包括:所述目标业务服务器响应于所述电子地图下载请求,向所述虚拟云服务器集群发送对所述新版电子地图数据的获取请求;
    所述业务服务器集群将所述新版电子地图数据发送至所述用户终端,包括:所述目标业务服务器将所述新版电子地图数据发送至所述反向代理服务器集群;所述反向代理服务器集群将所述新版电子地图数据发送至所述用户终端。
  15. 根据权利要求11所述的方法,其特征在于,所述方法还包括:
    所述业务服务器集群向所述虚拟云服务器集群发送大数据服务请求;
    所述虚拟云服务器集群响应于所述大数据服务请求,从至少一个所述镜像数据中获取所需的相关数据;
    所述虚拟云服务器集群根据所述大数据服务请求,对所述相关数据进行数据处理,得到处理结果;
    所述虚拟云服务器集群将所述处理结果发送至所述业务服务器集群。
  16. 根据权利要求15所述的方法,其特征在于,所述响应于所述大数据服务请求,从至少一个所述镜像数据中获取所需的相关数据,包括:
    响应于所述大数据服务请求,通过所述镜像数据在所述虚拟云服务器集群所属的局域网中的地址和端口,从至少一个所述镜像数据中获取所需的相关数据。
  17. 根据权利要求15所述的方法,其特征在于,所述对所述相关数据进行数据处理,包括:
    通过数据分析模型,对所述相关数据进行数据分析;
    和/或,
    根据所述相关数据,生成可视化图表。
  18. 一种电子地图服务系统,其特征在于,包括后端开发设备和虚拟云服务器集群,所述后端开发设备与所述虚拟云服务器集群通信连接;
    所述后端开发设备,配置为获取待更新的目标电子地图数据;依次生成所述目标电子地图数据对应的不同开发阶段的镜像数据;依次将各个所述镜像数据发布至所述虚拟云服务器集群,其中,各个所述镜像数据中的最后一个开发阶段的镜像数据构成新版电子地图数据,各个所述镜像数据中除所述最后一个开发阶段的镜像数据之外的其他所述镜像数据构成旧版电子地图处理过程数据;
    所述虚拟云服务器集群,配置为生成每个所述镜像数据对应的标识信息,其中,所述标识信息用于区分不同的所述镜像数据。
  19. 根据权利要求18所述的电子地图服务系统,其特征在于,所述电子地图服务系统还包括业务服务器集群,所述虚拟云服务器集群与所述业务服务器集群通信连接;
    所述业务服务器集群,配置为向所述虚拟云服务器集群发送计算服务请求;
    所述虚拟云服务器集群,还配置为响应于所述计算服务请求,从至少一 个所述镜像数据中获取计算所需的相关数据;根据所述计算服务请求,对所述相关数据进行数据分析处理,得到分析结果;将所述分析结果发送至所述业务服务器集群。
  20. 根据权利要求19所述的电子地图服务系统,其特征在于,所述电子地图服务系统还包括反向代理服务器集群,所述业务服务器集群包括多个业务服务器,所述反向代理服务器集群与每个所述业务服务器均通信连接;
    所述反向代理服务器集群,配置为根据预设的调度机制,将所述用户终端发送的请求调度至所述业务服务器集群中的一个所述业务服务器。
PCT/CN2023/070400 2022-01-29 2023-01-04 电子地图运维方法、电子地图数据使用方法及服务系统 WO2023142924A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210111748.3 2022-01-29
CN202210111748.3A CN114490073A (zh) 2022-01-29 2022-01-29 电子地图运维方法、电子地图数据使用方法及服务系统

Publications (1)

Publication Number Publication Date
WO2023142924A1 true WO2023142924A1 (zh) 2023-08-03

Family

ID=81478645

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/070400 WO2023142924A1 (zh) 2022-01-29 2023-01-04 电子地图运维方法、电子地图数据使用方法及服务系统

Country Status (2)

Country Link
CN (1) CN114490073A (zh)
WO (1) WO2023142924A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114490073A (zh) * 2022-01-29 2022-05-13 京东方科技集团股份有限公司 电子地图运维方法、电子地图数据使用方法及服务系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002049624A (ja) * 2000-08-04 2002-02-15 Matsushita Electric Ind Co Ltd 地図データ提供装置、ナビゲーション装置およびナビゲーションシステム
CN106844537A (zh) * 2016-12-30 2017-06-13 重庆知行地理信息咨询服务有限公司 一种时空地图瓦片数据的组织管理方法
CN107066296A (zh) * 2017-03-31 2017-08-18 北京奇艺世纪科技有限公司 一种集群节点中镜像的清理方法及装置
CN111142879A (zh) * 2019-12-05 2020-05-12 深圳融卡智能科技有限公司 软件集成发布方法及自动运维平台
CN111443923A (zh) * 2020-03-26 2020-07-24 北京房天下嘉居网络技术有限公司 服务发布方法及装置
WO2021227564A1 (zh) * 2020-05-13 2021-11-18 国云科技股份有限公司 一种基于容器环境的应用自动交付系统
CN114490073A (zh) * 2022-01-29 2022-05-13 京东方科技集团股份有限公司 电子地图运维方法、电子地图数据使用方法及服务系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002049624A (ja) * 2000-08-04 2002-02-15 Matsushita Electric Ind Co Ltd 地図データ提供装置、ナビゲーション装置およびナビゲーションシステム
CN106844537A (zh) * 2016-12-30 2017-06-13 重庆知行地理信息咨询服务有限公司 一种时空地图瓦片数据的组织管理方法
CN107066296A (zh) * 2017-03-31 2017-08-18 北京奇艺世纪科技有限公司 一种集群节点中镜像的清理方法及装置
CN111142879A (zh) * 2019-12-05 2020-05-12 深圳融卡智能科技有限公司 软件集成发布方法及自动运维平台
CN111443923A (zh) * 2020-03-26 2020-07-24 北京房天下嘉居网络技术有限公司 服务发布方法及装置
WO2021227564A1 (zh) * 2020-05-13 2021-11-18 国云科技股份有限公司 一种基于容器环境的应用自动交付系统
CN114490073A (zh) * 2022-01-29 2022-05-13 京东方科技集团股份有限公司 电子地图运维方法、电子地图数据使用方法及服务系统

Also Published As

Publication number Publication date
CN114490073A (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
CN106888254B (zh) 一种基于Kubernetes的容器云架构及其各模块之间的交互方法
CN105703940B (zh) 一种面向多级调度分布式并行计算的监控系统及监控方法
WO2020253079A1 (zh) 基于Jmeter的分布式性能测试方法、装置、设备及存储介质
CN100418057C (zh) 用于应用程序分布式管理的启用网格的虚拟机的方法和系统
CN112035228B (zh) 一种资源调度方法及装置
US7587221B2 (en) Sensor network management system
CN102779185B (zh) 一种高可用分布式全文索引方法
US20120047107A1 (en) System and method for implementing on demand cloud database
US10990629B2 (en) Storing and identifying metadata through extended properties in a historization system
US20170192863A1 (en) System and method of failover recovery
CN101146127B (zh) 一种分布式系统中客户端缓存更新的方法和装置
CN112667362B (zh) Kubernetes上部署Kubernetes虚拟机集群的方法与系统
CN101188566A (zh) 一种集群环境下数据缓存同步的方法及系统
US20150363484A1 (en) Storing and identifying metadata through extended properties in a historization system
CN103077034B (zh) 混合虚拟化平台java应用迁移方法与系统
WO2023142924A1 (zh) 电子地图运维方法、电子地图数据使用方法及服务系统
CN103229143A (zh) 具有可扩展和可定制的计算引擎的面向网络服务的架构内的服务提供者
CN113315754B (zh) 容器出访防火墙智能联动方法及装置、设备、介质
CN115115329A (zh) 一种面向智能生产线的制造中间件及云制造架构
CN111324599A (zh) 一种区块链实验系统及管理方法
CN115640110A (zh) 分布式云计算系统调度方法和装置
CN115563224A (zh) 一种分布式参数缓存系统
JP2004086879A (ja) 遠隔でアクセス可能な資源を監視し、永続的で無矛盾の資源状態を提供する方法
CN112019362B (zh) 数据传输方法、装置、服务器、终端、系统及存储介质
CN110532000A (zh) 一种用于运营发布的kbroker分布式操作系统和运营发布系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23745809

Country of ref document: EP

Kind code of ref document: A1