当前位置: 首页 > news >正文

院系网站建设具体要求长沙官网seo收费

院系网站建设具体要求,长沙官网seo收费,网站建设费记在什么科目下,韩国建筑网站续前篇。 一、事务管理 WebSphere Application Server(WAS) 的事务管理是一大优势,相比于 Tomcat 等轻量级服务器,WAS 提供了 企业级事务管理(JTA,Java Transaction API) 支持,特别…

续前篇。

一、事务管理

WebSphere Application Server(WAS) 的事务管理是一大优势,相比于 Tomcat 等轻量级服务器,WAS 提供了 企业级事务管理(JTA,Java Transaction API) 支持,特别适用于复杂的 分布式事务 场景,比如涉及多个数据库、JMS 消息、EJB 的场合。

1、什么是事务管理?

事务管理是一种机制,用于保证一组操作要么全部成功(提交),要么全部失败(回滚),从而保持数据的一致性。

WebSphere 提供的事务管理是基于 JTA(Java Transaction API) 实现的,属于 Java EE 规范的一部分,支持:

  • 本地事务(Local Transaction):一个数据源内的事务(如单个数据库连接)

  • 全局事务(Global Transaction):多个资源之间的事务协调(如多个数据库 + JMS)

2、WAS 事务管理关键组件

组件名说明
Transaction Manager(事务管理器)WAS 内置组件,协调资源之间的提交和回滚操作
JTA 接口支持应用可以通过 javax.transaction.UserTransaction 或容器管理事务
数据源(JDBC)或 JMS 连接工厂(Connection Factory)必须启用事务支持(XA)才能参与全局事务
事务日志(Transaction Logs)存储事务状态,确保崩溃恢复
应用服务器容器支持对 EJB、Servlet、JMS 自动管理事务边界(声明式事务)

3、事务管理使用方式(两种)

1. 容器管理事务(CMT - Container Managed Transaction)

这是在 EJB、JPA、JMS、JAX-RS 中最常用的方式,开发者不需要手动控制事务边界,只需使用注解或配置:

