Webx框架:Pipeline基本介绍
Pipeline。
它是管道的含义。一个管道阀门可以安装非常多。有许多可能的分支。它是用来控制页处理。它需要在被定义pipeline.xml文件。该文件是为每个阀的标签。该文件可以放一些简单的控制语句。在项目。这条管线有以下配置足够好。
<services:pipeline xmlns="http://www.alibaba.com/schema/services/pipeline/valves"><!-- 初始化 turbine rundata,并在 pipelineContext 中设置可能会用到的对象(如rundata、utils),以便 valve 取得。 --><prepareForTurbine /><!-- 设置日志系统的上下文,支持把当前请求的详情打印在日志中。
--> <setLoggingContext /> <!-- 分析URL,取得target。
--> <analyzeURL homepage="homepage" /> <!-- 检查 csrf token,防止 csrf 攻击和反复提交。假如 request 和 session 中的 token 不匹配,则出错,或显示 expired 页面。 --> <checkCsrfToken /> <!-- 这里为什么要用循环呢? --> <loop> <choose> <when> <!-- 运行带模板的screen,默认有layout。 --> <pl-conditions:target-extension-condition extension="null, vm, jsp" /> <performAction /> <performTemplateScreen /> <renderTemplate /> </when> <when> <!-- 运行不带模板的screen,默认无layout。
--> <pl-conditions:target-extension-condition extension="do" /> <performAction /> <performScreen /> </when> <otherwise> <!-- 将控制交还给 servlet engine。 --> <exit /> </otherwise> </choose> <!-- 假如 rundata.setRedirectTarget() 被设置,则循环,否则退出循环。
--> <breakUnlessTargetRedirected /> </loop> </services:pipeline>
为什么要引入Pipeline?这是由于传统的Filter受到限制,仅仅能訪问或者改动HttpServletRequest、HttpServletResponse、ServletContext三个对象,不能訪问应用程序中的状态。流程控制过于简单,仅仅能继续运行或者终止运行,没有循环、分支等机制。还有Filter无法訪问其它Filter的状态,在性能优化的时候比較困难。
为了克服Filter的缺点。Webx引入了RequestContext和Pipeline。当中RequestContext负责訪问和改动request和response对象,和Pipeline负责控制运行的进程的请求。
版权声明:本文博客原创文章。博客,未经同意,不得转载。
转载于:https://www.cnblogs.com/gcczhongduan/p/4678675.html
Webx框架:Pipeline基本介绍相关推荐
- Webx框架:Spring Schema 和 Spring Ext
webx诞生的原因是当时市面上没有好用的web框架.如今的Web框架有非常多.然后它们背后的思想都是相似的,并且越来越趋同. Spring Schema 在传统的spring中,配置bean时须要手动 ...
- WebX框架的页面授权
WebX框架的页面授权 什么是页面授权,简单来说就是对于一个Web应用程序里,哪些页面可以被哪些人在什么情况下访问进行限制.举个简单的例子,有些页面只有用户登录以后才能访问,而另外一些页面无论是否用户 ...
- webx 框架入门一
来阿里实习一个多月了,被拉着直接上新项目.由于新项目要使用webx,webx框架是淘宝的框架,比较厚重又复杂,但是性能毋庸置疑(毕竟每年双十一都挺过来了).由于webx文档较少,基本都是阿里内部使用. ...
- scrum回顾_沙龙回顾 | 大规模敏捷框架-Essential SAFe介绍
作者:袁翠 2019年1月20日,这是一个周日的晚上,尽管如此,来参加沙龙的人还是不少,与其在家无所事事,不如来一场知识的火花碰撞. 按照惯例,先是进行自我介绍.如果说这次自我介绍与以往有任何不同的地 ...
- python django框架分析_Django框架模型简单介绍与使用分析
本文实例讲述了Django框架模型简单介绍与使用.分享给大家供大家参考,具体如下: ORM介绍 ORM Object relational mapping 对象关系映射 把面向对象中的类和数据库表一一 ...
- python自动化_python自动化测试-Behave框架的用法介绍 - python测试学习
测码学院 Behave框架的用法介绍 众所周知:行为驱动开发((behavior-drivendevelopment,BDD)是一种基于敏捷软件开发的方法.它可以鼓励开发人员,业务参与者和QA人员之 ...
- OpenCart框架运行流程介绍opencart资料链接
opencart 主要文件夹结构和文件说明 opencart 单入口文件简单分析 opencart中文使用手册 opencart 模块开发详解 OpenCart源码目录结构详解 opencart中的l ...
- 基于C++的高性能http框架cinatra及其web框架示例feather介绍及开发演示
说起web开发框架,一定会想到java,php,python等快速开发语言,在从多web开发技术中少有使用C++进行开发,虽然C++性能优越,但是由于开发周期长,语言本身的复杂性,不符合当前快速敏捷开 ...
- shiro框架---shiro配置介绍(一)
接上一篇文章shiro框架-通过系统介绍shiro框架中的实现逻辑 项目已分享到GitHub上,如果需要的可以看下,springboot+shiro项目Git下载地址. shiro在springb ...
- 『Python学习笔记』Python中的异步Web框架之fastAPI介绍RestAPI
Python中的异步Web框架之fastAPI介绍&RestAPI 文章目录 一. fastAPI简要介绍 1.1. 安装 1.2. 创建 1.3. get方法 1.4. post方法 1.5 ...
最新文章
- python怎么读_如何用Python读写文件
- js原理之执行上下文
- ASP.NET MVC 3 RC发布
- 文献记录(part20)--Discriminative metric learning for multi-view graph partitioning
- Qt 中事件与处理
- 常用的Homebrew的命令的使用
- KDD2018 阿里巴巴论文揭示自家大规模视觉搜索算法
- 住个酒店,“我”的隐私就被强制扒干净了!
- CentOS/Ubuntu 14.10 安装 phpstorm
- 绚丽的javascript拾色器(不兼容IE8及以下)
- 解决Glide 4.8.0 圆角与CenterCrop 的冲突问题
- matlab自带优化工具箱,二元一次函数
- 10的几次方 用计算机计算公式,在excel中如何计算10的几次方呢
- 流程工业MES管理系统有什么特点
- 把音频中的某个人声去掉_如何把音乐文件里的人声去掉只保留伴奏
- 淘宝双十一喵果总动员之喵树大挑战玩法攻略
- c语言编译器提示隐式声明,在C中使用“隐式声明功能”警告有什么含义?
- java虚拟机假死怎么办_虚拟机假死解决方法
- 计算机子网掩码作用,什么是子网掩码 子网掩码的作用是什么?
- python tensorflow教程_真正从零开始,TensorFlow详细安装入门图文教程!
热门文章
- python中读写excel_python读写Excel
- zabbix入门之定义触发器
- Concurrent HTTP connections in Node.js
- django-form and fields validation
- 关于单片机串口发送和接收的问题
- 一个TextView使用不同的颜色
- 坡度土方计算案例_土石方工程造价中的细节解析(案例+计算式)
- PHP鼠标滑过变色命令,WordPress鼠标悬停变色的修改方法
- 6、jeecg 笔记之 自定义excel 模板导出(一)
- Android studio ERROR: Software caused connection abort: recv failed 解决方法