返回顶部
首页 > 资讯 > 精选 >怎么用Spring Web Flow和Terracotta搭建Web应用
  • 629
分享到

怎么用Spring Web Flow和Terracotta搭建Web应用

2023-06-03 01:06:04 629人浏览 独家记忆
摘要

小编给大家分享一下怎么用spring WEB Flow和Terracotta搭建Web应用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!什么是Spring WebFlow?Spring Web Flow是Spring Fr

小编给大家分享一下怎么用spring WEB Flow和Terracotta搭建Web应用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

什么是Spring WebFlow?

Spring Web Flow是Spring Framework中的web应用组件,它提供了一种编写有状态和基于会话的web应用的简便手段。Spring Web Flow 使得逻辑流程成为web应用中的一等公民,它能让你定义为自包含模块,以独立于应用的其它部分来配置和重用。它不依赖于框架从而能够方便的与可选的web应用框架一同使用,比如Spring mvc、Struts或者jsF等。

页面流转使用一种领域定义语言(DSL)来配置,这个语言专门开发用来定义和组合页面流转。目前的实现方式是XML和Java.

Spring Web Flow引入了能满足多种用户案例和需求的几种有状态数据域:request、flash、flow和conversation,这给你开发有状态web应用提供了很大的灵活性和能力。

这里是1.0 release中最有趣特性的快速概要:

  • 在一个地方而不是把逻辑分散在很多地方来定义应用任务的所有控制逻辑,比如一个搜索流程。

  • 把简单的流转组合在一起来创建富控制模块。

  • 使用自然和面向对象的线性编程模型,而不是冗长的的if/else块来定义严格的用户导航规则。

  • 但流转结束或过期时自动清除你在流转执行中分配的内存。

  • 在使用你选择的基础web框架的Servlet环境中Deploy一个可执行的流转。

  • 改变web框架(比如Struts、Spring MVC、JSF及其它)而不用修改流转定义。

  • 和环境一起改变而不需要修改你的流转定义, 比如从JUnit测试到Portlet。

  • 开发时在不重启容器的情况下不断完善你的应用导航规则。

  • 自动正确响应浏览器按钮(后退、前进、刷新)而不需要定制编程。

  • 在4个受管理域中存储任务数据:request、flash、flow、和、conversation等,每个都有自己的独特语义。

  • 脱离容器单独测试流转。能在部署前确保应用控制逻辑能正常运作。

  • 使用Spring IDE 2.0进行可视化编辑你的流转导航逻辑图

 什么是Terracotta for Spring?

Terracotta for Spring是基于Spring应用的运行时,它为Spring 应用提供了透明的高性能集群支持,对应用代码和部署及配置流程影响都很小。它通过在应用下面的堆级别进行集群而不是直接集群应用。

这让开发者能够开发与无状态方式不同的单节点有状态Spring应用。这使得在需要扩展的应用开始设计时不考虑集群。而在应用需要扩展或者要保证搞可用性和故障恢复时,他们只需要在Terracotta 配置文件中定义哪些Spring应用上下文中的beans需要进行集群。Terracotta for Spring 使得应用能够被自动和透明的集群,还保证在集群间的语义和单节点一样。

对于Spring Web Flow来说,这实际上更简单。用户为了获得web应用的状态和持续仓库的集群能力,只需要在Terracotta配置文件中把特定的web应用声明为启用“session-support”。(详细内容见下面的章节“声明式配置”)

从宏观上看,Terracotta for Spring提供了:

·         HTTP session状态的集群。保证Spring Web Flow中的用户状态和扩展仓库或放入httpsession的其它状态的高可用性和故障恢复能力。

·         Spring bean的集群Springbean的生命周期语义和域在集群间被保存,它们在“逻辑”上相同的ApplicationContext中。目前能被集群的bean类型是singletonsession scoped. 用户可以声明式配置哪个application contexts中的哪个bean需要被集群。

·         透明集群POJO。 不需要修改已有的代码,甚至不需要源代码。应用基于很少的声明式XML 配置文件,在载入期透明的生效。Terracotta for Spring不需要实现Serializable, Externalizable或其它接口的类。能这样实现的原因它并没有使用序列化,而只是将实际的差量和已经改变了的数据传输给当前需要的节点 (lazily)。

虚拟内存管理。它也提供分布式垃圾收集和虚拟堆功能。比如,由于物理内存在需要时被换入换出,它能在一个4G RAM的机器上运行需要200G堆的Web应用。这也意味着你不需要关心Spring Web Flow 会话数据的大小是否超过了物理堆大小。

看完了这篇文章,相信你对“怎么用Spring Web Flow和Terracotta搭建Web应用”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: 怎么用Spring Web Flow和Terracotta搭建Web应用