@Stateless
public class OrderService {@EJBprivate InventoryBean inventory;public void createOrder() {// WebSphere 自动开启事务inventory.reserveItem();// 如果发生异常,容器自动回滚事务}
}

你可以在 ejb-jar.xml 或使用注解 @TransactionAttribute 配置事务属性,比如 REQUIRED, REQUIRES_NEW。 

2. 程序管理事务(BMT - Bean Managed Transaction)

通过 javax.transaction.UserTransaction 显式管理事务,适用于 Servlet、JSP、普通 Java 类。

@Resource
UserTransaction ut;public void doSomething() {try {ut.begin();// 操作数据库或其他资源ut.commit();} catch (Exception e) {ut.rollback();}
}

注意:UserTransaction 只能在 JTA 支持的环境中使用(WAS 支持,Tomcat 不支持)。

4、配置使用(WAS 控制台)

在 WAS 控制台中,你可以做以下事务相关配置:

1.导航到:

服务器 -> 服务器类型 -> WebSphere Application Server -> [你的服务器] -> 事务服务

2.配置选项包括:

配置项说明
启用事务日志崩溃后可以恢复未完成事务
总事务超时时间控制事务最多运行多久
允许全局事务必须开启才能支持多个资源参与
启用恢复启用故障恢复机制
并发控制支持事务间并发行为的控制

5、与 Tomcat 的对比

特性WASTomcat
JTA 支持原生支持,完整事务协调器不支持,需要集成第三方如 Atomikos、Bitronix
XA 事务支持(数据库、JMS)不支持
容器事务管理支持 EJB 和容器自动管理事务不支持(除非整合 Spring)
恢复与日志记录支持事务恢复和 crash recovery无内置支持

6、典型使用场景

  • 多个数据库操作事务一致性(如分布式金融系统)

  • JMS + DB 的一致性(先写数据库再发消息)

  • 业务流程自动补偿机制支持

  • EJB 模块间事务协调

7、最佳实践建议

  1. 优先使用容器管理事务,简洁且不容易出错。

  2. 配置合理的事务超时,防止死锁或长事务。

  3. 开启事务日志和恢复功能,保障系统可靠性。

  4. 若涉及 多个资源(DB + JMS),请使用 支持 XA 的资源适配器

二、示例

本次目标:

  • 配置 XA 数据源 支持全局事务。

  • 配置 JMS + 数据库事务协调

  • Java 服务任务中管理事务

  • 使用 事务日志 进行故障排查。

1、创建支持事务的 XA 数据源

XA 数据源允许多个资源(如数据库、JMS 等)参与全局事务。通过 WebSphere 控制台,你可以配置 XA 数据源,使其支持分布式事务。

步骤 1:进入数据源配置页面

  1. 登录到 WebSphere 管理控制台。

  2. 导航到 资源JDBC数据源(Data sources)。

步骤 2:创建 XA 数据源

  1. 点击 新建

  2. 选择 XA 数据源,然后点击 下一步

  3. 填写以下信息:

    • 数据源名称:如 MyXADataSource

    • JDBC 驱动:选择合适的数据库驱动(例如:Oracle XA DataSourceDB2 XA)。

    • 数据库连接信息:填写数据库主机、端口、数据库名、用户名、密码等。

    • 事务管理类型:选择 全局事务(XA)

  4. 配置连接池大小、连接超时等其他参数。

  5. 点击 下一步,然后 完成

步骤 3:测试数据源

  1. 在数据源配置完成后,点击 测试连接 按钮,确保连接成功。

  2. 确保数据源能够正确连接到数据库,并且支持 XA 分布式事务。

2、配置 JMS 和数据库的事务协调

JMS(Java Message Service)和数据库通常需要协调事务,确保消息发送和数据库更新一致。通过配置 事务管理器XA 数据源,可以实现 JMS 和数据库的事务协调。

步骤 1:创建 JMS 连接工厂

  1. 导航到 资源JMS连接工厂

  2. 创建一个新的连接工厂,选择 XA 连接工厂

  3. 配置连接工厂的相关属性,包括:

    • JMS 服务端点(如 ActiveMQ、IBM MQ)。

    • 连接池大小等。

步骤 2:配置 JMS 队列或主题

  1. JMS 设置下,创建 JMS 队列JMS 主题

  2. 配置队列的 全局事务 支持,确保消息在事务中传递。

  3. 确保队列和数据库都配置为 XA 资源,以便事务可以跨多个资源工作。

步骤 3:配置 JMS 事务管理

  1. JMS 连接工厂 中,启用事务支持。
    确保 JMS 事务 被启用,允许消息的发送与数据库操作在同一个事务内执行。

  2. 配置事务超时和消息传递的事务行为。

3、在 Java 服务任务中管理事务

Java 服务任务 中,你可以手动管理事务(称为程序管理事务,BMT),控制事务的提交和回滚。

步骤 1:在 Java 服务任务中使用 UserTransaction 控制事务

  1. Process Designer 中,创建或编辑一个服务任务。

  2. 在服务任务代码中使用 javax.transaction.UserTransaction 来手动控制事务的边界。

import javax.transaction.UserTransaction;
import javax.naming.InitialContext;
import javax.naming.NamingException;public class TransactionExample {public void execute() {try {InitialContext context = new InitialContext();UserTransaction ut = (UserTransaction) context.lookup("java:comp/UserTransaction");// 开始事务ut.begin();// 执行数据库操作、JMS 消息发送等performDatabaseOperation();sendMessage();// 提交事务ut.commit();} catch (Exception e) {// 事务回滚try {ut.rollback();} catch (Exception rollbackEx) {rollbackEx.printStackTrace();}}}private void performDatabaseOperation() {// 数据库操作代码}private void sendMessage() {// 发送 JMS 消息的代码}
}

步骤 2:控制事务的提交与回滚

  • 使用 ut.begin() 开始事务。

  • 使用 ut.commit() 提交事务。

  • 如果出现异常,使用 ut.rollback() 回滚事务。

4、使用事务日志进行故障恢复和排查

WebSphere 提供了 事务日志,帮助在系统崩溃或失败时恢复未提交的事务。你可以通过以下方式配置和查看事务日志:

步骤 1:启用事务日志

1.在 WebSphere 控制台中,导航到:

服务器 > 服务器类型 > WebSphere Application Server > [你的服务器名称] > 容器设置 > 容器服务 > 事务服务

2.在 事务服务 配置页面中,确保 启用事务日志事务恢复 被启用。

步骤 2:查看事务日志

  • WebSphere 会将事务日志写入文件系统,日志文件通常位于:

<WAS_INSTALL_DIR>/profiles/<PROFILE_NAME>/logs/<SERVER_NAME>/transaction
  • 你可以查看这些日志,分析事务的提交、回滚记录以及可能的失败原因。

步骤 3:故障恢复

  • 如果 WebSphere 在处理事务时发生崩溃,事务日志会帮助恢复未完成的事务。

  • WebSphere 会自动根据事务日志恢复所有未提交的事务,确保数据一致性。

5、总结与最佳实践

操作建议
XA 数据源配置启用分布式事务,确保数据库和 JMS 一致性
JMS 和数据库事务协调配置 XA 连接工厂和队列,确保跨资源事务一致性
Java 服务任务事务管理使用 UserTransaction 明确控制事务提交和回滚
启用事务日志与恢复开启事务日志,确保事务失败时可以恢复

通过这些配置,你可以在 WebSphere 中灵活地管理事务,保证在复杂的分布式环境中,涉及多个资源(如数据库、JMS)时的一致性。 

未完,待续!

http://www.cadmedia.cn/news/14981.html

相关文章:

  • 建行网站网址是多少推广咨询服务公司
  • 外贸网站建设企业seo标题优化步骤
  • 企业网站建设方案费用预算太原seo培训
  • 网站建设需要学什么能力优化的含义
  • 虚拟主机购买哪里好优化排名seo
  • 江苏建设造价信息网站如何推广自己产品
  • 黄山旅游攻略 知乎seowhy论坛
  • 广东佛山网站建设怎么创建网站快捷方式
  • 淘宝联盟怎样做新增网站推广seo培训优化
  • 政府网站信息建设需求深圳广告投放公司
  • 免费黄页网站提高seo关键词排名
  • 温州网站优化推广方案深圳优化公司排名
  • 廊坊电子网站建设宁波seo推广咨询
  • 泰国公共建设网站优化营商环境发言稿
  • 个人建网站一般多少钱?亚马逊的免费网站
  • 哈尔滨地铁爱建站seo搜索引擎优化到底是什么
  • 视频链接下载到本地潍坊seo教程
  • 淘宝店铺购买价格seo公司关键词
  • 策划网站建设方案百度提交网址
  • 网文封面制作网站如何做好网络营销管理
  • 苏州公司网站建设价格上海网络推广平台
  • wordpress时间轴scopic主题广西关键词优化公司
  • 如何建设网站论文文献比较靠谱的推广公司
  • 厦门企业建站模板汽车网络营销的方式有哪些
  • 51制作工厂网站免费大数据平台
  • 小地方网站建设公司百度关键词查询工具
  • 政务网的门户网站建设国际站seo优化是什么意思
  • 凡客优品武汉seo和网络推广
  • 腾虎网络广州网站建设台州seo排名扣费
  • ps网页设计教程简单杭州seo百度关键词排名推广