ActiveMQ 学习第二弹

时间:2021-07-22 07:22:42

经历了昨天的初识 ActiveMQ,正好今天下班有点事耽搁了还没法回家,那就再学习会 ActiveMQ 吧!现在官网的文档没啥好看的了,毕竟是入门学习,太深奥的东西也理解不了。然后看官网上有推荐书籍《ActiveMQ in Action》,老外在 2011 年写的,感觉有点老,但这本书好像最近也没更新过,那就先凑活着看吧!没找到完整的中文翻译版,那就先看看英文原版的 PDF 了。

前言

到目前为止,大部分的软件开发者并不能切实地理解消息队列的概念。商业的面向消息的中间件(message-oriented middleware,简称 MOM)对于开发者们对消息队列概念的理解并没有起什么作用,因为现在市场上大部分的面向消息的中间件都是闭源的,需要花钱购买服务和支持,只有受过专门训练的系统管理员才会正确的安装。而 ActiveMQ 提供了一种免费开源的选择,它的中心思想就是把权利交到开发者的手上。现在,ActiveMQ 在充当消息中间件方面已经是非常成功了,安装使用它是非常简单的,并且,ActiveMQ 还提供了大量的独有特性。
在 ActiveMQ 诞生后六七年的今天,它被广泛使用的速度是令人吃惊的。在很多应用中,ActiveMQ 都充当了关键性组件。在被众多小型商业公司和大型企业采用后,ActiveMQ 在各行各业被广泛部署,包括:手工制造业,*部门,零售行业,医疗健康行业,金融行业,电信行业以及军队里面等。使用了基于事件和 ActiveMQ 功能丰富,吸引了一大批的拥护者,并且其吸引力还在持续上升。
我写这本书的目的是向读者提供一份 ActiveMQ 特性的参考和使用指南。尽管 ActiveMQ 实现了多年都未曾变更过的 Java 官方的 JMS 规范,但 ActiveMQ 还提供了很多超越规范的特性,并且它从未停止创新。创造一本关于软件的书籍从来都是一场角逐的游戏,随着软件的不断更新,必然会有更多的相关书籍被写出来,但我只能尽最大努力地保持本书内容跟进 ActiveMQ 5.4.1 版本。
我们希望通过阅读本书,你不仅能学会 ActiveMQ ,也能理解基于事件的系统的相关知识。总的来说,世界上的一些大型系统通常被设计成使用事件和消息队列。

关于本书

《ActiveMQ in Action》这本书是为软件架构师,开发者以及有兴趣在企业级应用里集成消息队列特别是 ActiveMQ 的人准备的。这本书的定位是初学者和有经验的应用开发者,所以书中内容部分是介绍,部分是参考指南。本书以对 ActiveMQ 的介绍和对 JMS 的概览起步,然后慢慢的深入讲解 ActiveMQ。
本书讲解的概念假定假定读者已经拥有足够的可以设计和开发 Java EE 应用的知识。尽管这些知识并不是要求必备的,但已经掌握了这些知识再学习本书中的概念将是轻而易举的。本书第 9 章甚至讨论了使用除了 Java 之外的其他语言,如:C++,C#,JavaScript,Perl,PHP,Python 和 Ruby,集成 ActiveMQ。

路标

本书分为四部分:

第一部分:介绍了 ActiveMQ 以及对 JMS 的概览,然后讨论了一个贯穿全书的例子。

  • 第一章从一个较高的层次介绍 ActiveMQ,并讨论了为什么使用 ActiveMQ以及为什么使用 ActiveMQ。这章也演示了怎么下载和安装 ActiveMQ,并且展示了怎么运行一个使用了 ActiveMQ 的例子。
  • 第二章介绍了企业级消息,面向消息的中间件以及 JMS 规范。
  • 第三章介绍了贯穿全书的例子。

