CN109284322A - 一种数据中心 - Google Patents

一种数据中心 Download PDF

Info

Publication number
CN109284322A
CN109284322A CN201811037596.7A CN201811037596A CN109284322A CN 109284322 A CN109284322 A CN 109284322A CN 201811037596 A CN201811037596 A CN 201811037596A CN 109284322 A CN109284322 A CN 109284322A
Authority
CN
China
Prior art keywords
server
library
data
database
interface
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
Application number
CN201811037596.7A
Other languages
English (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.)
Hangzhou Touji Technology Co Ltd
Original Assignee
Hangzhou Touji Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Touji Technology Co Ltd filed Critical Hangzhou Touji Technology Co Ltd
Priority to CN201811037596.7A priority Critical patent/CN109284322A/zh
Publication of CN109284322A publication Critical patent/CN109284322A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • 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
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Abstract

本发明公开了一种数据中心,主要解决中小企业开发上的安全问题,分离开发人员对代码和数据库的管理。同时具备不修改代码可以接入多种多套数据库,并且能对每一次数据库读写进行记录分析sql执行效率。数据中心包括若干个主库服务器、若干个用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器、center数据接口中心、mysql关系型数据库;所述用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器并联设置并分别连接mysql关系型数据库、center数据接口中心且通过mysql关系型数据库管理系统与主库服务器相连接。

Description

