热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ApacheServiceMix7.0.0-001

Vsersion7.0-SNAPSHOT第七版速览(未经博主同意严禁转载,严禁用于任何商业目的,持续更新中………..)1.介绍首先,欢迎来到ApacheServiceMi

Vsersion 7.0-SNAPSHOT 第七版速览

(未经博主同意严禁转载,严禁用于任何商业目的,持续更新中………..)

1.介绍

首先,欢迎来到Apache ServiceMix 项目!
快速指南的目的是让你在20分钟内快速了解ServiceMix是什么,你能用它来做什么,我们将会在你的设备上安装ServiceMix,部署一些基础的集成路由和附带额外功能的扩展容器。

2.安装

在开始使用Apache ServiceMix 之前,我们需要安装这个软件并且在本地运行。

2.1系统要求

为了运行Apache ServiceMix ,你需要
.Java Runtime Enviroment 1.6x(java 6) 或者
.Java Runtime Enviroment 1.7x(java 7)
.100MB的磁盘空间来安装默认组件。
如果你要开发自己的集成应用和OSGI 包,你还需要一下配置
.Java Developer Kit (JDK)1.6x(java 6)或者
.Java Developer Kit (JDK)1.7x(java 7)
.Apache Maven 3.0.4或者更高版本

2.2 下载Apache ServiceMix

Apache SerViceMix 7.0.0-SNAPSHOT 在Apache License v2 下可以获得,可以从 http://servicemix.apache.org/处下载。
基于你的操作系统,你需要下载对应的版本
.tar.gz适用于Linux/unix/macos X
.zip 适用于windows

2.3安装Apache ServiceMix

安装Apache ServiceMix 只需将你下载的安装包解压到你的硬盘上即可。在指导的后面部分,我们将把安装路径称为SERVICEMIX_HOME

2.4启动Apache ServiceMix

依据你的平台,依照以下说明来启动Apache ServiceMix。启动container之后 , 你就可以通过控制台来管理容器。
在windows系统
在命令提示窗口,进入ServiceMix的目录,运行bin\servicemix.bat 文件。
例如:如果ServiceMix 的安装目录为 c:\tools\apache-servicemix-7.0.0-SNAPSHOT
这里写图片描述
在Linux/Unix/MacOS X系统上
在shell中,进入你的安装目录运行bin/servicemix 的脚本
例如:如果你的ServiceMix安装在~/Applications/apache-servicemix-7.0.0-SNAPSHOT目录。
这里写图片描述

3.Apache ServiceMix 的控制台

现在我们已经成功的安装和启动了Apache ServiceMix ,接下来我们将进一步了解控制台。在控制台你将管理你的ServiceMix 的实例,添加或者移除包,加载自定义功能,………..。

3.1操作包

当ServiceMix第一次被启动时,一个用于生产的核心功能的包集将会被加载,让我们使用控制台来探索更多关于这些包……
bundle:list命令可以用来获得当前被加载的所有包,键入如下:
这里写图片描述
对于每一个包,你将会看见
包的id
包的状态
包是否包含一个Blueprint或者Spring XML文件,在接下来显示的两行将会显示被定义的beans是否成功被创建
包开始的水平
包的名字和版本

如果你想在列表里看一些特别的信息,你可以使用类似于nuix的管道和工具来帮助你。
例如:查看和包所相关的所有Camel

这里写图片描述

3.2日志

许多你写的应用都会有某种形式的日志的输出。查看日志文件中的信息,你可以使用log:display命令。
这里写图片描述
如果你只想加载异常日志,你可以使用log:display-exception命令.

你也可以改变日志的等级在运行期间,使用log:set命令。你现在可以尝试这些指令在你的实例上,首先将日志等级设置成DEBUG然后使用grep来确定你的确能看见额外的日志记录。
这里写图片描述
在这之后,使用log:set命令将日志等级恢复成INFO
这里写图片描述

