加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 了解Play的请求生命周期!应用

发布时间:2020-12-16 19:15:46 所属栏目:安全 来源:网络整理
导读:我是Play的新手! Web框架,为了理解它是如何工作的,以及它与其他Web框架的比较,我希望能够在Play中进行跟踪!源代码,从开始到结束的请求生命周期.我将使用Play的 Scala实现! 因为我的大多数经验都是使用PHP框架,所以我习惯于从web根目录中的index.php文件开
我是Play的新手! Web框架,为了理解它是如何工作的,以及它与其他Web框架的比较,我希望能够在Play中进行跟踪!源代码,从开始到结束的请求生命周期.我将使用Play的 Scala实现!

因为我的大多数经验都是使用PHP框架,所以我习惯于从web根目录中的index.php文件开始,并通过任何包含的config / bootstrapping脚本,依赖注入处理,请求路由,动作调度,最后读取查看/响应呈现.

我无法确定Scala / Play的类似入口点!应用程序,我非常感谢推动正确的方向.请求生命周期的演练当然会非常慷慨,但我真正需要的只是显示入口点.

解决方法

默认情况下,Play框架使用内置HTTP服务器(基于 Netty).与PHP最接近的类比是Play是Apache和PHP.

PHP使用传统的“类CGI”范例:为了提供单个HTTP请求,您的程序已启动,在完成服务请求后,它将被终止.在用于提供HTTP请求的CGI中,Web服务器启动外部程序 – 您的脚本 – 并返回其输出.较旧版本的PHP仅为CGI设计,在后续版本中与服务器交互的其他方式,因为CGI非常慢,但核心原则保持不变.

大多数Web应用程序技术使用另一种方法:Web应用程序启动一次然后保持运行,因此一个正在运行的Web应用程序实例继续为请求提供服务(并且可以并行处理多个请求).它在服务单个请求后不会消失,就像在PHP中一样.这允许每次启动应用程序所需的资源少得多,并且只是稍微难以使用,因为大多数请求处理隐藏在内部框架中,并且您的应用程序只需要公开在请求到达和返回时调用的控制器方法响应.

它还允许更大的灵活性,例如,可以在Web应用程序内部启动后台处理,无需外部服务器进程. Play有Akka库,非常方便.

随着越来越多的Web应用程序使用Ajax和REST方法,而不是每次都为重量级网页提供服务,它变得更加重要.使用PHP创建具有良好性能的实时消息传递后端几乎是不可能的,无论请求技术如何(轮询,长轮询,iframe与multipart).

但是,如果与PHP MVC框架相比,从创建视图,模型和控制器的开发人员的角度来看,Play非常相似.无论是在PHP MVC框架和Play框架中调用控制器方法还是函数,这个方法都应该返回响应,视图通常是模板和模型,通常是ORM绑定到关系数据库.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读