CN106155697A - 一种面向服务的开发框架(YC‑Framework) - Google Patents
一种面向服务的开发框架(YC‑Framework) Download PDFInfo
- Publication number
- CN106155697A CN106155697A CN201610613865.4A CN201610613865A CN106155697A CN 106155697 A CN106155697 A CN 106155697A CN 201610613865 A CN201610613865 A CN 201610613865A CN 106155697 A CN106155697 A CN 106155697A
- Authority
- CN
- China
- Prior art keywords
- service
- layer
- framework
- data
- services
- 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
- 238000011161 development Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 claims description 25
- 230000008569 process Effects 0.000 claims description 21
- 238000005538 encapsulation Methods 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 9
- 238000009826 distribution Methods 0.000 claims description 9
- 230000002688 persistence Effects 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 6
- 238000003860 storage Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 5
- 238000003032 molecular docking Methods 0.000 claims description 5
- 230000013011 mating Effects 0.000 claims description 4
- 230000000712 assembly Effects 0.000 claims description 3
- 238000000429 assembly Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000007726 management method Methods 0.000 claims description 3
- 239000000344 soap Substances 0.000 claims description 3
- 238000013519 translation Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 230000006978 adaptation Effects 0.000 claims description 2
- 238000013501 data transformation Methods 0.000 claims description 2
- 238000010606 normalization Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 abstract description 8
- 230000008878 coupling Effects 0.000 abstract description 4
- 238000010168 coupling process Methods 0.000 abstract description 4
- 238000005859 coupling reaction Methods 0.000 abstract description 4
- 238000013461 design Methods 0.000 abstract description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000002347 injection Methods 0.000 description 3
- 239000007924 injection Substances 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 239000005441 aurora Substances 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 235000015170 shellfish Nutrition 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种面向服务的开发框架(YC‑Framework),主要包括:API接口层、通讯协议层、数据逻辑层、系统服务层、公共组件和统一配置。在系统服务层中通过SOA将业务产品中遇到的各种功能业务抽象出来形成一个个高复用率的服务,以独立的服务形态服务所有的业务产品中的业务逻辑,对外提供稳定、健壮的底层系统服务支撑;引入逻辑分层的设计,通过简单上下层的逻辑关系进行互连;并采用统一配置实现对各层的配置管理,采用公共组件实现路由、安全防范等工作;最终实现了一种高负载、可扩展、可维护、快速迭代的面向服务的开发框架(YC‑Framework)。该YC‑Framework具有服务单例化、松耦合化、协议标准化、跨平台、跨语言等优良特点。
Description
技术领域
本发明涉及计算机互联网领域,特别是涉及开发网站与移动APP相关领域,尤其是一种面向服务的开发框架,即YC-Framework。
背景技术
在每个互联网产品研发过程中,业务逻辑间的耦合性在现在IT产品中直接影响到产品的迭代速度、可维护性、可扩展性,恰恰现有的各类开发框架均没有达到灵活配置、跨平台、跨语言、代码高度可复用,仅仅实现了MVC模式开发。
目前市面上已有的一些互联网开发框架主要有CakePHP、YII、Symfony、Laravel等,相比之下,这些产品的缺点,一是,整个框架太重,运行效率慢;二是,学习成本比较高;三是,这些产品只是一个基础开发框架,在实际项目开发中,需要根据不同需求,定制开发不同的项目,项目复用性较低。
发明内容
本发明的目的是:针对上述现有开发框架的问题与缺陷,本发明提供了一种面向服务(SOA)的开发框架(YC-Framework),其弥补了现有框架的短板:通过SOA将IT产品中遇到的各种功能业务抽象出来形成一个个高复用率的服务,以独立的服务形态服务所有的IT产品中的业务逻辑,对外提供稳定、健壮的底层支撑;引入逻辑分层的设计,包括API接口层、通讯协议层、数据逻辑层、系统服务层,通过简单上下层的逻辑关系进行互连;采用统一配置对API层、通讯协议层、数据逻辑层和系统服务层的所有配置信息进行管理;采用公共组件实现路由、安全防范等工作;最终实现了一种高负载、可扩展、可维护、快速迭代的面向服务的开发框架(YC-Framework)。
本发明的技术方案是:
提供一种面向服务的开发框架YC-Framework,包括API接口层、通讯协议层、数据逻辑层、系统服务层、公共组件和统一配置;其中,API接口层是框架输入输出数据流的对接口,实现提供异构语言、异构终端的接入能力,接口调用和适配能力,调用次数限制能力;通讯协议层为API接口层和数据逻辑层的中间通讯协议,通过标准的接口完成API接口层所需的协议翻译,完成第三方服务的对接工作;数据逻辑层完成数据的读写和组装,将请求所需的数据从服务层中获取并完成数据处理的工作;系统服务层为整个框架的数据中心,包含多个独立封装的服务,每个服务可以使用不同的开发语言开发,各个服务定义通用的读写接口驱动,以适应各种高性能的分布式系统以及根据后期应用产品的迭代自由添加和删除服务,所述服务之间互不影响,服务资源共享,可扩展,可重用;公共组件,实现开发框架内部公共逻辑的处理工作;统一配置,涉及对API接口层、通讯协议层、数据逻辑层、系统服务层的所有配置信息的管理。
所述通讯协议层包含Restful标准数据格式协议和Soap、Socket、HTTP标准通信协议,通过协议实现了不同终端之间数据标准化交互。
所述不同终端包含APP、PC、H5、WAP。
所述系统服务层的多个服务包含:数据持久化服务、缓存服务、文件存储服务、文件上传服务、加密服务、分享组件服务、支付服务、消息通知服务、消息推送服务、定位服务、用户认证服务、邮件服务、短信服务、短地址服务、日志服务、错误处理服务、图片处理服务、任务调度服务、队列服务、表单生成服务、关键词服务、用户行为统计服务、模版引擎服务、流媒体服务。
所述统一配置进行包括数据库连接帐号密码、第三方登陆帐号密码、使用的通讯协议类型、数据库类型、缓存类型的选择配置工作。
所述系统服务层中各个服务封装时的接口支持restful标准请求资源,实现JSON、XML双格式自由切换。
所述公共组件包含路由组件、过滤组件、安全防范组件,主要是实现URI请求的解析、分发工作,对外部访问所请求的数据进行安全过滤以及安全防范,以及一些公共数据的转换。
还提供了一种如权利要求1所述的开发框架YC-Framework的服务使用方法,包括如下步骤:
第一步:通过配置文件加载业务所需的服务,完成基础开发框架最小运行环境;
第二步:从API接口层接收不同用户终端的入口请求资源;
第三步:根据不同终端来源,通过路由表权限服务审核请求内容的权限,如果权限有问题,进入错误处理服务,提示输出原因;如果权限没问题进入下一步;
第四步:通过路由表服务,分析终端请求资源内容,将请求转发到服务层;
第五步:根据服务层请求调度系统服务获取请求所需的资源;
第六步:根据所请求的资源,对请求调度的服务进行服务访问配置;
第七步:负载均衡处理,根据后端服务压力,动态分发请求资源内容到不同后端服务上;
第八步:所请求资源对服务进行读或者写访问,根据读写动作的不同来获取数据;
第九步:获取数据后,通过Restful标准输出数据,所述数据包含状态数据和资源数据,输出数据标准格式为JSON或XML;
第十步 将上述输出数据返回给用户,结束请求,至此,完成了一个服务从请求到输出的所有流程。
本发明的有益技术效果是:服务单例化,服务之间互不影响,服务不依赖于其他服务的上下文和状态,在实现时它不需要获取从一个请求到另一个请求的信息或状态;服务资源可共享,可扩展、可重用;松耦合化,不相关程序语言,不相关底层平台,根据需要组合服务;协议标准化,适用各种开放标准化协议;跨平台、跨语言,将行业应用从适配不同终端、不同业务系统的开发环节中解放出来,使研发人员专注于业务服务的实现和业务流程的优化,缩短研发周期,提高了效率;安全可靠,框架本身有统一安全防范组件,适用所有服务,保证服务安全性。
附图说明
为了更清楚地说明本发明的技术方案,下面将结合附图对具体实施例进行描述,此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其附图说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1所示为本发明的面向服务的开发框架的示意性结构图;
图2所示为本发明的整体开发框架服务使用流程图。
具体实施例
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例作进一步详细描述。
本发明提供了一套有一定开发标准、代码复用率高、可扩展性高和稳定运行的成熟开发框架。
如图1所示为本发明的面向服务的开发框架的示意性结构图。
本发明的开发框架按层主要划分为4层:API接口层、通讯协议层、数据逻辑层、系统服务层。在业务应用系统中使用分层的架构模式,将系统在横向维度上切分成几个部分,每个部分负责一部分相对比较单一的职责,然后通过上层对下层的依赖和调用组成一个完整的系统,能给框架带来源码高度的可读性、更低的耦合性。各层分别包括如下:
API接口层:是框架输入输出数据流的对接口,为实现一次开发适用于多种终端(APP、PC、H5、WAP),该层主要提供异构语言、异构终端的接入能力、不同终端接口调用和适配能力、调用次数限制能力等;
通讯协议层:该层为API接口层和数据逻辑层的中间通讯协议,通过标准的接口完成API接口层所需的协议翻译工作;包含Restful标准数据格式协议和Soap、Socket、HTTP标准通信协议;
数据逻辑层:该层主要完成数据的读写和组装,将请求所需的数据从系统服务层的多个服务中获取、合并、并完成数据处理等工作;
系统服务层:该层为整个框架的数据中心,每种服务定义通用的读写接口驱动,使开发者不必关心服务背后能力的提供者是谁。
其中,系统服务层的各种服务经过严谨的封装形成可独立运行的具有通用接口的代码包,以适应各种高性能的分布式系统以及根据后期应用产品的迭代自由添加和删除服务不影响产品的运行,达到高可用要求。所述服务层的服务具体包括但不限于以下几种:
数据持久化服务:封装Mysql、Mongodb、Oracle、SqlServer(MSSQL)标准的数据库读写接口驱动,实现统一接口完成各种数据库的对接工作;
缓存服务:封装Redis、Memcache、OPcache、Xcache, Filecache标准的缓存读写接口驱动,实现统一接口完成各种缓存应用的对接工作;
文件存储服务:封装文件系统的标准读写接口驱动,实现统一接口完成文件系统、TFS、NAS、云存储系统的读写工作;
文件上传服务:封装标准上传接口驱动,实现统一接口驱动完成本地文件系统、第三方上传接口的各种类型的文件上传、验证、命名、上传大小限制、文件类型限制、进度条反馈等工作;
加密服务:封装主流加密方案RSA、DES、3DS、AES、MD5接口驱动,实现统一加解密接口,提高系统数据传输安全性;
分享组件服务:封装国内外流行的第三方分享组件接口驱动,通过配置API密钥实现分享功能的开关;
支付服务:封装支付宝支付、微信支付、Apple Pay、贝宝统一的接口驱动,通过配置密钥信息实现支付功能的开关和支付回调工作的处理;
消息通知服务:封装消息通知服务的接口驱动,所有业务系统内部时时消息的通知,开放轮询检查是否有新消息、Socket时时推拉消息;
消息推送服务:封装推送服务的接口驱动,实现对接第三方推送服务极光、友盟、以及对接苹果等推送接口,实现多平台推送服务;
定位服务:封装标准定位相关服务接口驱动,实现经纬度信息上传、计算距离、查找周边、反查地址等工作;
用户认证服务:封装标准认证服务接口驱动,实现基础用户认证、OAuth、JWT等认证体系;
邮件服务:实现邮件服务标准接口驱动,实现第三方邮局以及自建邮局的邮件收发、解析邮件内容等工作;
短信服务:实现短信标准接口驱动,实现第三方短信提供商收发、解析短信内容等工作;
短地址服务:实现统一接口驱动,实现第三方短地址服务以及自建长连接转换成端连接、端连接转成长连接等工作;
日志服务:实现统一的接口驱动,对系统关键、敏感信息使用标准接口记录日志、分布式日志系统上传等,提供数据统计分析业务;
错误处理服务:对系统级别、业务级别错误反馈提供统一接口驱动,供所有业务对接使用;
图片处理服务:实现图片处理接口驱动,GD2库、Imagick库通过标准接口处理图片文件压缩、打水印、裁剪等工作,对移动端图片返回指定分辨率下的图片格式;
任务调度服务:实现定时任务处理工作;
队列服务:实现队列服务标准接口驱动,完成第三方队列服务Redis、queue读写操作,实现先进先出功能,解决需要有强制排队要求的业务需求,如:在线排队购票、排队抢购等电商需求;
表单生成服务:实现表单自定义配置生成功能;
关键词服务:实现违禁关键词库、敏感词库、搜索关键词库等功能数据;
用户行为统计服务:实现数据统计数据采集、用户访问量/页面访问量/IP访问量统计、生成统计报表;
模版引擎服务:实现支持模版引擎接口驱动,可按照需求切换至的模版引擎如Smarty等,实现前端HTML页面渲染服务;
流媒体服务:实现音视频推流、转码、拉流、录制等标准接口驱动,实现在线音视频的直播、点播服务,同时可以基于文件存储服务将录制的音视频文件进行持久化存储。
同时,在本发明的开发框架内还建立了多个公共组件,以完成框架的路由、安全防范等工作。各组件具体包括:
路由组件:实现URI请求的解析、分发工作,将业务系统所需的资源分发定位到框架内资源位置。主要包括路由表权限服务和路由表服务。
安全防范组件:针对URI请求地址中存在的各种危险进行处理,即URI请求防范,防范恶意IP攻击以及配置IP访问权限。其中,URI请求防范包括:SQL注入过滤、XSS漏洞过滤、CRSF跨站请求处理、文件上传安全检测处理、下载文件目录安全以及文件类型检测处理;IP访问权限包括:访问控制表(ACL)配置,允许和屏蔽指定IP或者IP段访问应用,对于异常访问的IP地址进行指定时间内自动封锁IP。例如,安全防范组件可以实现SQL注入攻击防范。如果在编写SQL语句的时候,用户输入的变量不是直接嵌入到SQL语句。而是通过参数来传递这个变量的话,那么就可以有效的防治SQL注入式攻击。也就是说,用户的输入绝对不能够直接被嵌入到SQL语句中。与此相反,用户的输入的内容必须进行过滤,或者使用参数化的语句来传递用户输入的变量。参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。采用这种措施,可以杜绝大部分的SQL注入式攻击。该安全防范组件还可以实现CSRF攻击防范、XSS跨站攻击防范等。
过滤组件:实现了对用户输入输出数据的格式化过滤,对特殊字符,空格,非法字符,进行搜索过滤,替换,对HTML.JS等数据进行格式化过滤处理。
数据转换组件:实现了各类数据类型格式的转换,排序算法,数据格式化输出等模块需求。
另外,本发明的开发框架还包括统一配置,涉及API接口层、通讯协议层、数据逻辑层、系统服务层的所有配置信息的管理,包括数据库连接帐号密码、第三方登陆帐号密码、使用的通讯协议类型、数据库类型、缓存类型的选择配置等工作。配置是将一组为实现某一特定项目功能需求为目的的服务集合并通过平台公共模块相互关联形成针对该项目的一整套开发框架,其中每一个服务功能称为一个配置项。
各个服务封装时的接口支持restful标准请求资源,实现JSON、XML双格式自由切换;具体接口设计如下:
单资源( singular-resourceX )
url样例:order/ (order即指那个单独的资源X)
GET – 返回一个新的order,
POST- 创建一个新的order,从post请求携带的内容获取值。
单资源带id(singular-resourceX/{id} )
URL样例:order/1 ( order即指那个单独的资源X ),
GET – 返回id是1的order
DELETE – 删除id是1的order,
PUT – 更新id是1的order,order的值从请求的内容体中获取。
复数资源(plural-resourceX/)
URL样例:orders/
GET – 返回所有orders。
复数资源查找(plural-resourceX/search)
URL样例:orders/search?name=123
GET – 返回所有满足查询条件的order资源。(实例查询,无关联) – order名字等于123的。
复数资源查找(plural-resourceX/searchByXXX)
URL样例:orders/searchByItems?name=ipad
GET – 将返回所有满足自定义查询的orders – 获取所有与items名字是ipad相关联的orders。
单数资源(singular-resourceX/{id}/pluralY)
URL样例:order/1/items/ (这里order即为资源X,items是复数资源Y)
GET – 将返回所有与order id 是1关联的items。
singular-resourceX/{id}/singular-resourceY/
URL样例:order/1/item/
GET – 返回一个瞬时的新的与order id是1关联的item实例,
POST – 创建一个与order id 是1关联的item实例,Item的值从post请求体中获取。
singular-resourceX/{id}/singular-resourceY/{id}
URL样例:order/1/item/2/package/
GET – 返回一个瞬时的新的与item2和order1关联的package实例,
POST – 创建一个新的与item 2和order1关联的package实例,package的值从post请求体中获得。
图2所示为本发明的整体开发框架服务使用流程图。其中的重要业务流程包括:
第一步:通过配置文件加载业务所需的服务,完成基础开发框架最小运行环境;
第二步:从API接口层接收不同用户终端(APP、PC、H5、WAP)的入口请求资源;
第三步:根据不同终端来源,通过路由表权限服务审核请求内容的权限,如果权限有问题,进入错误处理服务,提示输出原因;如果权限没问题进入下一步;
第四步:通过路由表服务,分析终端请求资源内容,将请求转发到服务层;
第五步:根据服务层请求调度系统服务获取请求所需的资源;
第六步:根据所请求的资源,对请求调度的服务进行服务访问配置;
第七步:负载均衡处理,根据后端服务压力,动态分发请求资源内容到不同后端服务上;
第八步:所请求资源对服务进行读或者写访问,根据读写动作的不同来获取数据;
第九步:获取数据后,通过Restful标准输出数据,所述数据包含状态数据和资源数据,输出数据标准格式为JSON和XML格式;
第十步 将上述输出数据返回给用户,结束请求,至此,完成了一个服务从请求到输出的所有流程。
例如,具体调度一个数据持久化服务时的步骤主要如下:
第一至第三步同上所述;
第四步:通过分析终端请求内容,通过路由表服务,分发到不同的业务处理上;业务处理分发到数据持久化服务,根据数据化持久服务配置,选取数据持久化服务中配置,存取不同的数据;
第五步:数据持久化服务配置,配置了对数据库,库,表,访问用户,端口,分表规则等配置访问;
第六步:负载均衡处理,根据后端数据库服务压力,动态分发终端请求内容到不同后端数据库服务上;
第七步:根据终端访问数据的读写不同动作,根据读写动作的不同,动态分发请求到不同的数据库服务器;
第八步:数据访问,针对不同的数据库,制定统一的访问机制,统一规则访问;
第九步:根据终端访问请求,获取数据后,通过Restful标准输出数据,输出内容格式为JSON/XML;
第十步:请求结束,返回给用户终端访问状态和资源数据。至此,完成了一个具有数据持久化功能的开发框架数据的输出。
上述方法还支持多个服务并发处理。
本发明未涉及的部分均与现有技术相同或可利用现有技术加以实现。
Claims (9)
1.一种面向服务的开发框架YC-Framework,其特征在于:
包括API接口层、通讯协议层、数据逻辑层、系统服务层、公共组件和统一配置;其中,
API接口层是框架输入输出数据流的对接口,实现提供异构语言、异构终端的接入能力,接口调用和适配能力,调用次数限制能力;
通讯协议层为API接口层和数据逻辑层的中间通讯协议,通过标准的接口完成API接口层所需的协议翻译,完成第三方服务的对接工作;
数据逻辑层完成数据的读写和组装,将请求所需的数据从服务层中获取并完成数据处理的工作;
系统服务层为整个框架的数据中心,包含多个独立封装的服务,每个服务可以使用不同的开发语言开发,各个服务定义通用的读写接口驱动,以适应各种高性能的分布式系统以及根据后期应用产品的迭代自由添加和删除服务,所述服务之间互不影响,服务资源共享,可扩展,可重用;
公共组件,实现开发框架内部公共逻辑的处理工作;
统一配置,涉及对API接口层、通讯协议层、数据逻辑层、系统服务层的所有配置信息的管理。
2.根据权利要求1所述的开发框架YC-Framework,其特征在于:
所述通讯协议层包含Restful标准数据格式协议和Soap、Socket、HTTP标准通信协议,通过协议实现了不同终端之间数据标准化交互。
3.根据权利要求2所述的开发框架YC-Framework,其特征在于:
所述不同终端包含APP、PC、H5、WAP。
4.根据权利要求1所述的开发框架YC-Framework,其特征在于:
所述系统服务层的多个服务包含:数据持久化服务、缓存服务、文件存储服务、文件上传服务、加密服务、分享组件服务、支付服务、消息通知服务、消息推送服务、定位服务、用户认证服务、邮件服务、短信服务、短地址服务、日志服务、错误处理服务、图片处理服务、任务调度服务、队列服务、表单生成服务、关键词服务、用户行为统计服务、模版引擎服务、流媒体服务。
5.根据权利要求1所述的开发框架YC-Framework,其特征在于:
所述统一配置进行包括数据库连接帐号密码、第三方登陆帐号密码、使用的通讯协议类型、数据库类型、缓存类型的选择配置工作。
6.根据权利要求1所述的开发框架YC-Framework,其特征在于:
所述系统服务层中各个服务封装时的接口支持restful标准请求资源,实现JSON、XML双格式自由切换。
7.根据权利要求1所述的开发框架YC-Framework,其特征在于:
所述公共组件包含路由组件、过滤组件、安全防范组件、数据转换组件,分别实现URI请求的解析、分发工作,对外部访问所请求的数据进行安全过滤,安全防范,以及一些公共数据的转换。
8.根据权利要求7所述的开发框架YC-Framework,其特征在于:
路由组件包括路由表权限服务和路由表服务;安全防范组件针对URI请求地址中存在的各种危险进行处理,即URI请求防范,防范恶意IP攻击以及配置IP访问权限。
9.一种如权利要求1所述的开发框架YC-Framework的使用方法,其特征在于包括如下步骤:
第一步:通过配置文件加载业务所需的服务,完成基础开发框架最小运行环境;
第二步:从API接口层接收不同用户终端的入口请求资源;
第三步:根据不同终端来源,通过路由表权限服务审核请求内容的权限,如果权限有问题,进入错误处理服务,提示输出原因;如果权限没问题进入下一步;
第四步:通过路由表服务,分析终端请求资源内容,将请求转发到服务层;
第五步:根据服务层请求调度系统服务获取请求所需的资源;
第六步:根据所请求的资源,对请求调度的服务进行服务访问配置;
第七步:负载均衡处理,根据后端服务压力,动态分发请求资源内容到不同后端服务上;
第八步:所请求资源对服务进行读或者写访问,根据读写动作的不同来获取数据;
第九步:获取数据后,通过Restful标准输出数据,所述数据包含状态数据和资源数据,输出数据标准格式为JSON或XML;
第十步 将上述输出数据返回给用户,结束请求,至此,完成了一个服务从请求到输出的所有流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610613865.4A CN106155697A (zh) | 2016-07-30 | 2016-07-30 | 一种面向服务的开发框架(YC‑Framework) |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610613865.4A CN106155697A (zh) | 2016-07-30 | 2016-07-30 | 一种面向服务的开发框架(YC‑Framework) |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106155697A true CN106155697A (zh) | 2016-11-23 |
Family
ID=57327958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610613865.4A Pending CN106155697A (zh) | 2016-07-30 | 2016-07-30 | 一种面向服务的开发框架(YC‑Framework) |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106155697A (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106971007A (zh) * | 2017-04-28 | 2017-07-21 | 成都优易数据有限公司 | 一种利用数据结构控制的数据处理与数据分析框架 |
CN107241278A (zh) * | 2017-05-25 | 2017-10-10 | 崔潇扬 | 一种智能设备实时数据流式处理方法及处理系统 |
CN107948259A (zh) * | 2017-11-14 | 2018-04-20 | 郑州云海信息技术有限公司 | 一种云服务器资源的配置方法和配置系统 |
CN108111334A (zh) * | 2017-12-04 | 2018-06-01 | 叶轻舟 | 一种网络应用节点的集成系统和方法 |
CN108279881A (zh) * | 2018-02-11 | 2018-07-13 | 深圳竹信科技有限公司 | 基于深度学习预测部分的跨平台实现架构及方法 |
CN108319506A (zh) * | 2017-01-17 | 2018-07-24 | 贵州白山云科技有限公司 | 一种数据分层处理方法及装置 |
CN108400992A (zh) * | 2018-03-06 | 2018-08-14 | 电信科学技术第五研究所有限公司 | 一种流式通信数据协议解析软件框架实现系统及方法 |
CN108632208A (zh) * | 2017-03-20 | 2018-10-09 | 江苏两融智能制造技术有限公司 | 电气智能制造执行系统中基于服务共享的泛类型数据统一访问子系统 |
CN108737525A (zh) * | 2018-05-10 | 2018-11-02 | 江苏天时新材料科技有限公司 | 一种基于REST架构的Web服务系统 |
CN108737176A (zh) * | 2018-05-20 | 2018-11-02 | 湖北九州云仓科技发展有限公司 | 一种数据网关控制方法、电子设备、存储介质及架构 |
CN109388388A (zh) * | 2018-09-30 | 2019-02-26 | 武汉斗鱼网络科技有限公司 | 功能模块间的信息交互方法、装置、设备及存储介质 |
CN109637268A (zh) * | 2018-12-29 | 2019-04-16 | 无锡吾成互联科技有限公司 | 一种音乐教学app操作方法及其实现系统 |
CN110806855A (zh) * | 2019-10-30 | 2020-02-18 | 中山大学 | 一种can设备开发系统及其方法 |
CN110808977A (zh) * | 2019-10-31 | 2020-02-18 | 重庆佳锐颖科技发展有限公司 | 一种避免Web程序存在XSS漏洞的开发系统及方法 |
CN110874728A (zh) * | 2019-10-12 | 2020-03-10 | 平安银行股份有限公司 | 网上支付系统、网上支付方法、装置、介质及服务器 |
CN111198679A (zh) * | 2019-12-18 | 2020-05-26 | 北京航天测控技术有限公司 | 一种多语言健康管理模型的融合方法、装置 |
CN111240734A (zh) * | 2020-01-08 | 2020-06-05 | 微梦创科网络科技(中国)有限公司 | 一种前后端分离的接口实现方法及装置 |
CN111596896A (zh) * | 2020-04-26 | 2020-08-28 | 西安震有信通科技有限公司 | 适配不同语言的接口调用方法及装置、设备及介质 |
CN111917513A (zh) * | 2020-07-29 | 2020-11-10 | 上海海洋大学 | 一种移动端与服务器端数据交互方法 |
CN112612453A (zh) * | 2020-12-23 | 2021-04-06 | 荆门汇易佳信息科技有限公司 | RESTful服务驱动的JS对象简谱数据互换平台 |
CN112612629A (zh) * | 2020-12-28 | 2021-04-06 | 广东广宇科技发展有限公司 | 一种组件式的数据接口实现方法与系统 |
CN114726681A (zh) * | 2022-03-31 | 2022-07-08 | 慧之安信息技术股份有限公司 | 业务与通讯逻辑分离的网关服务分层设计方法和装置 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080040418A1 (en) * | 2006-08-11 | 2008-02-14 | Risaris | Accessing existing data using a service oriented architecture gateway |
US20090228898A1 (en) * | 2005-09-09 | 2009-09-10 | Standard Life Employee Services Limited | Service Oriented Architecture |
US20090281861A1 (en) * | 2008-05-07 | 2009-11-12 | International Business Machines Corporation | Consolidated business service for integrating service oriented architecture services with customer resources |
CN102420697A (zh) * | 2011-09-07 | 2012-04-18 | 北京邮电大学 | 一种可配置服务的综合资源监测管理系统及其方法 |
CN102902543A (zh) * | 2012-09-29 | 2013-01-30 | 山东浪潮齐鲁软件产业股份有限公司 | 一种Web服务应用框架模型 |
CN103761082A (zh) * | 2013-12-31 | 2014-04-30 | 湖南大唐先一科技有限公司 | 一种组件化研发模式与领域驱动模型相结合的应用开发系统及平台 |
CN104239071A (zh) * | 2014-10-13 | 2014-12-24 | 浪潮通信信息系统有限公司 | 一种基于通用组件和中转服务的跨平台移动应用开发框架系统 |
US20160026590A1 (en) * | 2013-03-12 | 2016-01-28 | Samsung Electronics Co., Ltd. | Interconnection fabric switching apparatus capable of dynamically allocating resources according to workload and method therefor |
CN105323282A (zh) * | 2014-07-28 | 2016-02-10 | 神州数码信息系统有限公司 | 一种面向多租户的企业应用部署与管理系统 |
CN105320522A (zh) * | 2015-09-24 | 2016-02-10 | 四川长虹电器股份有限公司 | 基于面向服务的体系结构的xbrl应用平台 |
CN105549972A (zh) * | 2015-12-10 | 2016-05-04 | 天津海量信息技术有限公司 | 基于统一认证协议的mvc框架结构及其运行方法 |
-
2016
- 2016-07-30 CN CN201610613865.4A patent/CN106155697A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090228898A1 (en) * | 2005-09-09 | 2009-09-10 | Standard Life Employee Services Limited | Service Oriented Architecture |
US20080040418A1 (en) * | 2006-08-11 | 2008-02-14 | Risaris | Accessing existing data using a service oriented architecture gateway |
US20090281861A1 (en) * | 2008-05-07 | 2009-11-12 | International Business Machines Corporation | Consolidated business service for integrating service oriented architecture services with customer resources |
CN102420697A (zh) * | 2011-09-07 | 2012-04-18 | 北京邮电大学 | 一种可配置服务的综合资源监测管理系统及其方法 |
CN102902543A (zh) * | 2012-09-29 | 2013-01-30 | 山东浪潮齐鲁软件产业股份有限公司 | 一种Web服务应用框架模型 |
US20160026590A1 (en) * | 2013-03-12 | 2016-01-28 | Samsung Electronics Co., Ltd. | Interconnection fabric switching apparatus capable of dynamically allocating resources according to workload and method therefor |
CN103761082A (zh) * | 2013-12-31 | 2014-04-30 | 湖南大唐先一科技有限公司 | 一种组件化研发模式与领域驱动模型相结合的应用开发系统及平台 |
CN105323282A (zh) * | 2014-07-28 | 2016-02-10 | 神州数码信息系统有限公司 | 一种面向多租户的企业应用部署与管理系统 |
CN104239071A (zh) * | 2014-10-13 | 2014-12-24 | 浪潮通信信息系统有限公司 | 一种基于通用组件和中转服务的跨平台移动应用开发框架系统 |
CN105320522A (zh) * | 2015-09-24 | 2016-02-10 | 四川长虹电器股份有限公司 | 基于面向服务的体系结构的xbrl应用平台 |
CN105549972A (zh) * | 2015-12-10 | 2016-05-04 | 天津海量信息技术有限公司 | 基于统一认证协议的mvc框架结构及其运行方法 |
Non-Patent Citations (3)
Title |
---|
张东林等: "基于SOA架构的电子商务智能管理系统设计研究", 《南阳理工学院学报》 * |
邬栋娴: "面向服务架构的电子商务系统应用研究", 《光盘技术》 * |
陈清萍等: "面向服务的企业应用平台系统架构设计与实现", 《电力信息化》 * |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108319506B (zh) * | 2017-01-17 | 2019-04-02 | 北京数安鑫云信息技术有限公司 | 一种数据分层处理方法及装置 |
CN108319506A (zh) * | 2017-01-17 | 2018-07-24 | 贵州白山云科技有限公司 | 一种数据分层处理方法及装置 |
CN108632208A (zh) * | 2017-03-20 | 2018-10-09 | 江苏两融智能制造技术有限公司 | 电气智能制造执行系统中基于服务共享的泛类型数据统一访问子系统 |
CN106971007A (zh) * | 2017-04-28 | 2017-07-21 | 成都优易数据有限公司 | 一种利用数据结构控制的数据处理与数据分析框架 |
CN106971007B (zh) * | 2017-04-28 | 2021-05-28 | 成都优易数据有限公司 | 一种利用数据结构控制的数据处理与数据分析框架 |
CN107241278A (zh) * | 2017-05-25 | 2017-10-10 | 崔潇扬 | 一种智能设备实时数据流式处理方法及处理系统 |
CN107241278B (zh) * | 2017-05-25 | 2021-08-27 | 北京君泊网络科技有限责任公司 | 一种智能设备实时数据流式处理方法及处理系统 |
CN107948259A (zh) * | 2017-11-14 | 2018-04-20 | 郑州云海信息技术有限公司 | 一种云服务器资源的配置方法和配置系统 |
CN108111334B (zh) * | 2017-12-04 | 2021-11-12 | 叶轻舟 | 一种网络应用节点的集成系统和方法 |
CN108111334A (zh) * | 2017-12-04 | 2018-06-01 | 叶轻舟 | 一种网络应用节点的集成系统和方法 |
CN108279881A (zh) * | 2018-02-11 | 2018-07-13 | 深圳竹信科技有限公司 | 基于深度学习预测部分的跨平台实现架构及方法 |
CN108400992B (zh) * | 2018-03-06 | 2020-05-26 | 电信科学技术第五研究所有限公司 | 一种流式通信数据协议解析软件框架实现系统及方法 |
CN108400992A (zh) * | 2018-03-06 | 2018-08-14 | 电信科学技术第五研究所有限公司 | 一种流式通信数据协议解析软件框架实现系统及方法 |
CN108737525A (zh) * | 2018-05-10 | 2018-11-02 | 江苏天时新材料科技有限公司 | 一种基于REST架构的Web服务系统 |
CN108737176A (zh) * | 2018-05-20 | 2018-11-02 | 湖北九州云仓科技发展有限公司 | 一种数据网关控制方法、电子设备、存储介质及架构 |
CN108737176B (zh) * | 2018-05-20 | 2021-10-22 | 湖北九州云仓科技发展有限公司 | 一种数据网关控制方法、电子设备、存储介质及架构 |
CN109388388A (zh) * | 2018-09-30 | 2019-02-26 | 武汉斗鱼网络科技有限公司 | 功能模块间的信息交互方法、装置、设备及存储介质 |
CN109637268A (zh) * | 2018-12-29 | 2019-04-16 | 无锡吾成互联科技有限公司 | 一种音乐教学app操作方法及其实现系统 |
CN110874728A (zh) * | 2019-10-12 | 2020-03-10 | 平安银行股份有限公司 | 网上支付系统、网上支付方法、装置、介质及服务器 |
CN110806855A (zh) * | 2019-10-30 | 2020-02-18 | 中山大学 | 一种can设备开发系统及其方法 |
CN110806855B (zh) * | 2019-10-30 | 2021-06-08 | 中山大学 | 一种can设备开发系统及其方法 |
CN110808977A (zh) * | 2019-10-31 | 2020-02-18 | 重庆佳锐颖科技发展有限公司 | 一种避免Web程序存在XSS漏洞的开发系统及方法 |
CN110808977B (zh) * | 2019-10-31 | 2021-09-14 | 重庆佳锐颖科技发展有限公司 | 一种避免Web程序存在XSS漏洞的开发系统及方法 |
CN111198679A (zh) * | 2019-12-18 | 2020-05-26 | 北京航天测控技术有限公司 | 一种多语言健康管理模型的融合方法、装置 |
CN111198679B (zh) * | 2019-12-18 | 2024-04-05 | 北京航天测控技术有限公司 | 一种多语言健康管理模型的融合方法、装置 |
CN111240734A (zh) * | 2020-01-08 | 2020-06-05 | 微梦创科网络科技(中国)有限公司 | 一种前后端分离的接口实现方法及装置 |
CN111596896B (zh) * | 2020-04-26 | 2023-06-02 | 西安震有信通科技有限公司 | 适配不同语言的接口调用方法及装置、设备及介质 |
CN111596896A (zh) * | 2020-04-26 | 2020-08-28 | 西安震有信通科技有限公司 | 适配不同语言的接口调用方法及装置、设备及介质 |
CN111917513A (zh) * | 2020-07-29 | 2020-11-10 | 上海海洋大学 | 一种移动端与服务器端数据交互方法 |
CN112612453A (zh) * | 2020-12-23 | 2021-04-06 | 荆门汇易佳信息科技有限公司 | RESTful服务驱动的JS对象简谱数据互换平台 |
CN112612629A (zh) * | 2020-12-28 | 2021-04-06 | 广东广宇科技发展有限公司 | 一种组件式的数据接口实现方法与系统 |
CN114726681A (zh) * | 2022-03-31 | 2022-07-08 | 慧之安信息技术股份有限公司 | 业务与通讯逻辑分离的网关服务分层设计方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106155697A (zh) | 一种面向服务的开发框架(YC‑Framework) | |
US11108863B2 (en) | Tag operating system | |
US20230363557A1 (en) | System and method for locational image processing | |
Mineraud et al. | A gap analysis of Internet-of-Things platforms | |
CN109997114B (zh) | 用于通用互通和可扩展性的服务层资源管理 | |
US20200364525A1 (en) | Rf tag operating system with iot connector core | |
EP2738672A1 (en) | Communications network, computer arcitecture, computer-implemented method and computer program product for development and management of femtocell-based applications | |
US8868786B1 (en) | Apparatus, systems and methods for transformation services | |
Namiot et al. | On m2m software | |
CN109379326B (zh) | Xml报文规则校验方法、设备和存储介质 | |
CN105872051A (zh) | 一种政企云平台中的能力开放管控服务平台 | |
CN103117983A (zh) | 数据服务请求应答方法和数据服务协议栈 | |
CN104717647B (zh) | 业务能力鉴权方法、设备及系统 | |
CN103118138A (zh) | 一种基于云服务的消息队列流处理方法 | |
US8788533B2 (en) | Read access logging | |
CN103179099A (zh) | 一种接入开放网站平台的统一认证方法和一种网站平台 | |
US20120179840A1 (en) | System and method for distributed content transformation | |
CN113497723A (zh) | 日志处理方法、日志网关和日志处理系统 | |
Schapranow et al. | Costs of authentic pharmaceuticals: research on qualitative and quantitative aspects of enabling anti-counterfeiting in RFID-aided supply chains | |
CN102804818A (zh) | 用于提供订源中的媒体附件兼容的方法和装置 | |
CN103577180A (zh) | 数据处理方法及装置 | |
CN107040613A (zh) | 一种报文传输方法及系统 | |
Bellini et al. | Managing Complexity of Data Models and Performance in Broker-Based Internet/Web of Things Architectures | |
CN111045928B (zh) | 一种接口数据测试方法、装置、终端及存储介质 | |
CN103957173A (zh) | 语义交换机 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20161123 |
|
WD01 | Invention patent application deemed withdrawn after publication |