开源工具_cad 工具 开源 - CSDN
精华内容
参与话题
  • 五大最佳开源java性能监控工具

    千次阅读 2017-09-17 19:11:30
    如果你正在寻找性能监控工具,不妨看看以下推荐的这五款开源工具,这些工具目前已经可以替代付费工具了,你可以看看是否是你的最佳选择。本文推荐的五款开源工具目前是开源社区中最受欢迎的。 1. Stagemonitor ...

    对任何应用程序而言,性能都是最重要的事情之一。我们希望用户能够获得最佳的体验,并且应用程序可以正常运行,这也就是性能监控工具存在的原因。

    如果你正在寻找性能监控工具,不妨看看以下推荐的这五款开源工具,这些工具目前已经可以替代付费工具了,你可以看看是否是你的最佳选择。本文推荐的五款开源工具目前是开源社区中最受欢迎的。

    1. Stagemonitor

    Stagemonitor提供了一个Java监控代理程序,它是使用集群应用程序堆栈构建的。意思是它旨在监控在多个服务器上运行的应用程序。该工具与时间序列数据库(TSDB)集成。此工具已针对时间序列数据以及按时间索引的数字数组进行优化。包括以下数据库:Elasticsearch,Graphite和InfluxDB。

    Architecture:


    Stagemonitor包含一个位于Java应用程序中的代理,可将度量标准和请求跟踪发送到中央数据库。该工具只需要一个实例就可以监控所有应用程序,实例和主机,并且可以部署在你自己的数据中心内。

    在监控方面,你可以从集群或直接从开发人员服务器查看历史或实时数据,创建自定义报警机制,并为每个指标定义阈值。

    Stagemonitor包括一个仪表板,可以可视化分析你感兴趣的不同指标和请求。你可以自定义仪表板,编写自定义插件,甚至使用第三方插件。它提供了一个无需后端的浏览器窗口小部件,自动注入受监控的网页。在官方文档中,Stagemonitor还支持不基于servlet的应用程序。


    如果你对ELK堆栈很熟悉,该工具绝对值得一试。

    2. Pinpoint

    Pinpoint是用于大规模分布式系统的APM工具。它是在Dapper(一个由Google构建的分布式系统跟踪基础架构)之后构建的,为开发人员提供有关复杂分布式系统行为的更多信息。

    Architecture:


    该工具通过在分布式应用程序中跟踪事务,帮助分析系统的整体结构及其中的组件是如何互相影响的。它旨在解释每个事务如何执行,跟踪组件之间的行为,指出发生问题的区域和潜在的瓶颈。

    仪表板帮助可视化组件如何连接,并允许用户实时监控应用程序内的活动线程。Pinpoint还允许用户查看请求计数和响应模式,以便及时识别潜在问题。你可以查看包括CPU使用率,内存/垃圾回收和JVM参数等详细信息。


    如果你听说过Dapper,或者想要监控和分析复杂的分布式系统,你一定要试试这个工具。

    3、MoSKito

    MoSKito内包含三种工具:MoSKito-Essential:最基本的独立项目。它是MoSKito功能的核心,可以监控应用程序。MoSKito-Central:用于存储性能数据的集中存储服务器。MoSKito-Crotrol:用于监视多节点Web应用程序性能的工具。

    使用该工具之前,你只需将.jar文件放到WEB-INF / lib文件夹中,或者在web.xml文件中新建一个节点。一旦工具启动并运行,它就会开始收集性能数据,进行实时分析,同时将数据存储在本地。

    该工具会收集所有的性能指标,如线程,内存,缓存,存储,服务,注册,转换,SQL,负载分布等。它不需要更改代码,本身就支持所有主流的应用程序服务器(Tomcat,Jetty,JBoss,WebLogic)。

    你可以根据系统了解何时达到阈值,以及被监控用户的操作记录。除了基于Web的仪表板,该工具还提供了一个移动应用程序来监控应用程序性能。


    MoSKito于2007年首次推出,现在它是一个众所周知的稳定的工具,由团队和社区共同支持,包括付费支持选项,这也是该开源工具的巨大优势。

    4. Glowroot

    Glowroot是一个快速,干净和简单的APM工具。它可以跟踪捕获缓慢的请求和错误,能够记录每个用户的操作时间,以及SQL捕获和聚合。该工具还可保留汇总所有历史数据。

    它通过图表的方式显示响应时间分布和响应时间百分比,并允许用户通过移动设备监控应用程序性能。

    Architecture:


    使用Glowroot之前需要下载并解压安装文件,并将-javaagent:path/to/ glowroot.jar添加到应用程序的JVM参数中。启动应用程序后,剩下的所有操作可以访问http:// localhost:4000。

    一旦工具启动并运行,你将获得能够设置响应时间百分比和MBean属性的警报。Glowroot提供对跨多线程异步请求的全面支持,支持Tomcat,TomEE,JBoss EAP,Wildfly,Jetty和Glassfish等服务器。


    如果方便简单是你对监控工具的要求,毫无疑问,该工具最合适。

    5. Kamon

    Kamon是为在JVM上运行的应用程序而构建的工具包。更具体地说,它是为使用Typesafe平台(使用Scala,Akka,Spray和/or Play!)构建的应用程序,但仍然对其他JVM平台和语言提供支持。

    Architecture:


    Kamon作为核心模块,包含所有记录和跟踪操作的API以及为应用程序提供字节码检测和报告功能的可选模块。换句话说,它提供了一个简单的API来记录JVM应用程序的指标和性能信息。

    所有Kamon模块都可以通过Maven Central获得,你只需要将它们添加为项目的编译依赖项即可。之后只需启动Kamon,所有可用模块将自动启动,不需要显式激活/启动这些模块。

    如果你使用的是JVM语言,或是Scala和Akka,并且需要一款性能监控工具,Kamon可能是最友好的选择。

    结语

    这些可能是APM领域付费产品最好的替代品,但并不意味着这是一种省钱的方式。开源工具其实同样是有成本的,安装、维护、故障排除等都需要专门的人员解决,更不用说,当你遇到一个社区中从未出现过的问题时,需要浪费多少时间寻求答案了。

    学习Java的同学注意了!!!
    学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群346942462,我们一起学Java!

    展开全文
  • serviceMesh(服务网格)与开源工具

    千次阅读 2018-04-17 08:08:51
    serviceMesh(服务网格) Willian Morgan(Linker 的CEO)给出的Service Mesh定义: 服务网格是一个用于处理服务间通信的基础设施层,它负责为构建复杂的云原生应用传递可靠的网络请求。在实践中,服务网格通常...

    serviceMesh(服务网格)

    Willian Morgan(Linker 的CEO)给出的Service Mesh定义:
    服务网格是一个用于处理服务间通信的基础设施层,它负责为构建复杂的云原生应用传递可靠的网络请求。在实践中,服务网格通常实现为一组和应用程序部署在一起的轻量级的网络代理,但对应用程序来说是透明的。
    理解服务网格。

    1. 对于单个服务调用,服务网格表现为sidecar(类似kubernetes中pod的Sidecar容器)。
      servicemesh01

    2. 有多个服务调用,服务网格表现为服务间通讯专用基础设施层。在这种情况下,服务不再负责传递请求的具体逻辑,只负责完成业务处理。服务间通讯的环节就从应用里面剥离出来,呈现出一个抽象层。
      servicemesh02

    3. 有大量服务,服务网格表现为服务网格形状,Sidecar之间的连接形成网格。首先第一个,服务网格是抽象的,实际上是抽象出了一个基础设施层,在应用之外。其次,功能是实现请求的可靠传递。部署上体现为轻量级的网络代理。最后一个关键词是,对应用程序透明。
      servicemesh03

    定义关键点

    • 抽象:基础设施层
    • 功能:实现请求的可靠传递
    • 部署:轻量级网络代理
    • 关键:对应用程序透明
    • Service Mesh定义当中一个非常重要的关键点,和Sidecar不相同的地方:不再将代理视为单独的组件,而是强调由这些代理连接而形成的网络。在Service Mesh里面非常强调代理连接组成的网络,而不像Sidecar那样看待个体。
      servicemesh04

    servicemesh开源工具

    istio

    Istio是由Google、IBM和Lyft开源的微服务管理、保护和监控框架。
    使用istio可以很简单的创建具有负载均衡、服务间认证、监控等功能的服务网络,而不需要对服务的代码进行任何修改。只需要在部署环境中,例如Kubernetes的pod里注入一个特别的sidecar proxy来增加对istio的支持,用来截获微服务之间的网络流量。

    linkerd

    linkerd由Buoyant开源,也是业界第一个Service Mesh项目。
    Linkerd 是一个提供弹性云端原生应用服务网格的开源项目。其核心是一个透明代理,可以用它来实现一个专用的基础设施层以提供服务间的通信,进而为软件应用提供服务发现、路由、错误处理以及服务可见性等功能,而无需侵入应用内部本身的实现。

    conduit

    Buoyant在Linkerd不敌Istio的恶劣情况下,绝地反击,推出全新设计的 Conduit 作为对抗 Istio 的武器。
    Conduit是一款针对Kubernetes的超轻量级的service mesh。可以透明得管理服务运行时之间的通信,使得在Kubernetes上运行服务更加安全和可靠;还具有不用修改任何应用程序代码即可改进应用程序的可观测性、可靠性及安全性等方面的特性。

    serviceMesh开源工具对比

    Feature Istio Linkerd Conduit
    功能支持 负载均衡,服务TLS认证,服务调用监控,熔断,动态请求路由,服务发现,服务间流量管理,服务间访问策略管理 负载均衡,服务TLS认证,服务调用监控,熔断,动态请求路由,服务发现 官方文档暂未列出,发展还不完善
    第三方插件集成 分布式调用链跟踪Zipkin、监控套件Prometheus与Grafana、日志套件EFK、服务图展示ServiceGraph 分布式调用链跟踪Zipkin、监控套件Prometheus,InfluxDB,StatsD 监控套件Prometheus
    部署架构 Envoy/Sidecar DaemonSets sidecar
    易用性 复杂 简单 适中
    支持平台 kuberentes kubernetes/mesos/Istio/local kuberentes
    当前版本 0.7 1.3.7 0.3
    是否已有生产部署
    评分 ★★★★☆ ★★☆☆☆ ★★☆☆☆
    展开全文
  • 25款开源工具与神器

    2019-03-25 08:14:07
    一.分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程...

    一.分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba

    Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

    依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通过阿里中间件来迅速搭建分布式应用系统。

    地址:https://github.com/spring-cloud-incubator/spring-cloud-alibaba

    二. JDBC 连接池、监控组件 Druid

    Druid是一个 JDBC 组件。

    1.监控数据库访问性能。

    2.提供了一个高效、功能强大、可扩展性好的数据库连接池。

    3.数据库密码加密。

    4.SQL执行日志。

    地址:https://github.com/alibaba/druid

    三. Java 的 JSON 处理器 fastjson

    fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。

    主要特点:快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson);强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum);零依赖(没有依赖其它任何类库除了JDK)。

    地址:https://github.com/alibaba/fastjson

    四. 服务框架 Dubbo

    Apache Dubbo (incubating) |是阿里巴巴的一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

    地址:https://github.com/alibaba/dubbo

    五. 企业级流式计算引擎 JStorm

    JStorm 是参考 Apache Storm 实现的实时流式计算框架,在网络IO、线程模型、资源调度、可用性及稳定性上做了持续改进,已被越来越多企业使用。JStorm 可以看作是 storm 的 java 增强版本,除了内核用纯java实现外,还包括了thrift、python、facet ui。从架构上看,其本质是一个基于 zk 的分布式调度系统。

    地址:https://github.com/alibaba/jstorm

    六. 分布式数据层 TDDL

    TDDL 是一个基于集中式配置的 jdbc datasource实现,具有主备,读写分离,动态数据库配置等功能。

    地址:https://github.com/alibaba/tb_tddl

    七. 轻量级分布式数据访问层 CobarClient

    Cobar Client是一个轻量级分布式数据访问层(DAL)基于iBatis(已更名为MyBatis)和Spring框架实现。

    地址:https://github.com/alibaba/cobarclient

    八. 淘宝定制 JVM:TaobaoJVM

    TaobaoJVM 基于 OpenJDK HotSpot VM,是国内第一个优化、定制且开源的服务器版Java虚拟机。目前已经在淘宝、天猫上线,全部替换了Oracle官方JVM版本,在性能,功能上都初步体现了它的价值。

    地址:http://jvm.taobao.org

    九. Java 图片处理类库 SimpleImage

    SimpleImage是阿里巴巴的一个Java图片处理的类库,可以实现图片缩略、水印等处理。

    地址:https://github.com/alibaba/simpleimage

    十. redis 的 java 客户端 Tedis

    Tedis 是另一个 redis 的 java 客户端。Tedis 的目标是打造一个可在生产环境直接使用的高可用 Redis 解决方案。

    地址:https://github.com/justified/tedis

    十一.开源 Java 诊断工具 Arthas

    Arthas(阿尔萨斯)是阿里巴巴开源的 Java 诊断工具,深受开发者喜爱。

    Arthas 采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。

    地址:https://alibaba.github.io/arthas/

    十二.动态服务发现、配置和服务管理平台 Nacos

    Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。

    Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。

    地址:https://nacos.io/en-us/

    十三.Java 解析 Excel 工具 easyexcel

    Java 解析、生成 Excel 比较有名的框架有 Apache poi、jxl 。但他们都存在一个严重的问题就是非常的耗内存,poi 有一套 SAX 模式的 API 可以一定程度的解决一些内存溢出的问题,但 POI 还是有一些缺陷,比如 07 版 Excel 解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。easyexcel 重写了 poi 对 07 版 Excel 的解析,能够原本一个 3M 的 excel 用 POI sax 依然需要 100M 左右内存降低到 KB 级别,并且再大的 excel 不会出现内存溢出,03 版依赖 POI 的 sax 模式。在上层做了模型转换的封装,让使用者更加简单方便。

    地址:https://github.com/alibaba/easyexcel

    十四.高可用流量管理框架 Sentinel

    Sentinel 是面向微服务的轻量级流量控制框架,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

    只要通过 Sentinel API 定义的代码,就是资源,能够被 Sentinel 保护起来。大部分情况下,可以使用方法签名,URL,甚至服务名称作为资源名来标示资源。

    地址:https://github.com/alibaba/Sentinel

    十五.基于多维度 Metrics 的系统度量和监控中间件 SOFALookout

    Lookout 是一个利用多维度的 metrics 对目标系统进行度量和监控的项目。Lookout 的多维度 metrics 参考 Metrics 2.0 标准。Lookout 项目分为客户端部分与服务器端部分。

    客户端是一个 Java 的类库,可以将它植入您的应用代码中采集 metrics 信息,客户端更多详情。

    服务端代码部分,将于下一版本提供。通过 LOOKOUT 的服务,可以对 metrics 数据进行收集、加工、存储和查询等处理,另外结合 grafana,可做数据可视化展示。

    地址:https://github.com/alipay/sofa-lookout

    十六.基于 Spring Boot 的研发框架 SOFABoot

    SOFABoot 是蚂蚁金服开源的基于 Spring Boot 的研发框架,它在 Spring Boot 的基础上,提供了诸如 Readiness Check,类隔离,日志空间隔离等等能力。在增强了 Spring Boot 的同时,SOFABoot 提供了让用户可以在 Spring Boot 中非常方便地使用 SOFAStack 相关中间件的能力。

    地址:https://github.com/alipay/sofa-boot

    十七.轻量级 Java 类隔离容器 SOFAArk

    SOFAArk 是一款基于 Java 实现的轻量级类隔离容器,由蚂蚁金服公司开源贡献;主要为应用程序提供类隔离和依赖包隔离的能力;基于 Fat Jar 技术,应用可以被打包成一个自包含可运行的 Fat Jar,应用既可以是简单的单模块 Java 应用也可以是 Spring Boot 应用。可访问网址进入快速开始并获取更多详细信息。

    地址:https://alipay.github.io/sofastack.github.io/

    十八.分布式链路追踪中间件 SOFATracer

    SOFATracer 是一个用于分布式系统调用跟踪的组件,通过统一的 traceId 将调用链路中的各种网络调用情况以日志的方式记录下来,以达到透视化网络调用的目的。这些日志可用于故障的快速发现,服务治理等。

    地址:https://github.com/alipay/sofa-tracer

    十九.高性能 Java RPC 框架 SOFARPC

    SOFARPC 是一个高可扩展性、高性能、生产级的 Java RPC 框架。在蚂蚁金服 SOFARPC 已经经历了十多年及五代版本的发展。SOFARPC 致力于简化应用之间的 RPC 调用,为应用提供方便透明、稳定高效的点对点远程服务调用方案。为了用户和开发者方便的进行功能扩展,SOFARPC 提供了丰富的模型抽象和可扩展接口,包括过滤器、路由、负载均衡等等。同时围绕 SOFARPC 框架及其周边组件提供丰富的微服务治理方案。

    地址:https://github.com/alipay/sofa-rpc

    二十.基于 Netty 的网络通信框架 SOFABolt

    SOFABolt 是蚂蚁金融服务集团开发的一套基于 Netty 实现的网络通信框架。

    为了让 Java 程序员能将更多的精力放在基于网络通信的业务逻辑实现上,而不是过多的纠结于网络底层 NIO 的实现以及处理难以调试的网络问题,Netty 应运而生。

    为了让中间件开发者能将更多的精力放在产品功能特性实现上,而不是重复地一遍遍制造通信框架的轮子,SOFABolt 应运而生。

    地址:https://github.com/alipay/sofa-bolt

    二十一.动态非侵入 AOP 解决方案 JVM-Sandbox

    JVM-Sandbox,JVM 沙箱容器,一种基于 JVM 的非侵入式运行期 AOP 解决方案。

    地址:https://github.com/alibaba/jvm-sandbox

    二十二.面向云的分布式消息领域标准 OpenMessaging

    OpenMessaging 是由阿里巴巴发起,与雅虎、滴滴出行、Streamlio 公司共同参与创立,旨在创立厂商无关、平台无关的分布式消息及流处理领域的应用开发标准。

    地址:https://github.com/openmessaging/openmessaging-java

    二十三.P2P 文件分发系统 Dragonfly

    Dragonfly(蜻蜓)是阿里自研的 P2P 文件分发系统,用于解决大规模文件分发场景下分发耗时、成功率低、带宽浪费等难题。大幅提升发布部署、数据预热、大规模容器镜像分发等业务能力。

    开源版的 Dragonfly 可用于 P2P 文件分发、容器镜像分发、局部限速、磁盘容量预检等。它支持多种容器技术,对容器本身无需做任何改造,镜像分发比 natvie 方式提速可高达 57 倍,Registry 网络出流量降低99.5%以上。

    地址:https://github.com/alibaba/Dragonfly

    二十四.LayoutManager 定制化布局方案 vlayout

    VirtualLayout是一个针对RecyclerView的LayoutManager扩展, 主要提供一整套布局方案和布局间的组件复用的问题。

    地址:https://github.com/alibaba/vlayout

    二十五.Java 代码规约扫描插件 P3C

    项目包含三部分:PMD 实现、IntelliJ IDEA 插件、Eclipse 插件

    地址:https://github.com/alibaba/p3c

    参考:阿里巴巴

    展开全文
  • 本文主要介绍Java程序员应该在2020年学习的一些基本和高级工具。如果你是一位经验丰富的Java开发人员,你可能对这些工具很熟悉,但如果不是,现在就是是开始学习这些工具的好时机。 Java世界中存在许多工具,从...

    本文主要介绍Java程序员应该在2020年学习的一些基本和高级工具。如果你是一位经验丰富的Java开发人员,你可能对这些工具很熟悉,但如果不是,现在就是是开始学习这些工具的好时机。

    Java世界中存在许多工具,从Eclipse,NetBeans和IntelliJ IDEA等著名的IDE开始到Java开发人员应该知道的JVM分析和监视工具,如JConsole,VisualVM,Eclipse Memory Analyzer等。

    尽管如此,在本文中,我将重点介绍适用于各种Java开发人员的通用工具,例如核心Java 开发人员和Web开发人员。

    1. JIRA
      Atlassian的JIRA是当前敏捷开发领域最重要的工具之一。它用于错误跟踪,问题跟踪和项目管理。如果你遵循敏捷开发方法,例如Sprint和Scrum,那么你必须了解JIRA。它允许您创建Spring循环并跟踪软件开发的进度。在这里插入图片描述
      JIRA 是目前比较流行的基于Java架构的管理系统,由于Atlassian公 司对很多开源项目实行免费提供缺陷跟踪服务,因此在开源领域,其认知度比其他的产品要高得多,而且易用性也好一些。

    2. Git
      Git是Java程序员的另一个必备工具,它是一个免费的开源分布式版本控制系统,旨在快速高效地处理从很小到非常大的项目版本管理。Git易于学习,占用空间小,具有超强的性能。在这里插入图片描述
      最初 Git 的开发是为了辅助 Linux 内核开发的过程,但是发现已经在很多其他自由软件项目中也使用了 Git。

    3. Jenkins在这里插入图片描述
      Jenkins是一个用Java编写的开源自动化服务器。它有助于自动化软件开发,例如编译项目,运行单元测试,集成测试,生成文档以及在本地和远程存储库上载工件。主要用于:

    ● 持续、自动地构建/测试软件项目,如CruiseControl与DamageControl。

    ● 监控一些定时执行的任务。

    它是在项目中持续集成中最流行的工具之一。如果你还没有开始使用Jenkins,那就从现在开始吧。

    1. Selenium在这里插入图片描述
      Selenium是Web应用程序最好的软件测试框架之一。它提供了一种用于创作测试的回放工具,而无需学习测试脚本语言。Java开发人员可以使用Selenium来测试他们的HTML和JSP文件。

    它还为Web浏览器自动化提供了各种工具和库。Selenium 现在存在2个版本,一个叫 selenium-core, 一个叫selenium-rc 。

    1. Groovy在这里插入图片描述
      Groovy 是一种基于 JVM 的敏捷开发语言,它结合了 Python、Ruby 和 Smalltalk 的许多强大的特性。你可以使用它编写构建脚本,测试脚本,甚至可以使用像Gradle和Spock这样的流行框架。

    6、Spock
    Spock 是适合 Java 和 Groovy 应用程序的一个测试框架。由于其JUnit运行程序,Spock与大多数IDE,构建工具和持续集成服务器兼容。如果你想提高你的单元测试技能,那么多花点时间在学习Spock上总是没错的。

    1. Maven在这里插入图片描述
      如果你是一位经验丰富的Java开发人员,那么你一定非常了解Maven了,Apache Maven是一个构建和项目管理工具,基于项目对象模型(POM)的概念,Maven可用于管理项目的生成、报告和文档记录。

    Maven的另一个有用特性是依赖关系管理,由于我们在Java项目中使用了大量第三方库,因此手动管理每个JAR及其依赖项可能非常麻烦,Maven通过自动为你下载正确的JAR来帮助你解决问题

    1. Gradle
      Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具。它也是Android的默认构建工具。在这里插入图片描述

    它引入了基于Groovy的特定于域的语言(DSL),而不是Apache Maven用于声明项目配置的XML,这样有利于配置项目依赖关系以及用户的项目自定义

    为什么选择Gradle在Ant或Maven?因为它结合了其他构建工具的最佳特性,例如它具有Ant的灵活性和控制,Ivy的依赖管理,Maven的配置和插件的约定,以及可以在Ant上使用Groovy DSL。这使它成为Java项目的最佳构建工具。

    1. Docker在这里插入图片描述
      Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

    容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包装系统。

    1. Linux在这里插入图片描述
      初学Linux最好从Linux命令行基础知识开始,Linux是一种自由和开放源码的类Unix操作系统,在你的职业生涯中起到重要的作用,每一个Java开发者都应该学Linux。
    展开全文
  • 作为程序猿要想成长快,进阶快,拿到更高的薪资,付出的肯定比一般人多。想想黑马程序员刚毕业的...想要在技术的领域走的更远,这些开源工具,一定要熟悉,一个拥有5到10年工作的程序员,对于这些工具都非常熟悉。...
  • 十二个开源UML工具

    万次阅读 2019-08-21 16:05:39
    本文将为您介绍12个优秀的UML工具: 1. StarUML StarUML(简称SU),是一种创建UML类图,是一种生成类图和其他类型的统一建模语言(UML)图表的工具。StarUML是一个开源项目之一发展快、灵活、可扩展性强(zj)。 2. ...
  • 主流的开源bi工具

    千次阅读 2019-03-27 10:38:36
    下面列出相对成熟和完整,并且现在市面上主流的开源bi工具。 1、FineBI 国内做的一流的BI工具,很炫酷,也比较实用。主打的是超大数据量性能和自助式分析2个特点,在功能方面跟Tableau很接近,适用于企业中的...
  • 60款流行开源工具

    千次阅读 2018-05-06 00:20:46
    开源网络工具能派得上用处。无论你是在管理大型企业数据中心中成千上万的系统,还是仅仅把你家里的几台电脑连接起来,开源网络工具都能帮助你搭建和维护一个低成本的网络。开源网络:备份1. Bacula取代的对象:...
  • 大数据平台最常用的30款开源工具

    千次阅读 2019-08-12 17:13:28
    大数据平台是对海量结构化、非结构化、半机构化数据进行采集、存储、计算、统计、分析处理的一系列技术平台。...本文整理出了大数据平台常见的一些开源工具,并且依据其主要功能进行分类,以便大数据...
  • 作者:secist来自:FreeBuf.COM随着互联网的不断发展,安全问题也越来越受到企业的重视。但安全问题往往需要大量资金的投入,例如聘请安全工程师,产品研发,测试等流程。这对于那些...
  • Pentaho Report Designer是一款所见即所得的开源报表设计工具。在设计报表的时候,用户可以随意拖放和设置各种报表的控件,还可以快速方便地设置报表的数据来源。在报表的设计过程中,用户可以随时预览报表的结果。 ...
  • 12个最好的开源报表工具

    万次阅读 2016-08-11 10:19:26
    在dzone上闲逛时发现-‘最好的开源报表工具’这篇文章,点进去看到其中有一个“JavaEye Reporting Tool – JERT”,起初以为彼‘JavaEye’非此‘JavaEye’,取名相同而已。但还是好奇的搜索了一番,结果让我几分惊奇...
  • osrmt(开源的需求管理工具)的截图

    千次阅读 2007-01-17 10:00:00
    http://www.osrmt.com/gpage4.html 看上去很不错,有时间下来看看 
  • 开源的知识图谱软件

    万次阅读 2014-09-21 20:52:51
    最近想研究开源的搜索软件。
  • 四款有名的开源海量数据采集工具

    千次阅读 2011-10-11 05:32:26
    http://hi.baidu.com/nullbeta/blog/item/76e2781549d76e1d34fa418f.html 四款有名的开源海量数据采集工具 2011-08-01 23:21 面对海量数据,传统的ETL(Extraction-
  • 10款超好用的开源大数据分析工具

    万次阅读 2017-07-18 17:39:29
    现如今,整个互联网已经进入大数据时代,“大数据”一词的重点现也...鉴于市面上大数据分析工具琳琅满目日新月异,为了帮助大家少走弯路,本文将为不同技术背景的IT专业人士整理了十条大数据分析工具的进修技术路径。
  • 简表(JOR),是一款开源的报表工具,完全java实现,核心代码来自于国内一线报表工具品牌杰表.2008 。  提起开源的报表工具,不能不说说jaspereport,jasperreport作为著名的开源报表工具,在java程序员中一直享有...
  • 分享7 个开源项目管理工具

    万次阅读 2018-06-28 09:29:56
    在这次工具推荐中,我们从一些比较受欢迎的开源项目管理工具中摘取了支持敏捷的几项。 无论您的组织已经在使用敏捷,还是正计划使用,相信这 7 个开源的项目管理工具都能给你带来帮助。1、MyCollabMyCollab 是一个高...
  • 6 款常用的Java开源报表制作工具推荐 https://my.oschina.net/zh119893/blog/179352
  • 十款开源的数据库管理工具

    万次阅读 2013-10-27 23:20:09
    开发者在开发一个项目时,必定要选择一款合适的数据库,而数据库管理工具则可以帮助开发者轻松搞定很多难题。 任何Web软件和应用程序都需要强大的数据库来做后盾,目前,网上有无数个数据库管理工具,而开发者...
1 2 3 4 5 ... 20
收藏数 635,156
精华内容 254,062
关键字:

开源工具