一种数据中心
技术领域
本发明涉及基于互联网技术的应用技术领域,具体地说涉及一种数据中心。主要对中小型软件开发公司的开发人员开放使用,在于控制开发人员对数据库的安全应用。
背景技术
互联网公司中大部分公司都是中小型企业,其中许多企业为了节约成本仅招聘了一两个程序员,程序员可能会按照公司需求开发了一套基于互联网的应用(网站或者APP),但小企业无法控制程序员是否会私自备份代码和数据库,程序员一但变动小企业是非常被动的。
企业雇佣的程序员技术能力参差不齐,难免会在开发代码中出现sql注入/xss等漏洞,如果开发人员接入数据操作时不是直接推送sql语句而是按照接口规范传输参数就能统一在数据中心接口处理安全问题;开发人员对数据库的使用效率并不能很好的掌控,部分程序员对有些sql执行超出5秒都无动于衷,极大的影响了整个项目的使用效率;随着企业发展可能会需要接入越来越大型的数据库或者需要接入数据库集群来解决效率问题,许多小企业开发初期只用了一个数据库,到后面要扩展的时候需要改造的成本非常高昂。在运作一些项目的时候发现开发人员对数据库的使用效率并不能很好的掌控,部分程序员对有些sql执行超出5秒都无动于衷,极大的影响了整个项目的使用效率,
发明内容
针对上述现有技术的缺陷,本发明提供一种数据中心,主要解决中小企业开发上的安全问题,分离开发人员对代码和数据库的管理。同时具备不修改代码可以接入多种多套数据库,并且能对每一次数据库读写进行记录分析sql执行效率。
为实现上述目的,本发明所采取的技术方案是:
一种数据中心,包括若干个主库服务器、若干个用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器、center数据接口中心、mysql关系型数据库;所述用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器并联设置并分别连接mysql关系型数据库、center数据接口中心且通过mysql关系型数据库管理系统与主库服务器相连接;所述center数据接口中心并联连接swoole异步网络通信引擎器、memcached服务器、ElasticSearch搜索服务器、消息队列服务器、日志分析数据库;所述swoole异步网络通信引擎器、memcached服务器、ElasticSearch搜索服务器、消息队列服务器间并联连接有第一级负载均衡服务器且该第一级负载均衡服务器与center数据接口中心、drive接口相连接。
作为对上述技术方案的改进,所述drive接口或外接文件服务器、图片服务器、mongodb数据库和第二级负载均衡服务器,所述第二级负载均衡服务器连接核销和支付APP端口、微信授权端口、nodejs服务器。
作为对上述技术方案的改进,所述nodejs服务器或连接文件服务器、图片服务器、mongodb数据库、第三级负载均衡服务器并通过第三级负载均衡服务器分别连接用户端口、管理员端口,所述用户端口可接入能通过互联网写入或调用的应用软件。
作为对上述技术方案的改进,用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器每次读写都会被转化为一条sql信息存储在日志分析数据库中,该sql信息包括执行效率和相关数据的数量、时间、请求接口、请求帐号信息,用于将来分析来自各个接口的效率和速度。
作为对上述技术方案的改进,所述年卡相关库包括年卡用户库和年卡订单库。
作为对上述技术方案的改进,所述主库服务器为关系型数据库,包括第一主库服务器和第二主库服务器,所述第一主库服务器和第二主库服务器可以是多个集群服务器,每个集群服务器由多个独立服务器组成或由一个服务器承担。
作为对上述技术方案的改进,用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器可以是多个集群服务器,每个集群服务器由多个独立服务器组成或由一个服务器承担。
作为对上述技术方案的改进,所述mysql关系型数据库为mysql mmm高可用数据库。
与现有技术相比,本发明具有的优点和积极效果是:
本发明的数据中心主要对中小型软件开发公司的开发人员开放使用,特点在于控制开发人员对数据库的安全应用,为了分离程序员直接管理数据库也控制代码而开发的;具体来说有以下几点好处:1、如果小企业初期开发就使用数据中心接口的方案,就算到了将来要接入数据集群或者更换数据库时,程序员都不需要对代码做出改动;该数据中心可以监控程序员在项目中的所有读写效率,能通过运维与程序员的沟通交流及时解决sql执行效率过低的问题;数据中心接口还充当了三级缓存,当数据被请求时可以根据负载的情况对读库节点降低IO压力,从历史缓存中输出未过期的数据暂时抛回给请求接口;2、数据中心接口在大并发下还充当了负载均衡(Server Load Balancer)的能力,是将访问流量根据转发策略分发到后端多台数据库服务器的流量分发控制服务;在结合真实的负载均衡服务通过设置虚拟服务地址,将位于同一地域的多台数据库服务器虚拟成一个高性能、高可用的应用服务池;再根据应用指定的方式,将来自客户端的网络请求分发到云服务器池中,需要同nginx结合使用;3、可以随时增加、减少数据库服务器,后端数据库服务器出现异常时DBA部门可以平滑切换后端数据库服务器,当流量暴涨时可以随时增加新的服务器来承担负载;4、暴露在网络上的ip是负载均衡的ip,黑客很难通过负载均衡开放以外的端口攻击真实的数据库服务器;5、非技术开发公司无法投入大量的人力在数据库的安全优化上,所以数据中心接口在没有专业DBA运维管理员的时候也会安全的多;6、提供专业的日志报告,包括查询的效率等日常程序对数据库操作的记录分析,对技术提升有决定因素,没有专业DBA运维管理员的数据库服务器是很难做到这个日志分析报告的;7、备份还原方便,提供有效快捷的备份还原机制;8、创建从库快捷简单,管理员能在半小时内完成从库创建,代码增加从库就可以分担数据库压力,而自建数据库需要同步数据,10G内的数据同步最少要在一个小时左右;10、本发明使用数据接口应用能有效的避免中小型公司由于程序员工作的需要分不开数据库和代码的管理权限,程序员既负责管理数据库也管理代码开发,一旦出现开发人员流失,项目代码被拷贝,就能快速搭建一套一样的网站或者软件,而数据中心接口可以有效的将数据库管理分开又不影响程序员正常操作数据表的管理;由于开发人员开发项目时严格按照数据中心接口的规范书写代码,所以当技术人员离开公司后不能获得整套数据中心接口的权限,拷贝出去的代码就不能发挥正常作用,无法在短期内全部修改接口成为可用产品;11、本发明可以同时使用多套mysql、mssql、oracle数据库,或者同使用同一套mysql数据库下的多个库,并且接口本身集alpha、rc、release环境为一体,利用不同的角色权限调用不同的数据,在大并发或者统计数据时数据中心会根据读写库的配置不同自动分离流量到已经配置的各个从库上,以减轻主库压力;同时将每一次数据库操作内容、操作时间、执行效率都进行了记录,记录可以输出分析哪些表或语法出现效率问题,反馈给开发人员;12、本发明使用php语言开发的代码,借助nginx或者apache可以提供http、https方式调用数据接口,也能够借助swoole提供tcp、udp方式调用数据接口,虽然需要借助第三方的服务环境才能运行,但可以灵活部署在支持php环境的服务器上,而且只要启动环境就能轻易完成集群服务提高负载效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的总结构示意图;
图2为本发明的数据库架构示意图;
图3为本发明的center架构示意图;
图4为本发明的drive/php接口架构示意图;
图5为本发明的drive接口架构示意图;
图6为本发明的前端nodejs架构示意图;
图7为本发明的应用整体流程图;
图8为本发明的数据库读写流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
如图1、2、3、4、5、6、7、8所示,本发明的数据中心,包括若干个主库服务器、若干个用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器、center数据接口中心、mysql关系型数据库;所述用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器并联设置并分别连接mysql关系型数据库、center数据接口中心且通过mysql关系型数据库管理系统与主库服务器相连接;所述center数据接口中心并联连接swoole异步网络通信引擎器、memcached服务器、ElasticSearch搜索服务器、消息队列服务器、日志分析数据库;所述swoole异步网络通信引擎器、memcached服务器、ElasticSearch搜索服务器、消息队列服务器间并联连接有第一级负载均衡服务器且该第一级负载均衡服务器与center数据接口中心、drive接口相连接。
作为对上述技术方案的改进,所述drive接口或外接文件服务器、图片服务器、mongodb数据库和第二级负载均衡服务器,所述第二级负载均衡服务器连接核销和支付APP端口、微信授权端口、nodejs服务器。
作为对上述技术方案的改进,所述nodejs服务器或连接文件服务器、图片服务器、mongodb数据库、第三级负载均衡服务器并通过第三级负载均衡服务器分别连接用户端口、管理员端口,所述用户端口可接入能通过互联网写入或调用的应用软件。
作为对上述技术方案的改进,用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器每次读写都会被转化为一条sql信息存储在日志分析数据库中,该sql信息包括执行效率和相关数据的数量、时间、请求接口、请求帐号信息,用于将来分析来自各个接口的效率和速度。
作为对上述技术方案的改进,所述年卡相关库包括年卡用户库和年卡订单库。
作为对上述技术方案的改进,所述主库服务器为关系型数据库,包括第一主库服务器和第二主库服务器,所述第一主库服务器和第二主库服务器可以是多个集群服务器,每个集群服务器由多个独立服务器组成或由一个服务器承担。
作为对上述技术方案的改进,用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器可以是多个集群服务器,每个集群服务器由多个独立服务器组成或由一个服务器承担。
作为对上述技术方案的改进,所述mysql关系型数据库为mysql mmm高可用数据库。
如图2所示,mysql:是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(Relational Database Management System,关系数据库管理系统)应用软件;对应总系统架构图“主1”、“主2”到“Center数据接口中心”之间的部分都属于数据架构;主库服务器可以是多个集群,每个集群服务器由多个独立服务器组成,也可以只由一个服务器承担;mysql mmm:Mysql高可用架构MMM(Master-Master replication managerfor MySQL),是一套支持双主故障切换和双主日常管理的脚本程序;用户库、商户库、商品库、订单库、日志库、年卡相关库都属于从库集群,每个集群都是由多台独立数据库服务器组成,按功能分开调用不同的集群服务器来缓解数据库并发压力,对于中小企业可以只搭建主库服务器。
如图3所示,woole:面向生产环境的PHP异步网络通信引擎。使PHP开发人员可以编写高性能的异步并发TCP、UDP、Unix Socket、HTTP,WebSocket服务。Swoole可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。使用PHP+Swoole作为网络通信框架,可以使企业IT研发团队的效率大大提升,更加专注于开发创新产品;php:(外文名:PHP:Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快;memcache:这里是用了memcached的服务,只是该服务也可以由memcache来提供,Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon)是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信;ElasticSearch:是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。我们建立一个网站或应用程序,并要添加搜索功能,但是想要完成搜索工作的创建是非常困难的。我们希望搜索解决方案要运行速度快,我们希望能有一个零配置和一个完全免费的搜索模式,我们希望能够简单地使用JSON通过HTTP来索引数据,我们希望我们的搜索服务器始终可用,我们希望能够从一台开始并扩展到数百台,我们要实时搜索,我们要简单的多租户,我们希望建立一个云的解决方案。因此我们利用Elasticsearch来解决所有这些问题以及可能出现的更多其它问题。消息队列:是在消息的传输过程中保存消息的容器。消息队列管理器在将消息从它的源中继到它的目标时充当中间人。队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功地传递它;负载均衡:建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
如图4所示,drive接口是我们为数据中心系统接口提供的而外的应用级接口,通过drive接口提供除数据库读写之外的能力,目前提供了数百种小型应用能力,典型的如:微信授权、支付宝授权、微信支付、支付宝支付、库存计算、缓存读写、简易分词、数学计算、图片上传、文件上传、时间格式转换、分页计算、验证码、字符串截取、字符串转换等等;mongodb:是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。我们利用mongodb作为drive接口进行非数据型信息的保存,可以极大的提高drive的执行效率。
如图5、图6所示,所示,前端nodejs架构主要是用于演示系统用,center和drive可以通过网络方式提供接口服务,这样一来应用可以是任何一种语言,所以我们利用nodejs组建了一个演示系统;nodejs:原名Node.js是一个Javascript运行环境(runtime),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装。Node.js对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好。
center部署
认识系统架构之间的关系,数据库架构是存储数据的部分,center架构是用于负载并读写数据库架构的数据中心系统接口的核心部分,drive接口是在center对数据读写之外提供的工具性扩展接口,将来也会不停的扩展新能力,前端nodejs架构是用于系统演示的部分,drive架构及nodejs架构,用户可以选择不安装使用;安装数据库,目前我们数据库支持mysql、mssql、oracle,这几种数据库网上都是有对应安装的教材;安装数据库高可用框架如mysql就有对用的高可用框架MMM;在数据接口服务器部署nginx或者apahce环境并且支持php语言,条件允许可以部署swoole增加tcp、udp等数据接口方式(相对而言udp的接口方式会比教快);修改center数据中心系统接口中的db文件,添加主、从数据库的地址、账号、密码等信息;使用默认帐号登录center,进行密码修改,数据库数据表的管理,添加授权用户,可以指定授权用户获得哪些数据库哪些数据表的“读、写”权限;使用以下脚本(php)测试一下center数据中心是否正常:
$body=array(
'appid'=>'授权用户的帐号',
'tableId'=>'刚刚创建的表名或者表对应的编号',
'where'=>'查询数据要使用的条件,如:字段=值',
'debug'=>'false|true是否返回sql语法'
);
$url=数据中心在nginx的地址.'/api/index/one/';
$sign=IO::SetSign($body,'授权用户的密码');
$body['sign']=$sign;
$httpinfo=IO::CurlHttp($url,$body,'POST');
print_r($httpinfo);//查看$httpinfo是否有返回,有返回说明搭建center成功
drive部署:在接口服务器部署nginx或者apahce环境并且支持php语言,上传drive代码;修改drive接口框架中的db文件,将数据中心地址添加到配置文件中;使用以下脚本(php)测试drive接口框架是否正常:
$body=array(
'appid'=>'授权用户的帐号',
'function'=>'要调用的接口函数名,如:DateTimeCustom时间转换',
'parameter'=>'要操作的参数,如:{"2017-10-0100:00:00","gmdate"}'
);
$url=drive在nginx的地址;
$sign=IO::SetSign($body,'授权用户的密码');
$body['sign']=$sign;
$httpinfo=IO::CurlHttp($url,$body,'POST');
print_r($httpinfo);//查看$httpinfo是否有返回,返回1506787200表示drive接口部署成功
本发明的数据中心主要对中小型软件开发公司的开发人员开放使用,特点在于控制开发人员对数据库的安全应用,为了分离程序员直接管理数据库也控制代码而开发的;具体来说有以下几点好处:1、如果小企业初期开发就使用数据中心接口的方案,就算到了将来要接入数据集群或者更换数据库时,程序员都不需要对代码做出改动;该数据中心可以监控程序员在项目中的所有读写效率,能通过运维与程序员的沟通交流及时解决sql执行效率过低的问题;数据中心接口还充当了三级缓存,当数据被请求时可以根据负载的情况对读库节点降低IO压力,从历史缓存中输出未过期的数据暂时抛回给请求接口;2、数据中心接口在大并发下还充当了负载均衡(Server Load Balancer)的能力,是将访问流量根据转发策略分发到后端多台数据库服务器的流量分发控制服务;在结合真实的负载均衡服务通过设置虚拟服务地址,将位于同一地域的多台数据库服务器虚拟成一个高性能、高可用的应用服务池;再根据应用指定的方式,将来自客户端的网络请求分发到云服务器池中,需要同nginx结合使用;3、可以随时增加、减少数据库服务器,后端数据库服务器出现异常时DBA部门可以平滑切换后端数据库服务器,当流量暴涨时可以随时增加新的服务器来承担负载;4、暴露在网络上的ip是负载均衡的ip,黑客很难通过负载均衡开放以外的端口攻击真实的数据库服务器;5、非技术开发公司无法投入大量的人力在数据库的安全优化上,所以数据中心接口在没有专业DBA运维管理员的时候也会安全的多;6、提供专业的日志报告,包括查询的效率等日常程序对数据库操作的记录分析,对技术提升有决定因素,没有专业DBA运维管理员的数据库服务器是很难做到这个日志分析报告的;7、备份还原方便,提供有效快捷的备份还原机制;8、创建从库快捷简单,管理员能在半小时内完成从库创建,代码增加从库就可以分担数据库压力,而自建数据库需要同步数据,10G内的数据同步最少要在一个小时左右;10、本发明使用数据接口应用能有效的避免中小型公司由于程序员工作的需要分不开数据库和代码的管理权限,程序员既负责管理数据库也管理代码开发,一旦出现开发人员流失,项目代码被拷贝,就能快速搭建一套一样的网站或者软件,而数据中心接口可以有效的将数据库管理分开又不影响程序员正常操作数据表的管理;由于开发人员开发项目时严格按照数据中心接口的规范书写代码,所以当技术人员离开公司后不能获得整套数据中心接口的权限,拷贝出去的代码就不能发挥正常作用,无法在短期内全部修改接口成为可用产品;11、本发明可以同时使用多套mysql、mssql、oracle数据库,或者同使用同一套mysql数据库下的多个库,并且接口本身集alpha、rc、release环境为一体,利用不同的角色权限调用不同的数据,在大并发或者统计数据时数据中心会根据读写库的配置不同自动分离流量到已经配置的各个从库上,以减轻主库压力;同时将每一次数据库操作内容、操作时间、执行效率都进行了记录,记录可以输出分析哪些表或语法出现效率问题,反馈给开发人员;12、本发明使用php语言开发的代码,借助nginx或者apache可以提供http、https方式调用数据接口,也能够借助swoole提供tcp、udp方式调用数据接口,虽然需要借助第三方的服务环境才能运行,但可以灵活部署在支持php环境的服务器上,而且只要启动环境就能轻易完成集群服务提高负载效率。
如图7所示,本发明的应用:应用可以是任何能通过互联网使用的软件,web网页、微信公众号、支付宝服务号、小程序、app等都可以接入数据中心接口;接入数据安全校验:通常接口的验证校验都是基于oauth2.0模式的,我们在这个模式下做了一个小的变化,将临时令牌与时间加密后提供给请求应用,应用调用数据中心接口前都需要做一次令牌校验;有效缓存:将每次查询条件转为字符串后进行哈希加密变成一个唯一字符串,将从关系型数据库中取出的符合条件的数据存储到非关系数据库中,下次碰到同一个查询条件,优先从非关系数据库同步返回接口,在执行关系数据库查询后更新非关系数据库,异步回调返回接口。这种做法可以让常规接口请求快上很多,虽然可能拿到的数据可能有偏差,但是异步回调会修正这次偏差(仅用于带接口请求时标识接收缓存数据的接口);生成sql:关系型数据库的每次读写都会被转化为一条sql存储在日志分析数据库中,包括这条sql的执行效率和相关数据的数量、时间、请求接口、请求帐号等信息。用于将来分析来自各个接口的效率和速度;从库:关系型数据库的同步从库,可以根据业务需求进行增加删除,主要作用是分担数据库服务器的并发压力;主库:关系型数据库,可以由多台数据库组成一个数据库聚群,虽然可以做集群,但是读写分离除了增加并发外,主要意图就是隔离安全隐患,主库需要更高的权限才能进行操作。

