[go: up one dir, main page]

CN113453340B - Service method, server cluster and LoRaWAN network system - Google Patents

Service method, server cluster and LoRaWAN network system Download PDF

Info

Publication number
CN113453340B
CN113453340B CN202010215305.XA CN202010215305A CN113453340B CN 113453340 B CN113453340 B CN 113453340B CN 202010215305 A CN202010215305 A CN 202010215305A CN 113453340 B CN113453340 B CN 113453340B
Authority
CN
China
Prior art keywords
server
uplink message
physical
servers
logical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010215305.XA
Other languages
Chinese (zh)
Other versions
CN113453340A (en
Inventor
揭鸿
陈东杰
王�华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN202010215305.XA priority Critical patent/CN113453340B/en
Publication of CN113453340A publication Critical patent/CN113453340A/en
Application granted granted Critical
Publication of CN113453340B publication Critical patent/CN113453340B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/52Allocation or scheduling criteria for wireless resources based on load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/53Allocation or scheduling criteria for wireless resources based on regulatory allocation policies
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

A service method, a server cluster and a LoRaWAN network system are disclosed. The server cluster is used for receiving the uplink message sent by the loRa node, wherein the server cluster comprises a plurality of physical servers, the physical servers are divided into a plurality of logic servers, each logic server comprises one or a plurality of physical servers, the logic servers correspond to one or a plurality of clients, the clients subscribe to one or a plurality of loRa nodes, and the physical servers forward the uplink message or data obtained by analyzing the uplink message to the logic server corresponding to the client subscribing to the loRa node sending the uplink message under the condition that the loRa node corresponding to the received uplink message does not belong to the loRa node subscribed to by the client corresponding to the logic server where the physical server is located. Therefore, the tenant isolation effect is achieved, and meanwhile, the resource occupation of the server is reduced.

Description

Service method, server cluster and LoRaWAN network system
Technical Field
The disclosure relates to the field of communications, and in particular, to a service method, a server cluster, and a lorewan network system.
Background
The communication network generally comprises an access network, a bearing network and a core network. The access network is a window and is responsible for receiving uplink data sent by the terminal node; the carrier network is a "truck" responsible for sending data to and from; the core network is the "management backbone" responsible for managing the data. Further, the core network mainly provides connection, management, and application-finished bearers as interfaces for the bearer network to the external network.
Taking the LoRaWAN network as an example, the LoRa base station is equivalent to an access network and is used for receiving the uplink message sent by the LoRa node and forwarding the uplink message to the core network through the bearing network such as WiFi, 4G, 5G and the like. The user may obtain data for the LoRa node through a subscription service. For example, a user may subscribe to data of a LoRa node through a subscription service provided by a particular platform, where the user may grant the platform rights to access its Message Queues (MQs). When the LoRa node uplinks the message, the core network will forward the relevant data stream to the MQ of the user.
In the above procedure, the core network creates a Producer for the user to send the message. As the number of users increases over time, there are a large number of producers in the core network system. Each Producer creates multiple threads (occupying system resources), resulting in a very large total number of threads for the core network.
Because the uplink message of the LoRa node is randomly requested to any one of the servers in the core network, a Producer is created in each server for the user to send data to the user. When the number of users grows to a certain extent, the system resources occupied by creating the Producer will exceed the performance limit of the core network, resulting in a breakdown of the core network system.
Therefore, a service scheme capable of reducing the resource occupation of servers in the core network is required.
Disclosure of Invention
One technical problem to be solved by the present disclosure is to provide a service scheme capable of reducing resource occupation of servers in a core network.
According to a first aspect of the present disclosure, a server cluster is provided, where the server cluster includes a plurality of physical servers, where the plurality of physical servers are divided into a plurality of logical servers, each logical server includes one or more physical servers, the logical servers correspond to one or more clients, the clients subscribe to one or more LoRa nodes, and the physical servers forward the uplink message or data obtained by parsing the uplink message to the logical server corresponding to the client subscribing to the LoRa node where the uplink message is sent, where the LoRa node corresponding to the received uplink message does not belong to the LoRa node subscribed to by the client corresponding to the logical server where the physical server is located.
According to a second aspect of the present disclosure, there is also provided a lorewan network system, comprising: a LoRa node; a LoRa gateway; and a server cluster according to the first aspect of the present disclosure, where the LoRa gateway is configured to forward an uplink packet sent by the LoRa node to a physical server in the server cluster.
According to a third aspect of the present disclosure, there is further provided a server cluster, configured to receive an uplink packet sent by a terminal node, where the server cluster includes a plurality of physical servers, where the plurality of physical servers are divided into a plurality of logical servers, each of the logical servers includes one or more physical servers, where the logical servers correspond to one or more clients, and the clients subscribe to one or more terminal nodes, and where the physical servers receive the uplink packet, the physical servers forward the uplink packet or data obtained by parsing the uplink packet to the logical server corresponding to the client subscribing to the terminal node sending the uplink packet, where the terminal node corresponding to the received uplink packet does not belong to the terminal node subscribed to the logical server corresponding to the logical server where the physical server is located.
According to a fourth aspect of the present disclosure, there is also provided a service method, including: dividing a plurality of physical servers into a plurality of logical servers, each of the logical servers comprising one or more physical servers; configuring one or more clients for each logical server, wherein the clients subscribe to one or more LoRa nodes; and under the condition that the physical server does not belong to the LoRa node subscribed by the client corresponding to the logical server where the physical server is located, controlling the physical server to forward the uplink message or the data obtained by analyzing the uplink message to the logical server corresponding to the client subscribed to the LoRa node sending the uplink message.
According to a fifth aspect of the present disclosure, there is also provided a service method, including: dividing a plurality of physical servers into a plurality of logical servers, each of the logical servers comprising one or more physical servers; configuring one or more clients for each logical server, wherein the clients subscribe to one or more terminal nodes; and under the condition that the terminal node corresponding to the received uplink message does not belong to the terminal node subscribed by the client corresponding to the logical server where the physical server is located, controlling the physical server to forward the uplink message or data obtained by analyzing the uplink message to the logical server corresponding to the client subscribed to the terminal node sending the uplink message.
According to a sixth aspect of the present disclosure, there is provided a computing device comprising: a processor; and a memory having executable code stored thereon which, when executed by the processor, causes the processor to perform the method as described in the fourth or fifth aspect above.
According to a seventh aspect of the present disclosure there is provided a non-transitory machine-readable storage medium having stored thereon executable code which, when executed by a processor of an electronic device, causes the processor to perform the method as described in the fourth or fifth aspect above.
Therefore, the server clusters are divided into logic servers corresponding to the specific clients, and directional circulation is carried out among the servers, so that the user quantity can be linearly improved through horizontal capacity expansion while the tenant isolation effect is realized, and the resource occupation of the servers is reduced.
Drawings
The foregoing and other objects, features and advantages of the disclosure will be apparent from the following more particular descriptions of exemplary embodiments of the disclosure as illustrated in the accompanying drawings wherein like reference numbers generally represent like parts throughout exemplary embodiments of the disclosure.
Fig. 1 shows a schematic diagram of a service method according to one embodiment of the present disclosure.
Fig. 2 shows a schematic diagram of a structure of a server cluster according to an embodiment of the disclosure.
Fig. 3 shows a schematic diagram of the heartbeat time of a logical server and a physical server within the logical server recorded by the state maintenance device.
Fig. 4 shows a schematic structural diagram of a computing device according to an embodiment of the present disclosure.
Detailed Description
Preferred embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While the preferred embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
A core network in a communication network comprises a plurality of servers, which may be referred to as a server cluster or a core network cluster. The uplink data (such as an uplink message) sent by the terminal node may be received by the access network and sent to the core network by the access network through the bearer network, where the uplink data may be sent randomly to any one server in the server cluster.
Taking the LoRaWAN network as an example, the terminal node mentioned in the disclosure is a LoRa node, the access network is a LoRa base station, and the carrier network can be but is not limited to WiFi, 4G, 5G, and the like. A client (i.e., user) may subscribe to one or more LoRa nodes via a particular platform such that the core network sends the data of the LoRa nodes to the client.
In order to reduce the resource occupation of the servers in the server cluster, the present disclosure proposes that a plurality of servers (which may be physical servers for convenience of distinction) in the server cluster may be divided into a plurality of logical servers according to clients that provide services to the servers (i.e., clients subscribed to the LoRa node), where each logical server corresponds to one or more clients.
As an example, physical servers in a client cluster may be partitioned according to client priority. For example, users corresponding to clients may be classified into important clients for which logical servers composed of a first number of physical servers may be set and general clients for which logical servers composed of a second number of physical servers may be set, the first number being greater than the second number.
In the present disclosure, each logical server includes one or more physical servers. A physical server refers to a real and independent server, and a logical server is composed of one or more physical servers. Different logical servers may share one or more of the same physical servers.
The access network (such as a LoRa base station) can randomly send the uplink message sent by the terminal node (such as a LoRa node) to any physical server in the server cluster through the bearer network (such as WiFi, 4G, etc.).
After receiving the uplink message, the physical server can determine whether the uplink message is sent by a terminal node subscribed by a client corresponding to a logical server where the physical server is located.
The physical server may send the uplink message or data obtained by analyzing the uplink message to the client under the condition that the terminal node corresponding to the received uplink message belongs to the terminal node subscribed by the client corresponding to the logical server where the physical server is located. As an example, the physical server may send the uplink message or data obtained by parsing the uplink message to a Message Queue (MQ) corresponding to the client. The server can send the uplink message or data obtained by analyzing the uplink message to the message queue corresponding to the client through communication with the specific platform. The present disclosure also supports data disaster recovery, which can perform data backup for data in the MQ, and when the MQ becomes unavailable, retry can be performed continuously according to the backup.
The physical server may forward the uplink message or data obtained by analyzing the uplink message to the logical server corresponding to the client subscribing the terminal node sending the uplink message when the terminal node corresponding to the received uplink message does not belong to the terminal node subscribed by the client corresponding to the logical server where the physical server is located.
As an example, the physical server may transfer the uplink message or the data stream obtained by analyzing the uplink message to the corresponding logical server in a push mode (push) and/or a pull mode (pull). Alternatively, the directional request may be made by push mode preferentially, automatically degrading to pull mode upon failure of push mode.
Push mode is a technique based on a client/server mechanism, where the server actively sends information to the client, and may be implemented by an RPC framework (e.g., dubbo, HSF). For example, the physical server may publish the uplink message or the data obtained by analyzing the uplink message to a logical server corresponding to a client subscribed to the LoRa node that sends the uplink message.
The pull mode is the transaction actively initiated by the client as opposed to the push mode. For example, the physical server may store the uplink message or the data obtained by analyzing the uplink message to a predetermined address (such as a database queue), and the logical server corresponding to the client of the LoRa node that sends the uplink message obtains the uplink message or the data obtained by analyzing the uplink message from the predetermined address.
Compared with the scheme of creating the Producer for each client on each server, the method and the device have the advantages that the server clusters are divided into the logic servers corresponding to the specific clients, and the directional circulation is carried out among the servers, so that the user quantity can be linearly improved through horizontal capacity expansion while the tenant isolation effect is achieved, and the resource occupation of the servers is reduced. The tenant isolation refers to that a multi-tenant technology is used for guaranteeing the logical isolation of machines, and clients do not interfere with each other.
Fig. 1 shows a schematic diagram of a service method according to one embodiment of the present disclosure.
As shown in fig. 1, the server cluster includes physical servers 10.0.0.1, 10.0.0.2, 10.0.0.3, and 10.0.0.4, and the clients include a client a, a client B, and a client C. The users corresponding to the client a may be key clients, and the users corresponding to the client B and the client C may be ordinary clients.
Two physical servers 10.0.0.1 and 10.0.0.3 can be divided for key clients, and a single physical server 10.0.0.2 and a single physical server 10.0.0.4 can be respectively divided for common clients. That is, the physical servers 10.0.0.1 and 10.0.0.3 may be divided into logical servers a corresponding to the clients a. The physical server 10.0.0.2 is divided into logical servers B corresponding to clients B, and the physical server 10.0.0.4 is divided into logical servers C corresponding to clients C.
When the uplink message of the node a subscribed to by the client a is received by the physical server 10.0.0.2, the physical server 10.0.0.2 belongs to the logical server B, and the logical server B does not serve the client a. Therefore, the physical server 10.0.0.2 may forward the uplink message or the data obtained by parsing the uplink message to the logical server a. The physical server 10.0.0.2 may forward the uplink message or the data obtained by analyzing the uplink message to any or all physical servers in the logical server a.
Similarly, when the uplink message of the node B subscribed to by the client B is received by the physical server 10.0.0.4, the logical server C does not serve the client B because the physical server 10.0.0.4 belongs to the logical server C. Therefore, the physical server 10.0.0.4 may forward the uplink message or the data obtained by parsing the uplink message to the logical server B (i.e. the physical server 10.0.0.2).
The present disclosure may also provide for a state maintenance device in a server cluster. The physical server may periodically send a message to the state maintenance device, and the state maintenance device may determine whether the physical server in the logical server is available according to the message reception situation. For example, the state maintenance device may record the time when the physical server last sent the message, determine whether the duration between the time and the current time is greater than a first threshold, and determine that the physical server is unavailable if the duration between the time and the current time is greater than the first threshold. Thus, the state maintenance device can determine the available states of the respective physical servers in the logical servers.
The state maintenance device may be a hardware device that exists independently, or may be a functional module that is installed in the hardware device. For example, a physical server in a server cluster may be set as a state maintenance device, such as may be enabled by deploying software on the physical server. Alternatively, a physical server in the server cluster may elect to select a Master node by voting (Raft or a distributed coherence protocol such as Paxos), and the Master node is used as a state maintenance device.
If the LoRa node corresponding to the uplink message received by a certain physical server does not belong to the LoRa node subscribed by the client corresponding to the logical server where the physical server is located, and the physical server in the logical server corresponding to the client sending the LoRa node of the uplink message is unavailable. The physical server receiving the uplink message may forward the uplink message or data obtained by analyzing the uplink message to an appropriate logic server according to the load condition of the logic server. For example, the uplink message or the data obtained by analyzing the uplink message may be forwarded to a logic server with a minimum load, and a physical server in the logic server is responsible for sending the uplink message or the data obtained by analyzing the uplink message to a corresponding client. Thus, when a logical server is not available, data can be migrated to the less loaded available logical server by route migration.
Alternatively, the logic service may be composed of a plurality of physical servers, so that not only the situation that the logic server is not available due to a single machine failure can be avoided, but also frequent route migration can be avoided.
Fig. 2 shows a schematic diagram of a structure of a server cluster according to an embodiment of the disclosure.
As shown in fig. 2, the physical servers 10.0.0.1 and 10.0.0.2 constitute a logical server LN1, the physical servers 10.0.0.2 and 10.0.0.3 constitute a logical server LN2, and the physical servers 10.0.0.4 constitute a logical server LN3.
The physical server may periodically send heartbeat packets to the state maintenance device. The state maintenance device may record the last heartbeat time of each logical server and the last heartbeat time of each physical server in the logical server. The state maintenance device can judge whether each physical server in the logic server is disconnected or not according to whether the time interval between the recorded time and the current time exceeds a preset threshold value or not, and judge whether the logic server is available or not.
Fig. 3 shows a schematic diagram of the heartbeat time of a logical server and a physical server within the logical server recorded by the state maintenance device.
As shown in fig. 3, the last heartbeat time of each of the logical servers LN1, LN2, and LN3 recorded by the initial time state maintenance device is T0. At time T1, the state maintenance device receives the heartbeat packet sent by the physical server 10.0.0.1, at this time, the latest heartbeat time of the logical server LN1 is updated to T1, and the latest heartbeat time of the physical server 10.0.0.1 in LN1 is updated to T1. At the time T2, the state maintenance device receives the heartbeat packet sent by the physical server 10.0.0.2, at this time, the latest heartbeat time of the logical servers LN1 and LN2 is updated to T2, and the latest heartbeat time of the physical server 10.0.0.2 in the LN1 and LN2 is updated to T2. At time T3, the state maintenance device receives the heartbeat packet sent by the physical server 10.0.0.3, at this time, the latest heartbeat time of the logical server LN2 is updated to T3, and the latest heartbeat time of the physical server 10.0.0.3 in the LN2 is updated to T3. At time T4, the state maintenance device receives the heartbeat packet sent by the physical server 10.0.0.4, at this time, the latest heartbeat time of the logical server LN3 is updated to T4, and the latest heartbeat time of the physical server 10.0.0.4 in the LN3 is updated to T4.
Taking the example that the core network will transfer the data stream to the client MQ, the user a is the key client and the user B and the user C are the ordinary clients as shown in the above figure. The core network cluster divides 10.0.0.1 and 10.0.0.3 machines for key clients and 10.0.0.2 and 10.0.0.4 machines for common users, wherein 10.0.0.1 and 10.0.0.3 are taken as logical hosts. User B binds to the 10.0.0.2 machine and user C binds to the 10.0.0.4 machine. When the end node of user B requests a 10.0.0.4, 10.0.0.4 forward the request to the 10.0.0.2 machine.
The servers in the cluster are used as physical hosts, a plurality of physical hosts can form a logical host, and nodes in the logical host form a copy set. The physical host may send a heartbeat to the registry periodically, the registry maintaining the state of the entire cluster, and once the node heartbeat times out, the node may be considered offline.
As shown in the above figures, 10.0.0.1 and 10.0.0.2 constitute a logical host LN1, 10.0.0.2 and 10.0.0.3 constitute a logical host LN2, and 10.0.0.4 serves as both a physical host and a logical host. The registry maintains the last heartbeat time for each logical host and the last heartbeat time for each physical host within the logical host.
The same kind of request is routed to the same logic host, and the copy set can avoid frequent migration of the route caused by restarting or single-point failure. If the heartbeat of the logic host is overtime, the bound route can migrate to the least loaded on-line logic host, and load balance among the logic hosts is ensured. If the physical host receiving the request does not belong to the logical host of the current route, the request is required to be forwarded in a directional manner. The directional request has two modes, namely a push mode and a pull mode, and is mainly performed through the push mode, and once the failure occurs, the directional request is automatically degraded to the pull mode. Push mode: the logical hosts are distinguished by service grouping through RPC framework direct call. Such as Dubbo, HSF. Pull mode: and packaging the request into a data message, storing the data message into a database queue, and simultaneously monitoring a machine group queue and a logic host queue by the logic host.
The present disclosure may be implemented as a lorewan network system comprising: the server cluster comprises the LoRa node, the LoRa gateway and the server cluster, wherein the LoRa gateway is used for forwarding an uplink message sent by the LoRa node to a physical server in the server cluster.
The present disclosure may also be implemented as a service method, including: dividing the plurality of physical servers into a plurality of logical servers, each logical server comprising one or more physical servers; configuring one or more clients for each logical server, the clients subscribing to one or more end nodes (e.g., loRa nodes); and under the condition that the terminal node corresponding to the received uplink message by the physical server does not belong to the terminal node subscribed by the client corresponding to the logical server where the physical server is located, controlling the physical server to forward the uplink message or data obtained by analyzing the uplink message to the logical server corresponding to the client subscribed to the terminal node for sending the uplink message. Details concerning the method may be found in the above related description, and are not repeated here.
Fig. 4 illustrates a schematic architecture of a computing device that may be used to implement the above-described service method according to an embodiment of the present disclosure.
Referring to fig. 4, a computing device 400 includes a memory 410 and a processor 420.
Processor 420 may be a multi-core processor or may include multiple processors. In some embodiments, processor 420 may comprise a general-purpose host processor and one or more special coprocessors, such as a Graphics Processor (GPU), digital Signal Processor (DSP), or the like. In some embodiments, the processor 420 may be implemented using custom circuitry, such as an Application Specific Integrated Circuit (ASIC) or a field programmable gate array (FPGA, field Programmable GATE ARRAYS).
Memory 410 may include various types of storage units, such as system memory, read Only Memory (ROM), and persistent storage. Where the ROM may store static data or instructions that are required by the processor 420 or other modules of the computer. The persistent storage may be a readable and writable storage. The persistent storage may be a non-volatile memory device that does not lose stored instructions and data even after the computer is powered down. In some embodiments, the persistent storage device employs a mass storage device (e.g., magnetic or optical disk, flash memory) as the persistent storage device. In other embodiments, the persistent storage may be a removable storage device (e.g., diskette, optical drive). The system memory may be a read-write memory device or a volatile read-write memory device, such as dynamic random access memory. The system memory may store instructions and data that are required by some or all of the processors at runtime. Furthermore, memory 410 may include any combination of computer-readable storage media including various types of semiconductor memory chips (DRAM, SRAM, SDRAM, flash memory, programmable read-only memory), magnetic disks, and/or optical disks may also be employed. In some embodiments, memory 410 may include readable and/or writable removable storage devices such as Compact Discs (CDs), digital versatile discs (e.g., DVD-ROMs, dual layer DVD-ROMs), blu-ray discs read only, super-density discs, flash memory cards (e.g., SD cards, min SD cards, micro-SD cards, etc.), magnetic floppy disks, and the like. The computer readable storage medium does not contain a carrier wave or an instantaneous electronic signal transmitted by wireless or wired transmission.
The memory 410 has stored thereon executable code that, when processed by the processor 420, causes the processor 420 to perform the service methods described above.
The service method, the server cluster and the LoRaWAN network system according to the present invention have been described in detail above with reference to the accompanying drawings.
Furthermore, the method according to the invention may also be implemented as a computer program or computer program product comprising computer program code instructions for performing the steps defined in the above-mentioned method of the invention.
Or the invention may also be embodied as a non-transitory machine-readable storage medium (or computer-readable storage medium, or machine-readable storage medium) having stored thereon executable code (or a computer program, or computer instruction code) that, when executed by a processor of an electronic device (or computing device, server, etc.), causes the processor to perform the steps of the above-described method according to the invention.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems and methods according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The foregoing description of embodiments of the invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the various embodiments described. The terminology used herein was chosen in order to best explain the principles of the embodiments, the practical application, or the improvement of technology in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.

Claims (11)

1. A server cluster, configured to receive an uplink message sent by a LoRa node, where the server cluster includes a plurality of physical servers, where the plurality of physical servers are divided into a plurality of logical servers, each of the logical servers includes one or more physical servers, the logical servers correspond to one or more clients that subscribe to the one or more LoRa nodes,
The physical server forwards the uplink message or data obtained by analyzing the uplink message to a logic server corresponding to a client subscribing the LoRa node sending the uplink message when the received LoRa node corresponding to the uplink message does not belong to the LoRa node subscribed by the client corresponding to the logic server where the physical server is located;
The physical server distributes the uplink message or the data obtained by analyzing the uplink message to a logic server corresponding to a client subscribing the LoRa node for transmitting the uplink message, or
And the physical server stores the uplink message or the data obtained by analyzing the uplink message to a preset address, and the logic server corresponding to the client of the LoRa node for sending the uplink message obtains the uplink message or the data obtained by analyzing the uplink message from the preset address.
2. The server cluster of claim 1, wherein,
And the physical server sends the uplink message or data obtained by analyzing the uplink message to the client under the condition that the LoRa node corresponding to the received uplink message belongs to the LoRa node subscribed by the client corresponding to the logical server where the physical server is located.
3. The server cluster of claim 2, wherein,
And the physical server transmits the uplink message or data obtained by analyzing the uplink message to a message queue corresponding to the client.
4. The server cluster of claim 1, further comprising: a state maintenance device, which comprises a state maintenance device,
The physical server periodically sends a message to the state maintenance device,
And the state maintenance device judges whether a physical server in the logic server is available according to the message receiving condition.
5. The server cluster of claim 4, wherein,
The state maintenance device records the time of the last message sending of the physical server, judges whether the time length between the time and the current time is larger than a first threshold value, and judges that the physical server is unavailable under the condition that the time length between the time and the current time is larger than the first threshold value.
6. The server cluster of claim 4, wherein,
And under the condition that a physical server in a logic server corresponding to the client side of the LoRa node for sending the uplink message is unavailable, the physical server forwards the uplink message or data obtained by analyzing the uplink message to a proper logic server according to the load condition of the logic server.
7. A lorewan network system comprising:
A LoRa node;
A LoRa gateway; and
The server cluster of any one of claims 1 to 6, wherein the LoRa gateway is configured to forward an uplink message sent by the LoRa node to a physical server in the server cluster.
8. A server cluster, configured to receive an uplink packet sent by a terminal node, where the server cluster includes a plurality of physical servers, where the plurality of physical servers are divided into a plurality of logical servers, each of the logical servers includes one or more physical servers, where the logical servers correspond to one or more clients that subscribe to one or more terminal nodes,
And under the condition that the terminal node corresponding to the received uplink message does not belong to the terminal node subscribed by the client corresponding to the logical server where the physical server is located, the physical server forwards the uplink message or data obtained by analyzing the uplink message to the logical server corresponding to the client subscribed to the terminal node sending the uplink message.
9. A method of service, comprising:
Dividing a plurality of physical servers into a plurality of logical servers, each of the logical servers comprising one or more physical servers;
configuring one or more clients for each logic server, wherein the clients subscribe to one or more terminal nodes, and the terminal nodes are LoRa nodes;
And under the condition that the terminal node corresponding to the received uplink message does not belong to the terminal node subscribed by the client corresponding to the logical server where the physical server is located, controlling the physical server to forward the uplink message or data obtained by analyzing the uplink message to the logical server corresponding to the client subscribed to the terminal node sending the uplink message.
10. A computing device, comprising:
A processor; and
A memory having executable code stored thereon, which when executed by the processor, causes the processor to perform the method of claim 9.
11. A non-transitory machine-readable storage medium having stored thereon executable code, which when executed by a processor of an electronic device, causes the processor to perform the method of claim 9.
CN202010215305.XA 2020-03-24 2020-03-24 Service method, server cluster and LoRaWAN network system Active CN113453340B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010215305.XA CN113453340B (en) 2020-03-24 2020-03-24 Service method, server cluster and LoRaWAN network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010215305.XA CN113453340B (en) 2020-03-24 2020-03-24 Service method, server cluster and LoRaWAN network system

Publications (2)

Publication Number Publication Date
CN113453340A CN113453340A (en) 2021-09-28
CN113453340B true CN113453340B (en) 2024-08-20

Family

ID=77807465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010215305.XA Active CN113453340B (en) 2020-03-24 2020-03-24 Service method, server cluster and LoRaWAN network system

Country Status (1)

Country Link
CN (1) CN113453340B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114527995A (en) * 2021-12-29 2022-05-24 浙江中控技术股份有限公司 Graphical deployment and state monitoring integrated system and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008167359A (en) * 2007-01-05 2008-07-17 Fujitsu Ltd Subdivision method, file update method and IP telephone system in IP telephone system
CN106603319A (en) * 2017-03-02 2017-04-26 腾讯科技(深圳)有限公司 Fault processing method, management server, and logic server

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6925645B2 (en) * 2000-12-29 2005-08-02 Webex Communications, Inc. Fault tolerant server architecture for collaborative computing
JP4463078B2 (en) * 2004-11-05 2010-05-12 パナソニック株式会社 Information processing apparatus, information processing system, information processing method, and program
US8583770B2 (en) * 2005-02-16 2013-11-12 Red Hat, Inc. System and method for creating and managing virtual services
CN100502572C (en) * 2006-11-30 2009-06-17 华为技术有限公司 Method and system of increasing system capacity of multimedia message service
US8645550B2 (en) * 2010-02-18 2014-02-04 Microsoft Corporation Database virtualization
CN101984632A (en) * 2010-11-15 2011-03-09 中兴通讯股份有限公司 Load distributing method, device and server in distributed cache system
JP5576827B2 (en) * 2011-06-03 2014-08-20 日本電信電話株式会社 Server management system, server management apparatus, server management method, and server management program
JP2014142678A (en) * 2013-01-22 2014-08-07 Hitachi Ltd Virtual server transfer plan generation method and system
JP6056607B2 (en) * 2013-03-28 2017-01-11 富士通株式会社 Information processing system and control method of information processing system
WO2015102511A1 (en) * 2013-12-30 2015-07-09 Limited Liability Company Mail.Ru Systems and methods for fingerprinting operating systems
CN106488402B (en) * 2015-09-01 2019-11-26 腾讯科技(深圳)有限公司 Ground is made an inventory rendering method and relevant device
CN105827687A (en) * 2015-11-17 2016-08-03 广东亿迅科技有限公司 Cluster management method and management system thereof
CN105827584A (en) * 2015-11-18 2016-08-03 广东亿迅科技有限公司 Interaction method of third-party application server with client background system, and background system
KR102183958B1 (en) * 2015-11-23 2020-11-27 에스케이텔레콤 주식회사 Method and apparatus for controlling data transmission
CN106936907B (en) * 2017-03-09 2020-07-03 腾讯科技(深圳)有限公司 File processing method, logic server, access server and system
CN107046503B (en) * 2017-04-24 2020-08-04 新华三技术有限公司 Message transmission method, system and device
CN108881066B (en) * 2017-05-10 2021-08-27 腾讯科技(深圳)有限公司 Routing request method, access server and storage device
CN109586976A (en) * 2018-12-28 2019-04-05 万能 A kind of LoRa server

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008167359A (en) * 2007-01-05 2008-07-17 Fujitsu Ltd Subdivision method, file update method and IP telephone system in IP telephone system
CN106603319A (en) * 2017-03-02 2017-04-26 腾讯科技(深圳)有限公司 Fault processing method, management server, and logic server

Also Published As

Publication number Publication date
CN113453340A (en) 2021-09-28

Similar Documents

Publication Publication Date Title
CN111565229B (en) Communication system distributed method based on Redis
AU2019201592B2 (en) Exactly-once transaction semantics for fault tolerant FPGA based transaction systems
RU2507703C2 (en) Resource pooling in electronic board cluster switching centre server
CN105338086B (en) A kind of distributed message forwarding method
JP5557840B2 (en) Distributed database monitoring mechanism
CN114338651B (en) File transmission method, device, electronic equipment and readable storage medium
CN102447624B (en) Load balancing method in server cluster, as well as node server and cluster
US9185054B2 (en) System and method for providing zero buffer copying in a middleware machine environment
CN108023812B (en) Content distribution method and device, computing node and system of cloud computing system
US20070204275A1 (en) Method and system for reliable message delivery
US9917884B2 (en) File transmission method, apparatus, and distributed cluster file system
CN106713378B (en) Method and system for providing service by multiple application servers
US20190238352A1 (en) Communication Method and Apparatus
US8275905B2 (en) System and method for store-and-forward for highly available message production
CN112612769B (en) File processing method, device and storage medium
JP2000207370A (en) Distributed file management device and distributed file management system
US10802896B2 (en) Rest gateway for messaging
CN113453340B (en) Service method, server cluster and LoRaWAN network system
CN111339059A (en) NAS storage system based on distributed storage system Ceph
CN116257186A (en) Data object erasure code storage method, device, equipment and medium
KR20190035592A (en) Distributed Broker Coordinator System and Method in a Distributed Cloud Environment
JPWO2018056044A1 (en) Computer, cluster management system, method and program
US20220232071A1 (en) Load balancing systems and methods
CN115632947B (en) A configuration sending method and device
CN114579338B (en) Dual-machine distributed arbitration system and arbitration method thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40059936

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant