CN110661780A - 一种基于saas应用的无线城市数据共享方法与系统 - Google Patents
一种基于saas应用的无线城市数据共享方法与系统 Download PDFInfo
- Publication number
- CN110661780A CN110661780A CN201910754773.1A CN201910754773A CN110661780A CN 110661780 A CN110661780 A CN 110661780A CN 201910754773 A CN201910754773 A CN 201910754773A CN 110661780 A CN110661780 A CN 110661780A
- Authority
- CN
- China
- Prior art keywords
- server
- data
- resource
- user side
- address
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于SAAS应用的无线城市数据共享方法与系统,方法包括服务器端接收用户端发送的请求指令后,根据请求指令对应配置的规则的询问多台资源服务器的IP地址,请求对应资源服务器获取资源,查找相应数据后响应给用户端。该方法是一种数据实时共享,采用本发明的方法,app用户端只需要直接和服务器端交互,是添加用户获取信息与数据的一种方式。通过互联网信息技术来发展和构建智慧城市,服务于广大用户,为城市管理和公众提供各种智能化的服务。
Description
技术领域
本发明属于大数据技术领域,具体涉及一种基于SAAS应用的无线城市数据共享方法与系统。
背景技术
随着大数据时代的到来,各种信息已经渗透到人们生活的点点,数字城市发展日益成熟,数字城市的公共事业服务早已经开始信息化、数字化,社保、公积金等可以在网上查询和缴纳,每个部门都会存在各自的系统,但是还停留在各自为政的数据孤岛状态,部门的各类数据无法高效的实现数据共通,导致用户无法享受到更加快捷的各项生活和政务服务。
市面上应用系统大多的都是比较单一的单体应用服务,无法满足大量数据的并发。单体应用服务随着业务规模,数据量的不断扩大,单体应用极易出现问题,而且单体应用的线上系统可用性差,单体应用将所有功能都打包在一个war包中,并且运行在同一个应用服务器的容器中,只要某一功能涉及的代码或资源有问题,就可能影响到项目中其他的功能无法正常运行,从而导致整个服务不可用;除此之外,因为单体应用部署在同一个容器中,所提供的线程是有限的,无法满足大量用户同时访问和承载大量数据并发,从而导致应用服务宕机。
综上分析,目前面向城市数据共享方法存在以下缺点:
1)缺乏一款“一站式”便民服务的数据共享平台。
2)缺乏统一的信息化技术管理平台,各种数据不能实时互联互通。
3)技术框架结构单一,系统错误隔离性差、可用性差,任何一个模块的错误均可能造成整个系统的宕机,无法承载海量用户同时访问和庞大数据的并发。
无线城市发展的先进理念是以“无线城市”建设为基础,以“服务便民、商业利民、产业惠民”为宗旨,提倡“一站式”便民服务,全力推进“一网通办”,为用户提供的生活新体验。
发明内容
为了克服现有技术的不足,本发明提供一种基于SAAS应用的无线城市数据共享方法与系统,以解决城市数据不能进行共享的问题,用户端只需要直接和服务器端交互,即可获取信息与数据。
为实现上述目的,本发明采用以下技术手段:
一种基于SAAS应用的无线城市数据共享方法,包括以下步骤:
服务器端接收用户端发送的请求指令后,根据请求指令对应配置的规则的询问多台资源服务器的IP地址,请求对应资源服务器获取资源,查找相应数据后响应给用户端。
作为本发明的进一步改进,具体包括以下步骤:
网关接收请求指令并进行解析,根据网关设定的规则,将数据元信息发送给路由器;
路由器接管网关传送过来的数据元信息,根据配置的规则,去询问注册中心架构获取资源服务器的IP地址;并根据注册中心架构返回的IP地址请求对应IP地址的资源服务器;
注册中心架构在接到网关数据信息后,根据请求地址,将满足其中条件的其中一个资源服务器的IP地址返回路由器;
应用微服务器对加密的请求参数进行解密,根据请求参数处理相应逻辑、调用相互之间存在关系的资源服务器后,连接缓存服务器获取有效的指定数据,等待缓存服务器响应;并根据缓存服务器端返回的数据结果集进行处理,如果响应的数据为空值,则需要连接数据库获取相应的数据,然后再次对话缓存服务器,将获取到的数据存储在缓存服务器端,最后将数据资源返回到用户端,对用户端进行响应。
作为本发明的进一步改进,还包括鉴权步骤和过滤步骤;
过滤步骤:在请求服务器之前,过滤非法请求、字符和参数,将有效信息进行系统性安全排查;
鉴权步骤:对用户端进行认证以后,确认无误后,同意发放令牌,用户端使用令牌,向资源服务器申请获取资源,资源服务器确认令牌无误,同意向用户端开放资源。
作为本发明的进一步改进,还包括服务追踪步骤和熔断步骤;
服务追踪步骤:监控各个独立服务器的运行状态;实时查看接口的运行状态和调用频率;查看各个服务之间的调用链;
熔断步骤:在用户端发起请求后,在一段时间内侦测到许多类似的错误,会强迫其以后的多个调用快速失败,不再访问远程服务器。
一种基于SAAS应用的无线城市数据共享系统,包括:用户端和服务器端;
所述的用户端,用于发送请求指令并等待响应结果;
所述的服务器端,用于接收用户端发送的请求指令后,根据请求指令对应配置的规则的询问多台资源服务器的IP地址,请求对应资源服务器获取资源,查找相应数据后响应给用户端。
作为本发明的进一步改进,所述的服务器端包括注册中心架构、网关、路由器、应用微服务器、数据库和数据缓存服务器;
所述的网关,用于与用户端建立通讯连接,接收请求指令并进行解析,根据网关设定的规则,将数据元信息发送给路由器;
所述的路由器,与网关连接,用于接管网关传送过来的数据元信息,根据配置的规则,去询问注册中心架构获取资源服务器的IP地址;并根据注册中心架构返回的IP地址请求对应IP地址的资源服务器;
所述的注册中心架构,用于记录每个资源服务器所在IP地址,在接到网关数据信息后,根据请求地址,将满足其中条件的其中一个资源服务器的IP地址返回路由器;
所述的应用微服务器,用于对加密的请求参数进行解密,根据请求参数处理相应逻辑、调用相互之间存在关系的资源服务器后,连接缓存服务器获取有效的指定数据,等待缓存服务器响应;并根据缓存服务器端返回的数据结果集进行处理,如果响应的数据为空值,则需要连接数据库获取相应的数据,然后再次对话缓存服务器,将获取到的数据存储在缓存服务器端,最后将数据资源返回到用户端,对用户端进行响应;
所述的缓存服务器,用于接收到应用微服务器的请求,然后再根据key值查找相应数据找到相应数据返回给应用微服务器;
所述的数据库,与应用微服务器连接,用于存储和提供所有数据。
作为本发明的进一步改进,还包括鉴权服务器和过滤器;
所述的过滤器,与路由器连接,用于在请求服务器之前,过滤非法请求、字符和参数,将有效信息进行系统性安全排查;
所述的鉴权认证服务器,与路由器连接,用于对用户端进行认证以后,确认无误后,同意发放令牌,用户端使用令牌,向资源服务器申请获取资源,资源服务器确认令牌无误,同意向用户端开放资源。
作为本发明的进一步改进,还包括服务追踪器和熔断器,
所述的服务追踪器,与应用微服务器连接,用来监控各个独立服务器的运行状态;实时查看接口的运行状态和调用频率;查看各个服务之间的调用链;
所述的熔断器:与应用微服务器连接,用于在用户端发起请求后,在一段时间内侦测到许多类似的错误,会强迫其以后的多个调用快速失败,不再访问远程服务器。
作为本发明的进一步改进,所述的应用服务器,由多台具有完全相同的资源服务器以对称的方式组成,每台资源服务器单独对外提供服务;把来自用户端的请求轮流分配给内部的资源服务器:从第一服务器开始,直到第N服务器,然后重新开始循环;
多台资源服务器采用分布式事物控制机制,第一阶段Prepared消息,会拿到消息的地址,第二阶段执行本地事务,第三阶段通过第一阶段拿到的地址去访问消息,并修改状态;消息队列需要提交两次请求,一次发送消息和一次确认消息;如果确认消息发送失败了RocketMQ会定期扫描消息集群中的事务消息;如发现了Prepared消息,向消息发送者确认;RocketMQ会根据发送端设置的策略来决定是回滚还是继续发送确认消息;必须保证消息发送与本地事务同时成功或同时失败。
作为本发明的进一步改进,还包括与服务器端连接的数据采集系统和运营平台;
所述的数据采集系统,用于收集相关数据并存储至服务器端;还用于与第三方系统进行对接,实现数据实时同步与交互;
所述的运营平台,用于对服务器端的数据维护,把收集到的数据进行归纳汇总。
与现有技术相比,本发明的有益效果是:
本发明基于SAAS应用的无线城市数据共享方法能够将不同的数据根据无线城市应用的需求进行数据共享,是一种数据实时共享,采用本发明的方法,app用户端只需要直接和服务器端交互,是添加用户获取信息与数据的一种方式。
本发明基于SAAS应用的无线城市数据共享系统能够实现数据实时共享,app用户端只需要和网关交互,有利于监控,易于认证,减少用户端和各个服务器之间的交互次数。每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界。由于体积小、复杂度低,易于保持高可维护性和开发效率。本发明的系统利用互联网模式,搭建一套SAAS应用服务,整合城市的公共事业服务,整合各类数据,并建立统一的信息化技术平台,提供一种高效和便捷的城市生活服务app,通过互联网信息技术来发展和构建智慧城市,服务于广大用户,为城市管理和公众提供各种智能化的服务。
进一步,各个资源服务器独立部署,由于微服务具备独立的运行进程,所以每个微服务也可以独立部署。由微服务组成的应用相当于具备一系列可并行的发布流程,使得发布更加高效。可以根据自身服务的需求和行业发展的现状,自由选择最适合的技术栈。由于每个服务器相对简单,故需要对技术栈进行升级时所面临的风险就较低,甚至完全重构一个服务也是可行的。
进一步,当某一个服务器端发生故障时,故障会被隔离在单个服务中,内部系统根据负载均衡机制原则,将具有完全相同功能的服务器持续运行,实现应用层面的容错。
附图说明
图1为本发明的流程图;
图2为本发明中的鉴权流程图;
图3为本发明中的获取数据流程图;
图4为本发明中的熔断器执行流程图。
具体实施方式
下面结合附图对本发明的结构和工作原理作进一步详细说明。
实施例1
一种基于SAAS应用的无线城市数据共享系统,包括:用户端和服务器端;
所述的用户端,用于发送请求指令并等待响应结果;
所述的服务器端,用于接收用户端发送的请求指令后,根据请求指令对应配置的规则的询问多台资源服务器的IP地址,请求对应资源服务器获取资源,查找相应数据后响应给用户端。
优选的,所述的服务器端包括注册中心架构、网关、路由器、应用微服务器、数据库和数据缓存服务器;
所述的网关,用于与用户端建立通讯连接,接收请求指令并进行解析,根据网关设定的规则,将数据元信息发送给路由器;
所述的路由器,与网关连接,用于接管网关传送过来的数据元信息,根据配置的规则,去询问注册中心架构获取资源服务器的IP地址;并根据注册中心架构返回的IP地址请求对应IP地址的资源服务器;
所述的注册中心架构,用于记录每个资源服务器所在IP地址,在接到网关数据信息后,根据请求地址,将满足其中条件的其中一个资源服务器的IP地址返回路由器;
所述的应用微服务器,用于对加密的请求参数进行解密,根据请求参数处理相应逻辑、调用相互之间存在关系的资源服务器后,连接缓存服务器获取有效的指定数据,等待缓存服务器响应;并根据缓存服务器端返回的数据结果集进行处理,如果响应的数据为空值,则需要连接数据库获取相应的数据,然后再次对话缓存服务器,将获取到的数据存储在缓存服务器端,最后将数据资源返回到用户端,对用户端进行响应;
所述的缓存服务器,用于接收到应用微服务器的请求,然后再根据key值查找相应数据找到相应数据返回给应用微服务器;
所述的数据库,与应用微服务器连接,用于存储和提供所有数据。
优选的,还包括鉴权服务器和过滤器;
所述的过滤器,与路由器连接,用于在请求服务器之前,过滤非法请求、字符和参数,将有效信息进行系统性安全排查;
所述的鉴权认证服务器,与路由器连接,用于对用户端进行认证以后,确认无误后,同意发放令牌,用户端使用令牌,向资源服务器申请获取资源,资源服务器确认令牌无误,同意向用户端开放资源。
优选的,还包括服务追踪器和熔断器,
所述的服务追踪器,与应用微服务器连接,用来监控各个独立服务器的运行状态;实时查看接口的运行状态和调用频率;查看各个服务之间的调用链;
所述的熔断器:与应用微服务器连接,用于在用户端发起请求后,在一段时间内侦测到许多类似的错误,会强迫其以后的多个调用快速失败,不再访问远程服务器。
优选的,所述的应用服务器,由多台具有完全相同的资源服务器以对称的方式组成,每台资源服务器单独对外提供服务;把来自用户端的请求轮流分配给内部的资源服务器:从第一服务器1开始,直到第N服务器,然后重新开始循环;
多台资源服务器采用分布式事物控制机制,第一阶段Prepared消息,会拿到消息的地址,第二阶段执行本地事务,第三阶段通过第一阶段拿到的地址去访问消息,并修改状态;消息队列需要提交两次请求,一次发送消息和一次确认消息;如果确认消息发送失败了RocketMQ会定期扫描消息集群中的事务消息;如发现了Prepared消息,向消息发送者确认;RocketMQ会根据发送端设置的策略来决定是回滚还是继续发送确认消息;必须保证消息发送与本地事务同时成功或同时失败。
优选的,还包括与服务器端连接的数据采集系统和运营平台;
所述的数据采集系统,用于收集相关数据并存储至服务器端;还用于与第三方系统进行对接,实现数据实时同步与交互;
所述的运营平台,用于对服务器端的数据维护,把收集到的数据进行归纳汇总。
实施例2
如图1所示,本发明提出了一种基于SAAS应用的无线城市数据共享方法。该方法的硬件包括手机app用户端、服务器端、运营平台、数据采集系统等。
手机app用户端是提供给广大用户使用,可以通过app随时随地的进行数据查询、政务办理、旅游咨询等各种便民服务。
运营平台是对数据维护,把收集到的数据进行归纳汇总。
数据采集系统,是数据来源重要的来源,负责收集相关数据;除此之外,还负责与第三方系统进行对接,实现数据实时同步与交互。
服务器端是数据资源共享的中枢,它抽象了所需要的公共功能,提供了负载均衡,服务自动熔断,服务追踪器,统一认证等丰富的功能,是进行数据共享最重要的组成部分。实现与手机app用户端进行数据交互、提供app查询各种相关数据,及信息实时共享、支持大量数据的并发等;其中,服务器端包含很多组件:注册中心、网关、路由器、应用微服务器、数据库、鉴权服务器、过滤器、数据缓存服务器、服务追踪器、熔断器等。
其中,注册中心:是微服务架构中的”通讯录“,它记录了微服务和微服务地址之间的映射关系。所有的应用微服务会注册到这里,当服务需要调用其它服务时,就到这里找到服务的地址,进行调用。
网关:网关是一个服务器,是系统的唯一入口,所有的用户端和消费端都通过统一的网关接入微服务。
路由器:处理的请求,接收一切外界请求,转发到后端的微服务上,再根据指定的匹配规则,将请求映射到最终的应用微服务中的某个方法。
应用微服务器:每个服务间可独立部署和可伸缩、并且可以相互调用,交给注册中心进行统一管理,向外部提供api接口的服务器。
数据库:存储数据的仓库,是存储和提供所有数据的器件。
鉴权服务器:加强对外暴露接口调度的权限验证,保证api接口的安全性;加强服务之间调度的权限验证,保证内部服务的安全性。
过滤器:提前过滤掉一些信息,或者提前设置一些参数,过滤非法请求、字符和参数,保证调用服务的安全性
数据缓存服务器:它将需要频繁访问的数据保存在缓存服务器中,当再次访问这些对象的时候加快了速度。
服务追踪器:用来监控各个独立Service的运行状态;实时查看接口的运行状态和调用频率;查看各个服务之间的调用链等
熔断器:因为采取了服务的分布,为了避免服务之间的调用“雪崩”,采用了Hystrix的作为熔断器,避免了服务之间的“雪崩”。
实施例3
本发明还提供一种基于SAAS应用的无线城市数据共享方法,包括以下步骤:
服务器端接收用户端发送的请求指令后,根据请求指令对应配置的规则的询问多台资源服务器的IP地址,请求对应资源服务器获取资源,查找相应数据后响应给用户端。
优选的,具体包括以下步骤:
网关接收请求指令并进行解析,根据网关设定的规则,将数据元信息发送给路由器;
路由器接管网关传送过来的数据元信息,根据配置的规则,去询问注册中心架构获取资源服务器的IP地址;并根据注册中心架构返回的IP地址请求对应IP地址的资源服务器;
注册中心架构在接到网关数据信息后,根据请求地址,将满足其中条件的其中一个资源服务器的IP地址返回路由器;
应用微服务器对加密的请求参数进行解密,根据请求参数处理相应逻辑、调用相互之间存在关系的资源服务器后,连接缓存服务器获取有效的指定数据,等待缓存服务器响应;并根据缓存服务器端返回的数据结果集进行处理,如果响应的数据为空值,则需要连接数据库获取相应的数据,然后再次对话缓存服务器,将获取到的数据存储在缓存服务器端,最后将数据资源返回到用户端,对用户端进行响应。
优选的,还包括鉴权步骤和过滤步骤;
过滤步骤:在请求服务器之前,过滤非法请求、字符和参数,将有效信息进行系统性安全排查;
鉴权步骤:对用户端进行认证以后,确认无误后,同意发放令牌,用户端使用令牌,向资源服务器申请获取资源,资源服务器确认令牌无误,同意向用户端开放资源。
优选的,还包括服务追踪步骤和熔断步骤;
服务追踪步骤:监控各个独立服务器的运行状态;实时查看接口的运行状态和调用频率;查看各个服务之间的调用链;
熔断步骤:在用户端发起请求后,在一段时间内侦测到许多类似的错误,会强迫其以后的多个调用快速失败,不再访问远程服务器。
实施例4
一种数据共享技术实现方法,包括以下步骤:
1、app用户端封装一系列的请求参数及请求url,进行加密处理后,通过http请求的方式发送至远程服务器端等待响应结果。
2、网关接送到app用户端发送的请求后,会进行解析请求的url,根据网关设定好的规则,将数据元信息发送给路由器。
3、路由器接管网关传送过来的数据元信息,根据配置好的规则,去询问注册中心获取应用微服务器的IP地址。
4、所有搭建好的服务器端都需要连接到注册中心,注册中心会对每个微服务进行统一管理,其具有高可用性和并且提供实时更新功能,要求每一个服务器必须有一个名字,这个名字会被注册到注册管理器的服务器上,注册中心并记录每个服务器所在IP地址;在接到网关数据信息后,注册中心根据请求地址,将满足其中条件的其中一个服务器的IP地址返回路由器,具有完全功能的服务器可以做集群和负载均衡的处理。
5、路由器拿到注册中心的返回的IP地址之后,然后请求对应IP地址的服务器。
6、请求服务器之前,会经过过滤器进行过滤,过滤器将请求地址、请求方法、请求头和请求参数进行内部一系列的规则进行过滤,将有效信息进行系统性安全排查。
7、鉴权认证服务器对用户端进行认证以后,确认无误,同意发放令牌,用户端使用令牌,向资源服务器申请获取资源,资源服务器确认令牌无误,同意向用户端开放资源,如图2所示。
8、路由器通过过滤器和鉴权服务器后,根据在注册中心获取的IP地址请求对应的服务器获取资源。
9、服务器对加密的请求参数进行解密,根据请求参数处理相应逻辑、调用相互之间存在关系的微服务后,连接缓存服务器获取有效的指定数据,等待缓存服务器响应。
10、缓存服务器接收到应用服务器端的请求,然后再根据key值查找相应数据找到相应数据返回给服务器端。
11、如图3所示,服务器端根据缓存服务器端返回的数据结果集进行处理,如果响应的数据为空值,则需要连接数据库获取相应的数据,然后再次对话缓存服务器,将获取到的数据存储在缓存服务器端,最后将数据资源返回到app用户端,对app用户端进行响应。
12、如图4所示,在app用户端发起请求后,熔断器开始工作,其可以实现快速失败,它在一段时间内侦测到许多类似的错误,会强迫其以后的多个调用快速失败,不再访问远程服务器,从而防止应用程序不断地尝试执行可能会失败的操作,使得应用程序继续执行而不用等待修正错误,或者浪费CPU时间去等到长时间的超时产生。
13、服务追踪器是从客户发起请求(request)抵达被追踪系统的边界开始,到被追踪系统向客户返回响应(response)为止的过程,称为一个“trace”。每个trace中会调用若干个服务,为了记录调用了哪些服务,以及每次调用的消耗时间等信息,在每次调用服务时,埋入一个调用记录,称为一个“span”。这样,若干个有序的span就组成了一个trace。在系统向外界提供服务的过程中,会不断地有请求和响应发生,也就会不断生成trace,把这些带有span的trace记录下来,就可以描绘出一幅系统的服务拓扑图。附带上span中的响应时间,以及请求成功与否等信息,就可以在发生问题的时候,找到异常的服务;根据历史数据,还可以从系统整体层面分析出哪里性能差,定位性能优化的目标。
14、应用服务器实现负载均衡,对多台具有完全相同的服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。把来自用户的请求轮流分配给内部的服务器:从服务器1开始,直到服务器N,然后重新开始循环。它无需记录当前所有连接的状态,所以它是一种无状态调度。假设有N台服务器:S={S1,S2,…,Sn},一个指示变量i表示上一次选择的服务器ID。变量i被初始化为N-1。
15、分布式事物控制机制,第一阶段Prepared消息,会拿到消息的地址。第二阶段执行本地事务,第三阶段通过第一阶段拿到的地址去访问消息,并修改状态。消息队列需要提交两次请求,一次发送消息和一次确认消息。如果确认消息发送失败了RocketMQ会定期扫描消息集群中的事务消息,这时候发现了Prepared消息,它会向消息发送者确认,所以需要实现一个check接口,RocketMQ会根据发送端设置的策略来决定是回滚还是继续发送确认消息。必须保证消息发送与本地事务同时成功或同时失败。
16、数据采集系统负责收集相关数据;除此之外,还负责与第三方系统进行对接,实现数据实时同步与交互。
17、运营平台日常维护数据,把收集到的数据进行归纳汇总。
本发明创造的优点如下:
本发明能够将不同的数据根据无线城市应用的需求进行数据共享,是一种数据实时共享,采用本发明的方法,app客户端只需要直接和服务器端交互,是添加老百姓获取信息与数据的一种方式。
对于技术层面来说这是一种数据实时共享,app客户端只需要和网关交互,有利于监控,易于认证,减少客户端和各个服务器之间的交互次数。
每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界。由于体积小、复杂度低,易于保持高可维护性和开发效率。
独立部署:由于微服务具备独立的运行进程,所以每个微服务也可以独立部署。由微服务组成的应用相当于具备一系列可并行的发布流程,使得发布更加高效。
除此之外,技术选型是中心化的。可以根据自身服务的需求和行业发展的现状,自由选择最适合的技术栈。由于每个服务器相对简单,故需要对技术栈进行升级时所面临的风险就较低,甚至完全重构一个服务也是可行的。
当某一个服务器端发生故障时,故障会被隔离在单个服务中,内部系统根据负载均衡机制原则,将具有完全相同功能的服务器持续运行,实现应用层面的容错。
本发明一实施例提供的基于SAAS应用的无线城市数据共享系统。该实施例的基于SAAS应用的无线城市数据共享系统包括:用户端、服务器端以及存储在所述服务器端中并可在所述用户端上运行的计算机程序。所述服务器端实现上述实施例3或4中的步骤。
所述用户端可以是手机、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述服务器端可包括,但不仅限于,处理器、存储器。
所述数据库可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据的各种功能。
以上实施例仅用于说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细说明,所属领域的普通技术人员依然可以对本发明的具体实施方案进行修改或者等同替换,而这些并未脱离本发明精神和范围的任何修改或者等同替换,其均在本发明的权利要求保护范围之内。
Claims (10)
1.一种基于SAAS应用的无线城市数据共享方法,其特征在于,包括以下步骤:
服务器端接收用户端发送的请求指令后,根据请求指令对应配置的规则的询问多台资源服务器的IP地址,请求对应资源服务器获取资源,查找相应数据后响应给用户端。
2.根据权利要求1所述的基于SAAS应用的无线城市数据共享方法,其特征在于,具体包括以下步骤:
网关接收请求指令并进行解析,根据网关设定的规则,将数据元信息发送给路由器;
路由器接管网关传送过来的数据元信息,根据配置的规则,去询问注册中心架构获取资源服务器的IP地址;并根据注册中心架构返回的IP地址请求对应IP地址的资源服务器;
注册中心架构在接到网关数据信息后,根据请求地址,将满足其中条件的其中一个资源服务器的IP地址返回路由器;
应用微服务器对加密的请求参数进行解密,根据请求参数处理相应逻辑、调用相互之间存在关系的资源服务器后,连接缓存服务器获取有效的指定数据,等待缓存服务器响应;并根据缓存服务器端返回的数据结果集进行处理,如果响应的数据为空值,则需要连接数据库获取相应的数据,然后再次对话缓存服务器,将获取到的数据存储在缓存服务器端,最后将数据资源返回到用户端,对用户端进行响应。
3.根据权利要求2所述的基于SAAS应用的无线城市数据共享方法,其特征在于,还包括鉴权步骤和过滤步骤;
过滤步骤:在请求服务器之前,过滤非法请求、字符和参数,将有效信息进行系统性安全排查;
鉴权步骤:对用户端进行认证以后,确认无误后,同意发放令牌,用户端使用令牌,向资源服务器申请获取资源,资源服务器确认令牌无误,同意向用户端开放资源。
4.根据权利要求2所述的基于SAAS应用的无线城市数据共享方法,其特征在于,还包括服务追踪步骤和熔断步骤;
服务追踪步骤:监控各个独立服务器的运行状态;实时查看接口的运行状态和调用频率;查看各个服务之间的调用链;
熔断步骤:在用户端发起请求后,在一段时间内侦测到许多类似的错误,会强迫其以后的多个调用快速失败,不再访问远程服务器。
5.一种基于SAAS应用的无线城市数据共享系统,其特征在于,包括:用户端和服务器端;
所述的用户端,用于发送请求指令并等待响应结果;
所述的服务器端,用于接收用户端发送的请求指令后,根据请求指令对应配置的规则的询问多台资源服务器的IP地址,请求对应资源服务器获取资源,查找相应数据后响应给用户端。
6.根据权利要求5所述的基于SAAS应用的无线城市数据共享系统,其特征在于,所述的服务器端包括注册中心架构、网关、路由器、应用微服务器、数据库和数据缓存服务器;
所述的网关,用于与用户端建立通讯连接,接收请求指令并进行解析,根据网关设定的规则,将数据元信息发送给路由器;
所述的路由器,与网关连接,用于接管网关传送过来的数据元信息,根据配置的规则,去询问注册中心架构获取资源服务器的IP地址;并根据注册中心架构返回的IP地址请求对应IP地址的资源服务器;
所述的注册中心架构,用于记录每个资源服务器所在IP地址,在接到网关数据信息后,根据请求地址,将满足其中条件的其中一个资源服务器的IP地址返回路由器;
所述的应用微服务器,用于对加密的请求参数进行解密,根据请求参数处理相应逻辑、调用相互之间存在关系的资源服务器后,连接缓存服务器获取有效的指定数据,等待缓存服务器响应;并根据缓存服务器端返回的数据结果集进行处理,如果响应的数据为空值,则需要连接数据库获取相应的数据,然后再次对话缓存服务器,将获取到的数据存储在缓存服务器端,最后将数据资源返回到用户端,对用户端进行响应;
所述的缓存服务器,用于接收到应用微服务器的请求,然后再根据key值查找相应数据找到相应数据返回给应用微服务器;
所述的数据库,与应用微服务器连接,用于存储和提供所有数据。
7.根据权利要求6所述的基于SAAS应用的无线城市数据共享系统,其特征在于,还包括鉴权服务器和过滤器;
所述的过滤器,与路由器连接,用于在请求服务器之前,过滤非法请求、字符和参数,将有效信息进行系统性安全排查;
所述的鉴权认证服务器,与路由器连接,用于对用户端进行认证以后,确认无误后,同意发放令牌,用户端使用令牌,向资源服务器申请获取资源,资源服务器确认令牌无误,同意向用户端开放资源。
8.根据权利要求6所述的基于SAAS应用的无线城市数据共享系统,其特征在于,还包括服务追踪器和熔断器,
所述的服务追踪器,与应用微服务器连接,用来监控各个独立服务器的运行状态;实时查看接口的运行状态和调用频率;查看各个服务之间的调用链;
所述的熔断器:与应用微服务器连接,用于在用户端发起请求后,在一段时间内侦测到许多类似的错误,会强迫其以后的多个调用快速失败,不再访问远程服务器。
9.根据权利要求6所述的基于SAAS应用的无线城市数据共享系统,其特征在于,所述的应用服务器,由多台具有完全相同的资源服务器以对称的方式组成,每台资源服务器单独对外提供服务;把来自用户端的请求轮流分配给内部的资源服务器:从第一服务器开始,直到第N服务器,然后重新开始循环;
多台资源服务器采用分布式事物控制机制,第一阶段Prepared消息,会拿到消息的地址,第二阶段执行本地事务,第三阶段通过第一阶段拿到的地址去访问消息,并修改状态;消息队列需要提交两次请求,一次发送消息和一次确认消息;如果确认消息发送失败,RocketMQ会定期扫描消息集群中的事务消息;如发现了Prepared消息,向消息发送者确认;RocketMQ会根据发送端设置的策略来决定是回滚还是继续发送确认消息;必须保证消息发送与本地事务同时成功或同时失败。
10.根据权利要求5所述的基于SAAS应用的无线城市数据共享系统,其特征在于,还包括与服务器端连接的数据采集系统和运营平台;
所述的数据采集系统,用于收集相关数据并存储至服务器端;还用于与第三方系统进行对接,实现数据实时同步与交互;
所述的运营平台,用于对服务器端的数据维护,把收集到的数据进行归纳汇总。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910754773.1A CN110661780A (zh) | 2019-08-15 | 2019-08-15 | 一种基于saas应用的无线城市数据共享方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910754773.1A CN110661780A (zh) | 2019-08-15 | 2019-08-15 | 一种基于saas应用的无线城市数据共享方法与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110661780A true CN110661780A (zh) | 2020-01-07 |
Family
ID=69037571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910754773.1A Pending CN110661780A (zh) | 2019-08-15 | 2019-08-15 | 一种基于saas应用的无线城市数据共享方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110661780A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111371840A (zh) * | 2020-02-14 | 2020-07-03 | 平安科技(深圳)有限公司 | 微服务部署方法、装置、计算机设备和存储介质 |
CN112256351A (zh) * | 2020-10-26 | 2021-01-22 | 卫宁健康科技集团股份有限公司 | Feign组件的实现方法、微服务调用方法及装置 |
CN113656498A (zh) * | 2021-08-17 | 2021-11-16 | 厦门汇银通达数字科技有限公司 | 一种企业间数据共享优化方法以及系统 |
CN118410948A (zh) * | 2024-06-27 | 2024-07-30 | 福建省建筑设计研究院有限公司 | 一种基于cim的城市排水管网管理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180165070A1 (en) * | 2016-12-14 | 2018-06-14 | General Electric Company | Service broker code generator |
CN108446111A (zh) * | 2018-03-26 | 2018-08-24 | 国家电网公司客户服务中心 | 一种基于Spring cloud的微服务构建方法 |
CN109922148A (zh) * | 2019-03-04 | 2019-06-21 | 网易(杭州)网络有限公司 | 跨平台服务方法、装置和系统 |
CN109981561A (zh) * | 2019-01-17 | 2019-07-05 | 华南理工大学 | 单体架构系统迁移到微服务架构的用户认证方法 |
-
2019
- 2019-08-15 CN CN201910754773.1A patent/CN110661780A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180165070A1 (en) * | 2016-12-14 | 2018-06-14 | General Electric Company | Service broker code generator |
CN108446111A (zh) * | 2018-03-26 | 2018-08-24 | 国家电网公司客户服务中心 | 一种基于Spring cloud的微服务构建方法 |
CN109981561A (zh) * | 2019-01-17 | 2019-07-05 | 华南理工大学 | 单体架构系统迁移到微服务架构的用户认证方法 |
CN109922148A (zh) * | 2019-03-04 | 2019-06-21 | 网易(杭州)网络有限公司 | 跨平台服务方法、装置和系统 |
Non-Patent Citations (1)
Title |
---|
连城: "浅谈分布式事务实现技术及应用场景探讨", 《信息技术与信息化》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111371840A (zh) * | 2020-02-14 | 2020-07-03 | 平安科技(深圳)有限公司 | 微服务部署方法、装置、计算机设备和存储介质 |
CN112256351A (zh) * | 2020-10-26 | 2021-01-22 | 卫宁健康科技集团股份有限公司 | Feign组件的实现方法、微服务调用方法及装置 |
CN112256351B (zh) * | 2020-10-26 | 2023-11-17 | 卫宁健康科技集团股份有限公司 | Feign组件的实现方法、微服务调用方法及装置 |
CN113656498A (zh) * | 2021-08-17 | 2021-11-16 | 厦门汇银通达数字科技有限公司 | 一种企业间数据共享优化方法以及系统 |
CN118410948A (zh) * | 2024-06-27 | 2024-07-30 | 福建省建筑设计研究院有限公司 | 一种基于cim的城市排水管网管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112000448B (zh) | 基于微服务架构的应用管理方法 | |
US11218566B2 (en) | Control in a content delivery network | |
CN110661780A (zh) | 一种基于saas应用的无线城市数据共享方法与系统 | |
US10498625B1 (en) | Distributed testing service | |
US10659371B1 (en) | Managing throttling limits in a distributed system | |
US7591006B2 (en) | Security for external system management | |
US7917629B2 (en) | Interface for external system management | |
JP2005539298A (ja) | サーバを遠隔かつ動的に構成する方法およびシステム | |
CN111641676B (zh) | 一种第三方云监控服务的构建方法及装置 | |
CN111506367B (zh) | 多集群式人工智能在线服务方法及系统 | |
CN111352716B (zh) | 一种基于大数据的任务请求方法、装置、系统及存储介质 | |
US20070192431A1 (en) | Method and apparatus for service oriented architecture infrastructure switch | |
CN110658794A (zh) | 一种制造执行系统 | |
CN110581893A (zh) | 数据传输方法、装置、路由设备、服务器及存储介质 | |
CN112804289A (zh) | 一种资源同步方法、装置、设备及存储介质 | |
CN115695139A (zh) | 一种基于分布式鲁棒增强微服务系统架构的方法 | |
CN116346948A (zh) | 一种基于微服务的多协议规约转换方法及系统 | |
CN115499432A (zh) | 家庭终端算力资源管理系统及算力资源调度方法 | |
US20070005728A1 (en) | System and method of queued web services | |
CN111176782B (zh) | 一种在线实验方法和装置 | |
US11258860B2 (en) | System and method for bot detection and classification | |
US7912922B2 (en) | Globally unique instance identification | |
CN107330089B (zh) | 跨网络结构化数据收集系统 | |
Chang et al. | An M2M computing model for improving the performance among devices | |
CN115883405B (zh) | 一种服务检测系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200107 |
|
RJ01 | Rejection of invention patent application after publication |