Claims (8)

1.一种数据中心,其特征在于:包括若干个主库服务器、若干个用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器、center数据接口中心、mysql关系型数据库;所述用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器并联设置并分别连接mysql关系型数据库、center数据接口中心且通过mysql关系型数据库管理系统与主库服务器相连接;所述center数据接口中心并联连接swoole异步网络通信引擎器、memcached服务器、ElasticSearch搜索服务器、消息队列服务器、日志分析数据库;所述swoole异步网络通信引擎器、memcached服务器、ElasticSearch搜索服务器、消息队列服务器间并联连接有第一级负载均衡服务器且该第一级负载均衡服务器与center数据接口中心、drive接口相连接。
2.根据权利要求1所述的数据中心,其特征在于:所述drive接口或外接文件服务器、图片服务器、mongodb数据库和第二级负载均衡服务器,所述第二级负载均衡服务器连接核销和支付APP端口、微信授权端口、nodejs服务器。
3.根据权利要求2所述的数据中心,其特征在于:所述nodejs服务器或连接文件服务器、图片服务器、mongodb数据库、第三级负载均衡服务器并通过第三级负载均衡服务器分别连接用户端口、管理员端口,所述用户端口可接入能通过互联网写入或调用的应用软件。
4.根据权利要求3所述的数据中心,其特征在于:用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器每次读写都会被转化为一条sql信息存储在日志分析数据库中,该sql信息包括执行效率和相关数据的数量、时间、请求接口、请求帐号信息,用于将来分析来自各个接口的效率和速度。
5.根据权利要求3所述的数据中心,其特征在于:所述年卡相关库包括年卡用户库和年卡订单库。
6.根据权利要求3所述的数据中心,其特征在于:所述主库服务器为关系型数据库,包括第一主库服务器和第二主库服务器,所述第一主库服务器和第二主库服务器可以是多个集群服务器,每个集群服务器由多个独立服务器组成或由一个服务器承担。
7.根据权利要求6所述的数据中心,其特征在于:用户库服务器、商户商品库服务器、订单库服务器、日志库服务器、年卡相关库服务器可以是多个集群服务器,每个集群服务器由多个独立服务器组成或由一个服务器承担。
8.根据权利要求3所述的数据中心,其特征在于:所述mysql关系型数据库为mysql mmm高可用数据库。
CN201811037596.7A 2018-09-06 2018-09-06 一种数据中心 Pending CN109284322A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811037596.7A CN109284322A (zh) 2018-09-06 2018-09-06 一种数据中心

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811037596.7A CN109284322A (zh) 2018-09-06 2018-09-06 一种数据中心

