swarm 和 k8s_Wildfly Swarm,朝着成熟和一小部分贡献

swarm 和 k8s

我最近关注的项目之一是Wildfly Swarm 。 最终,在今年的JBoss BOF中的Devoxx期间,由于考虑与著名的Docker Swarm发生冲突,我的要求没有考虑更改项目名称。

那么什么是Wildfly Swarm?

简而言之,就是Wildfly应用程序服务器(包括我在内 ,是许多开发人员首选的应用程序服务器),分为几部分-(称为模块或分数),可供任何开发人员使用并组装新的模块化解决方案。 您将不再需要捆绑或安装整个应用程序服务器,只需您想要的层和功能即可。 您可以从几个子模块的列表中选择应用程序将要利用的子模块,提取它们的依赖关系,并将最终的jar应用程序与代码一起组装。 该模型与许多团队和开发人员使用Spring Boot所做的工作非常相似。

Wildfly和模块化–提前实现

值得一提的是,Wildfly是在其其他技术或容器出现之前很早就对其模块化和相关基础架构进行投资的少数应用服务器之一。 这些年来,JBoss / Wildfly代码库在为提供带有可插拔模块的灵活内核方面做出了很大的改变,这是多年来我们需要赞扬其开发和设计团队的东西 。 如果您使用Wildfly或JBoss从事​​过任何项目,那么您已经接触过它的模块架构以及简化的类和库加载功能。 因此,应用服务器和组件已经通过设计和构造实现了模块化,唯一缺少的是将其正式化并为最终开发人员提供一些额外的工具和API,以充分利用此功能。 那就是Wildfly Swarm。 开发仍在进行中。 官方网站可以发现这里的例子一个长长的清单和代码,可以发现在这里 ,官方文档,可以发现在这里 ,Twitter帐户在这里 ,可以找到邮件列表在这里 。

ShrinkWrap –出色的API

在开发方面,使用Wildfly Swarm的优点之一是使用了非常方便的,出色的书面API IMHO,称为ShrinkWrap 。 ShrinkWarp源自Arquillian Project,它是您用于动态构建“可测试”存档的API,该API可即时部署到应用服务器运行时。 非常适合Wildfly Swarm的环境,您可以在其中以编程方式编写最终应用程序(还有其他方法)。 当开发基于Arquillian的测试时,我一直享受着ShrinkWrap的美丽和简单,我也很高兴看到它也“逃脱”到其他工具和技术上。

小专家的贡献

当我浏览这些示例时,尝试学习Wildfly Swarm并与之一起玩时,我注意到从Maven的角度来看,还缺少一些小东西。 由于最终您可以将很多模块(分数)定义为依赖项,因此为了提出最终解决方案,我缺少了一些帮助(以部分物料清单的形式),以便您可以导入您的最终POM,然后选择您可能喜欢的任何依赖项。 我决定创建一个问题并提出一个很小的请求,并提出一个BOM。 开发团队对此非常满意,在这一方面进展很快,而最新版本的Wildfly Swarm为所有Maven用户提供了新的BOM。

  • 我有一个小型演示项目(没什么花哨的东西,只是为了展示一些事情或将来与其他人一起玩)。 你可以在这里找到它。

主要思想是,在使用Maven构建的任何新的基于Wildfly Swarm的项目中,您现在都可以导入特定的BOM(名称bom),并且可以具有具体列表以及可用馏分(组分)的版本。