本文链接: https://www.lsjlt.com/news/231880.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么用Spring Web Flow和Terracotta搭建Web应用
    小编给大家分享一下怎么用Spring Web Flow和Terracotta搭建Web应用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!什么是Spring WebFlow?Spring Web Flow是Spring Fr...
    99+
    2023-06-03
  • MVC3如何快速搭建Web应用
    这篇文章给大家分享的是有关MVC3如何快速搭建Web应用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Web应用不像winform应用,要想让用户得到更流畅更舒适的体验,方法之一...
    99+
    2024-04-02
  • 怎么使用Golang搭建web服务
    今天小编给大家分享一下怎么使用Golang搭建web服务的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。我们先看个例子:htt...
    99+
    2023-06-30
  • 如何使用golang搭建web应用程序
    近年来,Go语言(简称golang)因其高效、简洁、并发安全等特点,逐渐成为了Web开发领域的宠儿。Golang易于学习和使用,并且拥有庞大的基础库和框架。本文将介绍如何使用golang搭建web应用程序,包括路由设置、模板处理、ORM等内...
    99+
    2023-05-14
  • 怎么使用Node.js搭建Web服务器
    这篇文章主要介绍“怎么使用Node.js搭建Web服务器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用Node.js搭建Web服务器”文章能帮助大家解决问题。1、 Node.js 创建的第一...
    99+
    2023-07-02
  • Spring boot如何搭建web应用集成thymeleaf模板实现登陆
    这篇文章将为大家详细讲解有关Spring boot如何搭建web应用集成thymeleaf模板实现登陆,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Spring boot 搭建web应用集成了thymel...
    99+
    2023-05-30
    springboot web thymeleaf
  • 轻松搭建基于 Serverless 的 Egg.js Web 应用
    首先介绍下在本文出现的几个比较重要的概念:函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而...
    99+
    2023-06-04
  • linux怎么搭建web环境
    要在Linux上搭建Web环境,通常需要安装和配置以下几个组件:1. Apache/Nginx:Web服务器软件,用于处理HTTP请...
    99+
    2023-09-16
    linux
  • python怎么搭建web网站
    要搭建一个Web网站,你可以使用Python的一些框架来简化开发过程。以下是一些流行的Python Web框架:1. Django:...
    99+
    2023-09-08
    python
  • linux怎么搭建web站点
    要在Linux上搭建一个Web站点,需要进行以下步骤:1. 选择和安装Web服务器软件:常用的Web服务器软件有Apache、Ngi...
    99+
    2023-08-29
    linux
  • 个人web服务器租用怎么搭建
    搭建个人web服务器租用需要以下步骤:1. 购买域名:首先需要购买一个域名,这是你网站的地址。可以在国内的域名注册商或国外的注册商购...
    99+
    2023-06-06
    个人web服务器 web服务器 服务器
  • 怎么创建ASP.NET Core Web应用程序
    本文小编为大家详细介绍“怎么创建ASP.NET Core Web应用程序”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么创建ASP.NET Core Web应用程序”文章能帮助大家解决疑惑,下面跟...
    99+
    2023-06-29
  • 使用Flow和IPFS怎么创建NFT
    今天就跟大家聊聊有关使用Flow和IPFS怎么创建NFT,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。苹果系统:brew install flow-cliLinu...
    99+
    2023-06-15
  • linux怎么搭建web服务器
    要在Linux上搭建一个Web服务器,可以按照以下步骤进行操作:1. 选择一个适合的Linux发行版,如Ubuntu、CentOS等...
    99+
    2023-09-20
    linux
  • win10怎么搭建web服务器
    要在Windows 10上搭建Web服务器,您可以按照以下步骤进行操作:1. 安装所需的软件:首先,您需要安装一个Web服务器软件。...
    99+
    2023-10-08
    win10
  • python怎么搭建web服务器
    在Python中搭建一个简单的Web服务器可以使用内置的http.server模块。下面是一个基本的示例: import http....
    99+
    2023-10-24
    python 服务器
  • asp怎么搭建web服务器
    要搭建ASP的Web服务器,可以按照以下步骤进行操作:1. 安装IIS(Internet Information Services)...
    99+
    2023-08-11
    asp web服务器
  • 使用Node.js搭建Web服务器
    1、 Node.js 创建的第一个应用 1、引入http模块 var http = require("http"); 2、 创建服务器 接下来我们使用 http.creat...
    99+
    2024-04-02
  • 怎么使用node.js搭建简单web服务器
    这篇文章主要介绍“怎么使用node.js搭建简单web服务器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用node.js搭建简单web服务器”文章能帮助大家解决问题。准备首先,需要安装nod...
    99+
    2023-06-17
  • 利用Spring boot如何创建简单的web交互应用
    关于页面渲染其实在工作中,一直都是前后端分离,也就是说,我的工作从来都是提供接口,而不写 html css js 之类的,所以在这方面也没有经验。这里为了给大家介绍下模板引擎,我将会写个非常非常简单的页面,如果不好看,请见谅~Spring ...
    99+
    2023-05-31
    springboot web 交互应用
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作