Publications (1)

Publication Number Publication Date
CN109284322A true CN109284322A (zh) 2019-01-29

Family

ID=65183610

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811037596.7A Pending CN109284322A (zh) 2018-09-06 2018-09-06 一种数据中心

Country Status (1)

Country Link
CN (1) CN109284322A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110262812A (zh) * 2019-06-24 2019-09-20 四川新网银行股份有限公司 将es集群中的角色进行分离的方法
CN110570859A (zh) * 2019-09-20 2019-12-13 Oppo广东移动通信有限公司 智能音箱控制方法、装置、系统及存储介质
CN111383404A (zh) * 2020-03-06 2020-07-07 浙江智科炬新科技有限公司 一种基于pos机优惠活动结算系统及方法
CN112667698A (zh) * 2021-01-04 2021-04-16 山西云媒体发展有限公司 一种基于融媒体平台的MongoDB数据同步方法
CN114205345A (zh) * 2021-11-22 2022-03-18 银盛通信有限公司 一种物联网给iccid设置服务码的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102523234A (zh) * 2011-12-29 2012-06-27 山东中创软件工程股份有限公司 一种应用服务器集群实现方法及系统
CN102968310A (zh) * 2012-12-05 2013-03-13 武汉烽火普天信息技术有限公司 一种一体化高性能应用软件架构及构建方法
CN104618508A (zh) * 2015-02-26 2015-05-13 浪潮电子信息产业股份有限公司 一种基于Nginx、Memcached、Tomcat负载均衡网状架构
US20160357778A1 (en) * 2015-06-02 2016-12-08 David MacKenzie System for handling event messages for file collaboration
CN107025270A (zh) * 2017-03-09 2017-08-08 珠海昊星自动化系统有限公司 一种分布式高性能高并发大数据系统
CN108023925A (zh) * 2016-11-04 2018-05-11 宁波甬派传媒股份有限公司 一种高并发新闻信息处理系统
CN108182215A (zh) * 2017-12-22 2018-06-19 微梦创科网络科技(中国)有限公司 一种结构化查询语言sql性能统计的方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102523234A (zh) * 2011-12-29 2012-06-27 山东中创软件工程股份有限公司 一种应用服务器集群实现方法及系统
CN102968310A (zh) * 2012-12-05 2013-03-13 武汉烽火普天信息技术有限公司 一种一体化高性能应用软件架构及构建方法
CN104618508A (zh) * 2015-02-26 2015-05-13 浪潮电子信息产业股份有限公司 一种基于Nginx、Memcached、Tomcat负载均衡网状架构
US20160357778A1 (en) * 2015-06-02 2016-12-08 David MacKenzie System for handling event messages for file collaboration
CN108023925A (zh) * 2016-11-04 2018-05-11 宁波甬派传媒股份有限公司 一种高并发新闻信息处理系统
CN107025270A (zh) * 2017-03-09 2017-08-08 珠海昊星自动化系统有限公司 一种分布式高性能高并发大数据系统
CN108182215A (zh) * 2017-12-22 2018-06-19 微梦创科网络科技(中国)有限公司 一种结构化查询语言sql性能统计的方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110262812A (zh) * 2019-06-24 2019-09-20 四川新网银行股份有限公司 将es集群中的角色进行分离的方法
CN110570859A (zh) * 2019-09-20 2019-12-13 Oppo广东移动通信有限公司 智能音箱控制方法、装置、系统及存储介质
CN111383404A (zh) * 2020-03-06 2020-07-07 浙江智科炬新科技有限公司 一种基于pos机优惠活动结算系统及方法
CN112667698A (zh) * 2021-01-04 2021-04-16 山西云媒体发展有限公司 一种基于融媒体平台的MongoDB数据同步方法
CN114205345A (zh) * 2021-11-22 2022-03-18 银盛通信有限公司 一种物联网给iccid设置服务码的方法