第二部分:聚焦于 ActiveMQ 中三个标准组件:消息代理连接器,消息持久化以及消息安全代理。

  • 第四章覆盖了 ActiveMQ 的所有连接选项。这一章讨论了 ActiveMQ 的 URLs,然后是讲解了包含:TCP,NIO,STOMP,灾备策略,SSL,HTTP/S 等通信方式在 ActiveMQ 传输层(例如:客户端连接代理,代理连接代理)的运用。

  • 第五章讨论了在 ActiveMQ 中的消息持久层。然后是队列和主题中的消息是怎么被存储的,消息存储的四种方式以及消息缓存。
  • 第六章讲解了 ActiveMQ 中精心设计的安全层。它涵盖了鉴权,授权,基于证书的安全性校验,以及如何创建自定义的安全插件。

第三部分主要讲述了在 Spring 框架使用 ActiveMQ。Spring 框架在开源应用界里占着主导地位,可以用于开发不止 Java 的大量应用。

  • 第七章讲解了在 Java 应用中使用 ActiveMQ,包括:在 Java 应用中嵌入 ActiveMQ 的一些可选项,开发一个请求/响应式的应用以及使用 Spring 写 JMS 客户端。
  • 第八章介绍了怎么在流行的开源应用服务器(例如:Tomcat,Jetty,Geronimo 以及 JBoss)中集成 ActiveMQ。本章也讨论了 ActiveMQ 提供的客户端 JNDI 的支持。
  • 第九章讨论了使用除了 Java 之外的其他语言来操作 ActiveMQ,包括:C++,C#,JavaScript,Perl,PHP,Python 以及 Ruby。

第四部分讨论了 ActiveMQ 的高级特性,包括:高可用性,可伸缩性,高级代理以及客户端特性。还讲解了如何进行性能调优以及 ActiveMQ 的管理。

  • 第十章讨论了怎么在生产环境中部署 ActiveMQ。本章的重点是 ActiveMQ 的高可用性以及可伸缩性。
  • 第十一章讲述了 ActiveMQ 提供的像:通用字符,组合地址,告警消息,虚拟主题,插件信息等高级特性,然后介绍了使用 Apache Camel 的消息路由。
  • 第十二章的内容涵盖了 ActiveMQ 客户端特性,包括:唯一性消费者,消息组,流和大对象,failover 传输和计划消息。
  • 第十三章讲解了如何进行 ActvieMQ 的性能调优。这包括一些通用的调优技巧,例如:可持计划和不可持久化的主题,事务,内嵌代理,传输层协议优化,生产者和消费者的 TCP 传输层优化。
  • 第十四章以 ActiveMQ 的管理和监控来结尾,讲解了怎么为 ActiveMQ 配置 JMX 监控并演示了 JConsole 的使用。这一章也演示了为监控 ActiveMQ 而生的告警消息的使用。内容涵盖了命令行工具,命令代理,XMPP,JConsole 以及 Web Console 的使用。然后还讨论了代理和客户端层次的日志。

代码下载

本书的源代码均可从出版商网站下载:http://manning.com/ActiveMQinAction

目录

消息 和 ActiveMQ 简介

  1. Apache ActiveMQ 简介
  2. 理解面向消息的中间件和 JMS
  3. ActiveMQ 实例

ActiveMQ 组件的标准配置

  1. 连接 ActiveMQ
  2. ActiveMQ 消息存储
  3. ActiveMQ 的安全性

使用 ActiveMQ 构建面向消息的应用

  1. 使用 ActiveMQ 创建 Java 程序
  2. 在应用服务器端集成 ActiveMQ
  3. 在其他编程语言中使用 ActiveMQ

ActiveMQ 高级特性

  1. 在企业中部署 ActiveMQ
  2. ActiveMQ 代理特性实例
  3. 客户端高级设置
  4. ActiveMQ 性能调优
  5. ActiveMQ 的管理和监控

Apache ActiveMQ 简介

这章主要讲述了:ActiveMQ 特性,为什么使用 ActiveMQ,什么时候使用 ActiveMQ,怎么使用 ActiveMQ。

英文书籍看的就是慢,少小不学英语,现在徒伤悲!今天就先看到这吧。