Play framework

传统的WEB框架是基于Servlet标准设计实现的,加上Tomcat的出现,直接促成了JSP的崛起,然而时过境迁,Servlet已风光不在,Web容器存在的必要性也被越来越多的人质疑。原因就在于人为的将应用与容器剥离, 虽然这种做法本意是好的,但是结果就是给开发测试部署带来一系列集成的问题,SPRING BOOT的快速流行就是一个现实的例子,越来越多的项目开始使用内嵌的Jetty或Tomcat就是一个现实的例子。

Servlet还带来一个问题,就是有状态的服务器。一旦使用了Session,服务器就无法享受到水平扩展的好处了,由此不得不采用Session复制或者粘性Session(Sticky Session)的 方案来解决这个问题,无论采取哪种方案都会有性能损耗,并且推高了技术成本。

Play抛弃了Servlet/JSP里Session等概念, 内置没有提供方法将对象与服务器实例进行绑定(你要使用HashMap存的话Play也没办法)。 推荐的做法是使用外部缓存, 比如Redis, Memcached等。可能有人会觉得没有Session是Play的一个缺点(Play里的Session和Servlet Session不是一回事), 但是只要你开发过流量大一点的应用, 你就会理解这点。

Play是基于Netty实现的异步的请求响应接口(Request/Result),消息驱动的框架。请求只有在有事情做的时候才会占用线程资源,不会出现一个线程长时间等待某操作完成或超时的时况。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,916评论 18 399
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,444评论 11 349
  • 一. Java基础部分.................................................
    wy_sure阅读 9,242评论 0 11
  • 这部分主要是与Java Web和Web Service相关的面试题。 96、阐述Servlet和CGI的区别? 答...
    杂货铺老板阅读 5,235评论 0 10
  • “相遇是缘、相守是福。”这是一句经典我很喜欢的对婚姻关系的总结。最近一段时间,本人连续接受三个离婚案件当事人...
    0a28c95d0f1e阅读 4,464评论 0 0