Similar Documents

Publication Publication Date Title
US11741244B2 (en) Partial policy evaluation
CN109284322A (zh) 一种数据中心
US11669321B2 (en) Automated database upgrade for a multi-tenant identity cloud service
US11170099B1 (en) Filtering policies for evaluation by an embedded machine
George HBase: the definitive guide: random access to your planet-size data
Bates et al. Towards secure provenance-based access control in cloud environments
CN108701182A (zh) 多租户身份云服务的数据管理
CN104283875B (zh) 云盘权限管理方法
US10671709B2 (en) Data isolation in distributed hash chains
CN108536433A (zh) 一种j2ee开发框架和基于该j2ee开发框架的开发方法
CN104410604A (zh) 实现大规模用户同时登录的SaaS服务系统及其方法
CN108269056A (zh) 政务信息资源管理系统
Won et al. Moving metadata from ad hoc files to database tables for robust, highly available, and scalable HDFS
Kumar et al. Modern Big Data processing with Hadoop: Expert techniques for architecting end-to-end Big Data solutions to get valuable insights
Zarei et al. Past, present and future of Hadoop: A survey
CN105989049A (zh) 一种数据中间层实现方法及系统
WO2022200891A1 (en) Reducing transaction aborts in execute-order-validate blockchain models
Fu et al. Soteria: A provably compliant user right manager using a novel two-layer blockchain technology
Carstoiu et al. Zatara, the Plug-in-able Eventually Consistent Distributed Database
Torta Personal Data Safe: a flexible storage system for personal data
Mehrabani MongoDB High Availability
US11258677B1 (en) Data representation generation without access to content
Bach Expert Consolidation in Oracle Database 12c
US20220237503A1 (en) Machine learning model deployment within a database management system
Wang et al. Research and implementation of unified access technology in the field of health and elderly care

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190129