3.3更多关于

上面显然只有少量的例子展示了shell命令是什么。除此之外还有很多命令可以帮助你部署,监视,管理和你创建的SserviceMxi的故障排除。

4.使用Camel

现在我们知道了如何通过shell控制台来操作Apache ServiceMix ,现在我们开始来使用它。让我们使用Camel路由来创建我们的第一个集成解决方案,并将它部署在ServiceMix上。

4.1简单的方案

在这个简单的方案中,我们将移动文件从输入目录camel/input到一个输出目录camel/output。为了确保我们可以跟踪哪些文件被移动了,我们也会写一个信息到日志文件当我们一dion个一个文件时。

4.2创建一个路由

一个最简单的在ServiceMix上部署一个新的路由的方法是在Blueprint XML文件中定义路径。
这里写图片描述

4.3部署路由

为了部署和启动一个路由,只需要复制你刚才创建的XML文件到ServiceMix的部署目录。这个文件将会被ServiceMix捡起和部署。你将会看见一个camel/input文件夹显示在你的ServiceMix的安装目录上,并且任何你复制到该目录的文件都会被移动到camel/output目录。
如果你在shell中输入log:display命令,你将会看见被移动文件的日志的输出。
这里写图片描述

4.4使用shell管理路由

使用bundle:list命令,你将会注意到你的XML文件已经被转换成为了一个包,并且Blueprint容器已经被创建来启动你的Camelia路由。
这里写图片描述
从这个输出,你也可以了解到你的xml文件的包的id是,这使得你可以启动或者停止这个路由,当你觉得需要的时候。让我们来演示一下。
首先,停止这个路由
这里写图片描述
这个路由不再处于活动状态,所以现在你复制任何文件到orders/input文件夹下都仍然会保持在那。当你重新启动这个路由时,这个待处理文件才会被移动。
这里写图片描述

5.向Mix中添加ActiveMQ

开箱即用,每一个Apache ServiceMix 的实例都嵌入了ActiveMQ JMS的中间件。这使得Camel路由之间可以很方便的在同一个设备上使用持久化消息进行通信,除此之外它也可以使你在类聚或者载入平衡时通过复杂实例发布你的路由。

5.1我们的脚本

在这个脚本中,我们也想在两个目录之间移动文件。在这我们不再直接记录移动日志,我们将会发送一个JMS message事件到队列中去,然后我们将会创建一个临时的Camel路由来接受这个时间并且记录他们。

5.2移动文件和发送事件消息

我们创建的第一个Blueprint XML文件包含了一个Camel路由,它将会把文件从activemq/input移动到activemq/output目录下。在这之后,它将会生成一个事件消息,发送到一个叫做events的ActiveMQ队列。
这里写图片描述
保存这个文件在ServiceMix的发布文件中,然后使用bundle:list来检查包的状态,就像你之前在Camel的简单示例中做的那样。你现在可以将文件放置在activemq/input目录下并且看到它们被移动到了activemq/output目录下。

5.3接受事件消息

发布第一个XML文件之后,很显然你没有看到任何一个事件被记录。事件消息被发送到ActiveMQ队列,但是没有来接受这个消息的结构体,所以让我们现在创建一个临时的Blueprint XML文件来接受它。
这里写图片描述
当这个临时文件被部署之后,你将会看见这个事件消息在你的log:display的output中。

5.4使用shell来管理路由

你现在可以通过控制台来启动或停止路由。现在你需要注意的重要的事情是当文件被处理时你可以停止事件管理路由。只要你重新启动包,在这之后你将会接受到来自所有文件的事件,这些文件在路由没有运行时就已经被移动了。

6.可选择的功能

以上所讨论的是在开箱即用的Apache ServiceMix 中已经加载的功能,但是我们仍然有很多可选则的功能可以被加载到容器中去,如果需要的话。

6.1功能列表