<dependencies><dependency><groupId>org.wildfly.swarm</groupId><artifactId>weld</artifactId></dependency><dependency><groupId>org.wildfly.swarm</groupId><artifactId>jaxrs</artifactId></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.wildfly.swarm</groupId><artifactId>bom</artifactId><version>${wildfly.swarm.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>
  • 您可以在此处找到完整的简单pom。

翻译自: https://www.javacodegeeks.com/2016/01/wildfly-swarm-towards-maturity-small-contribution.html

swarm 和 k8s

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/336543.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python socket多线程 获取朋友列表_python socket多线程通讯实例分析(聊天室)

本文实例讲述了python socket多线程通讯方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;#!/usr/bin/evn python"""这是一个Socket多进程的例子(聊天服务端)"""import socketimport threading# 处理中文数据用的encoding "GBK…

8进5预警处理

题&#xff1a;在图像处理中&#xff0c;如果发现有危险标为1&#xff0c;否则标为0. 在图像处理中可能出现误报。因此采用8进5的方法&#xff0c;即前8里面有5个预警&#xff0c;我们就返回预警信息. #include <iostream> #include<queue> using namespace std;q…

facelets_Java EE 8中的MVC 1.0:使用Facelets入门

faceletsMVC 1.0是一个基于动作的Model-View-Controller Web框架&#xff0c;它将成为将来的Java EE 8的一部分。它将与基于组件的JSF框架并存&#xff0c;并提供了构建面向HTML javascript的应用程序的替代方法完全控制网址。 这篇文章总结了使用Facelets代替默认的JSP作为M…

python实现端口转发_python实现超简单端口转发的方法

本文实例讲述了python实现超简单端口转发的方法。分享给大家供大家参考。具体如下&#xff1a;代码非常简单&#xff0c;实现了简单的端口数据转发功能&#xff0c;用于真实环境还需要再修改一下。代码如下:#tcp serverimport sockethost 127.0.0.1 #Local Server IP…

C++防卫式编程

#ifndef XXXXXX #define XXXXXX //代码段 #endif 此段代码保证了&#xff0c;在多重包含情况下不会重复包含。 1.如果已经定义了defineXXX则代码段不会被编译&#xff0c;反之则会编译

storm apache_Apache Storm的实时情绪分析示例

storm apache实时情感分析是指处理自然语言文本&#xff08;或语音&#xff09;流以提取主观信息。 琐碎的用例用于构建推荐引擎或查找社交媒体趋势。 我选择了Apache Storm作为实时处理引擎。 Storm非常强大&#xff08;我们正在生产中使用它&#xff09;&#xff0c;并且非常…

怎么用python画圆的公式_怎么用python画圆

python中内置了许多第三方库&#xff0c;来帮助它完成各种功能。Turtle库就是Python语言中一个很流行的绘制图像的函数库(推荐学习&#xff1a;Python视频教程)Turtl库用于绘制线、圆、其他形状或者文本这个库被介绍为一个最常用的用来给孩子们介绍编程知识的方法库&#xff0c…

C++函数后置返回类型

//后置函数返回类型声明 auto func(int a, int b)->void; //后置函数返回类型定义 auto func(int a, int b)->void {return; }

嵌入式java基准测试_Java正则表达式库基准测试– 2015年

嵌入式java基准测试在尝试使Java在计算机语言基准游戏的regexdna挑战中排名第一时&#xff0c;我正在研究Java正则表达式库的性能。 我可以找到的最新网站是2010年的tusker.org 。因此&#xff0c;我决定使用Java Microbenchmarking Harness重做测试并发布结果&#xff08;破坏…

java决策树_【Java】决策树介绍和使用

现在生活中&#xff0c;越来越多的时候 需要进行判断和决策&#xff0c;因此关于怎么去判断和决策&#xff0c;需要根据一定的依据进行判断和决策&#xff0c;并不是凭空的按照自己的意愿去判断和决策&#xff0c;就比如举个例子&#xff1b; 假如甲同学准备结婚&#xff0c;但…

C++ 【随想录】(五)C 文件操作

#include<iostream> #include<cstdio> using namespace std;int main() {FILE *fp1 NULL; //指向源文件FILE *fp2 NULL; //指向目的文件char *byBuffNULL; //缓存int fileBytes 0; //文件大小const char* pSrc "M3.264";const char* pDest "M…

stackoverflow_Stackoverflow的见解:投票最多的是Spring 4问题

stackoverflow在Stackoverflow上对Spring 4问题进行投票和回答最多的是什么&#xff1f; 以下是最常见的五个问题和解答。 Spring中的 Component&#xff0c; Controller&#xff0c; Repository和Service批注有什么区别&#xff0c;它们可以互换使用还是具有特定功能&#xf…

java 编译顺序_关于java中一次编译多个源文件时的编译顺序的问题

为了节省回答者的时间我先把问题提出来&#xff0c;再针对问题案例作详细说明。如果能不用看问题案例就回答出来当然省时。我的问题是java里面&#xff0c;用命令行提示符环境编译源文件的时候&#xff0c;加上*通配符...为了节省回答者的时间我先把问题提出来&#xff0c;再针…

宏定义细节

#define PI(a,b) ab //分析 /* PI(a,b)a,b是参数 后面的ab进行运算 返回值作为PI的宏定义

libgdx和unity_libgdx和Kotlin –类[2D平台原型]

libgdx和unity这篇文章是libgdx和Kotlin文章的后续文章。 我已经决定开发一个简单的2D平台程序的原型&#xff08;沿着我的早期文章中的Star Assault进行介绍&#xff09;&#xff0c;但是我一直在使用和学习Kotlin&#xff0c;而不是Java。 对于本教程&#xff0c;该项目应处…

java1.7开发环境_在Windows平台搭建Java 1.7开发环境

OS&#xff1a;Windows 7 or laterJava Version: 1.7.x本文具体的演示环境是&#xff1a;Windows 8.1&#xff0c;Java 1.7.0_45。一、安装JDK需要注意的是安装路径中不要出现非西文符号。实际上我一般喜欢在安装路径中也尽可能不出现空格。比如&#xff1a;在我的PC上&#xf…

浅谈人工智能

所谓人工智能&#xff0c;主旨是让它有用“自己的思维模式”

java timer开销_减少Java垃圾收集开销的5条提示

java timer开销保持较低的GC开销的一些最有用的技巧是什么&#xff1f; 随着Java 9即将再次延迟发布&#xff0c;G1&#xff08;“垃圾优先”&#xff09;垃圾收集器将设置为HotSpot JVM的默认收集器。 从串行垃圾收集器一直到CMS收集器&#xff0c;JVM在其整个生命周期中都见…

C++STL Vector

#include<iostream> #include<vector> using namespace std;int main() {//vector构造函数vector<int>A(); //无参数&#xff0c;构造一个空的vectorvector<int>B(10, 1);//数量(num)和值(val) - 构造一个初始放入num个值为val的元素的Vector vector&…

java serializable 源码_Java源码分析之-Serializable接口

一、基本概念Serializable接口&#xff1a;1. 实现了Serializable接口的类&#xff0c;可以进行序列化和反序列化&#xff1b;没有实现这个接口的类的任何(state)状态/域或者属性值不能被序列化2. All subtypes of a serializable class are themselves serializable. 所有实现…