ruby-on-rails – 在Ruby on Rails的上下文中引用的是什么是中间件?

Ruby on Rails的上下文中,我常常听到“中间件”一词.究竟是什么?你能提供具体的例子吗?

解决方法

中间件与Rack相关,Rack是用于Web应用程序的标准Ruby API.由于Rails应用程序是Rack应用程序,因此它们都适用于两者.

机架中间件是应用程序服务器(Webrick,Thin,Unicorn,Passenger,…)和实际应用程序(如Rails应用程序)之间的一切.这是Web应用程序服务器和应用程序本身之间的pipeline.

对于机架应用程序的输入是包含所有HTTP请求详细信息(以及更多)的“环境”.输出是HTTP响应.中间件层就像可以修改输入,输出或两者的过滤器. Rails使用中间件到implement some of its features(查询缓存,cookie存储,http方法扩展),但可以添加自己的.

机架中间件是使用Rack的Web应用程序之间重用简单的Web相关行为的有效方式,无论底层框架如何.如果您的一部分应用程序添加功能,但不负责HTTP响应,则它将被视为Rack中间件.

您可以将其作为Rack middleware实现的一些示例包括

> HTTP缓存(服务器端和客户端)
>记录
>认证
>监控
> HTTP头过滤

参见this SO question.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...