这个功能列表可以通过features:list命令获得。这个概览可以向你展示功能是否已被安装,版本号和功能的名字。
这里写图片描述
这整个列表包含了许多不同的功能。

6.2web控制台

为了加载web控制台在你的SeerviceMix中,加载这个功能通过你的控制台。
这里写图片描述
在这之后你可以证实这个功能在概览中已经被标识加载。你将会注意到webconsole_base功能已经作为webconsole功能自身的一个必要条件被加载了。
这里写图片描述
你现在你就可以浏览http://localhost:8181/system/console登陆,user:smx,password:smx,来登陆web控制台。从webconsole,你也可以启动和停止包,再次加载可选功能,………。

7.结束

到此我们的Apache ServiceMix 介绍之旅就结束了,我们只是尽可能的窥探了表面的东西,但是我们希望你能从Apache ServiceMix中获得一些想法,并将它应用到你的环境中。

关于更多资讯,请参考我们的用户指导,如果你有任何疑问,欢迎email我们。


推荐阅读
  • 深入解析 Apache Shiro 安全框架架构
    本文详细介绍了 Apache Shiro,一个强大且灵活的开源安全框架。Shiro 专注于简化身份验证、授权、会话管理和加密等复杂的安全操作,使开发者能够更轻松地保护应用程序。其核心目标是提供易于使用和理解的API,同时确保高度的安全性和灵活性。 ... [详细]
  • 在维护公司项目时,发现按下手机的某个物理按键后会激活相应的服务,并在屏幕上模拟点击特定坐标点。本文详细介绍了如何使用ADB Shell Input命令来模拟各种输入事件,包括滑动、按键和点击等。 ... [详细]
  • 本文由瀚高PG实验室撰写,详细介绍了如何在PostgreSQL中创建、管理和删除模式。文章涵盖了创建模式的基本命令、public模式的特性、权限设置以及通过角色对象简化操作的方法。 ... [详细]
  • 实体映射最强工具类:MapStruct真香 ... [详细]
  • 深入解析 Spring Security 用户认证机制
    本文将详细介绍 Spring Security 中用户登录认证的核心流程,重点分析 AbstractAuthenticationProcessingFilter 和 AuthenticationManager 的工作原理。通过理解这些组件的实现,读者可以更好地掌握 Spring Security 的认证机制。 ... [详细]
  • 微软Exchange服务器遭遇2022年版“千年虫”漏洞
    微软Exchange服务器在新年伊始遭遇了一个类似于‘千年虫’的日期处理漏洞,导致邮件传输受阻。该问题主要影响配置了FIP-FS恶意软件引擎的Exchange 2016和2019版本。 ... [详细]
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • Startup 类配置服务和应用的请求管道。Startup类ASP.NETCore应用使用 Startup 类,按照约定命名为 Startup。 Startup 类:可选择性地包括 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • 本文详细介绍了 org.apache.commons.io.IOCase 类中的 checkCompareTo() 方法,通过多个代码示例展示其在不同场景下的使用方法。 ... [详细]
  • 本文作者分享了在阿里巴巴获得实习offer的经历,包括五轮面试的详细内容和经验总结。其中四轮为技术面试,一轮为HR面试,涵盖了大量的Java技术和项目实践经验。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 本文介绍了如何利用 Spring Boot 和 Groovy 构建一个灵活且可扩展的动态计算引擎,以满足钱包应用中类似余额宝功能的推广需求。我们将探讨不同的设计方案,并最终选择最适合的技术栈来实现这一目标。 ... [详细]
  • 深入解析Java枚举及其高级特性
    本文详细介绍了Java枚举的概念、语法、使用规则和应用场景,并探讨了其在实际编程中的高级应用。所有相关内容已收录于GitHub仓库[JavaLearningmanual](https://github.com/Ziphtracks/JavaLearningmanual),欢迎Star并持续关注。 ... [详细]
author-avatar
楼兰祈珞
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有