java
文章平均质量分 86
OneAPM官方技术
北京蓝海讯通科技股份有限公司(以下简称 OneAPM)是一家领先的IT运维管理软件厂商。公司于2008年成立于北京,始终秉承「让运维更加智能」的企业使命,致力于为中国的企业级用户提供一体化的智能运维解决方案。OneAPM 通过10年以上的持续研发和不断创新,目前拥有国内最完整的 IT运维管理产品线和智能探针技术。公司的产品和服务在运 营商、金融、政府、互联网、教育、能源、交通、军工等多个行业获得了广泛应用和一致好评。
展开
-
Spring Data Redis 让 NoSQL 快如闪电 (1)
本文作者为 Xinyu Liu,详细介绍了 Redis 的特性,并辅之以丰富的用例。在本文的第一部分,将重点概述 Redis 的方方面面。文章系国内 ITOM 管理平台 OneAPM 编译呈现。原创 2016-06-23 11:03:05 · 1432 阅读 · 1 评论 -
Java 8方法引用使用指南
本文作者为拥有15年 Java 开发经验的资深程序员 Per-Åke Minborg,主要介绍如何灵活地解析 Java 中的方法引用。文章系国内 ITOM 管理平台 OneAPM 编译呈现。原创 2016-05-11 12:10:50 · 1662 阅读 · 0 评论 -
Java 8怎么了:局部套用vs闭包
【编者按】本文作者为专注于自然语言处理多年的 Pierre-Yves Saumont,Pierre-Yves 著有30多本主讲 Java 软件开发的书籍,自2008开始供职于 Alcatel-Lucent 公司,担任软件研发工程师。本文主要介绍了 Java 8 中的闭包与局部套用功能,由国内 ITOM 管理平台 OneAPM 编译呈现。关于Java 8,存在着许多错误观念。譬如,认为Java 8给J翻译 2016-04-28 16:41:22 · 1677 阅读 · 0 评论 -
管理Java垃圾回收的五个建议
本文作者是Niv Steingarten,是Takipi 的联合创始人,热衷于编写优雅简洁的代码。作者通过对垃圾收集器的介绍和梳理,在管理垃圾回收方面提出了五个建议,降低收集器开销,帮助大家进一步提升项目性能。本文系国内 ITOM 管理平台 OneAPM 工程师编译整理。原创 2016-03-23 17:08:17 · 7166 阅读 · 3 评论 -
如何使用 Java8 实现观察者模式?(下)
【编者按】本文作者是 BAE 系统公司的软件工程师 Justin Albano。在本篇文章中,作者通过在 Java8 环境下实现观察者模式的实例,进一步介绍了什么是观察者模式、专业化及其命名规则,供大家参考学习。本文系国内 ITOM 管理平台 OneAPM 工程师编译整理。线程安全的实现前面章节介绍了在现代Java环境下的实现观察者模式,虽然简单但很完整,但这一实现忽略了一个关键性问题:线程安全。大翻译 2016-02-25 10:50:21 · 2140 阅读 · 0 评论 -
如何使用 Java8 实现观察者模式?(上)
本文主要介绍通过使用 Java8 架构实现观察者模式,并在此基础上进一步探讨关于经典模式的复杂问题,包括匿名内部类、lambda 表达式、线程安全以及非平凡耗时长的观察者实现。本文内容虽然并不全面,很多这种模式所涉及的复杂问题,远不是一篇文章就能说清的。但是读完本文,读者能了解什么是观察者模式,它在Java中的通用性以及如何处理在 Java 中实现观察者模式时的一些常见问题。原创 2016-02-24 12:41:17 · 1623 阅读 · 0 评论 -
Java 编程:如何提高性能?(简单总结篇)
开发者在编程中除了要有编程规范,还要注意性能,在 Java 编程中有什么提高性能的好办法呢?本文转自国内 ITOM 行业领军企业 OneAPM Cloud Insight(一款能够优雅监控多种操作系统、数据库、中间件、云主机的解决方案)美女工程师陈永梅简书。开发者在编程中除了要有编程规范,还要注意性能哦,今天就工作中遇到的一些问题进行了一个简单总结,希望攻城狮来批评指正。作为一个QA,从质量管理方面原创 2016-03-01 12:53:54 · 759 阅读 · 1 评论 -
升级 Java 编程规范的6个约定
作为 Java 开发人员,我们会遵循一系列的编码风格和开发习惯。习惯使然是一方面,另一方面,我们也从不停下脚步质疑这些习惯。一段时间以后,笔者养成了一些不同于常人的编码风格和开发习惯。当第一次了解到这些编码风格时,笔者感到又惊又气。但是,花了一段时间践行这些习惯之后,笔者意识到它们的确能造就更加简洁可控的代码库,同时也让开发者更加省心。不要因这些想法的另类而否定它们,笔者建议你用几周时间尝试其中的一翻译 2016-01-11 14:36:55 · 484 阅读 · 0 评论 -
Java 8 的 JVM 有多快?Fork-Join 性能基准测试
Java 8 已经发布一段时间了,许多开发者已经开始使用 Java 8。本文也将讨论最新发布在 JDK 中的并发功能更新。事实上,JDK 中已经有多处java.util.concurrent 改动,但本文重点将是 Fork-Join 框架的改进。我们将讨论一点 Fork-Join,然后实现一个简单的基准测试以比较 FJ 在 Java 7 和Java 8 中的性能。你可能对Fork/Join在意的地方翻译 2015-12-24 12:33:08 · 1874 阅读 · 0 评论 -
前端性能优化(三)——传统 JavaScript 优化的误区
在前端高性能优化(一)、(二)中,笔者介绍了一些关于前端优化的技术,这些技术都依赖于前人的辛苦努力,但我们仍要明白的是,前端的情况十分复杂,优化前端性能是必须因地制宜、因时制宜。在本篇文章中,主要介绍的就是在一些条件下,传统优化 JavaScript 的技术并不像我们认为的那样适用。原创 2015-12-22 14:37:44 · 758 阅读 · 0 评论 -
选择 Java 编写 iOS 与 安卓 App的八大理由
本文作者为 RoboVM 的 CEO 兼联合创始人 Henric Müller,主要介绍选用 Java 编写移动应用的八大理由。文章系国内 ITOM 管理平台 OneAPM 编译呈现。原创 2016-05-11 16:39:02 · 5461 阅读 · 0 评论 -
Java 性能调优指南之 Java 集合概览
本文将概览所有标准的 Java 集合类型。我们将按照它们可区分的属性与主要用例进行分类。除此之外,我们还将穷举在不同集合类型之间进行数据转换的方法。原创 2016-05-12 12:45:18 · 2762 阅读 · 0 评论 -
如何借助 NoSQL 提高 JPA 应用性能
关注 NoSQL 的动态发展很重要。NoSQL 的好处并不仅限于新的应用开发。在某些案例中,你可以见识到重新访问现有的、传统的框架带来的积极效果,比如说你的 JPA 的实现。本文系国内 ITOM 管理平台 OneAPM 编译呈现。原创 2016-05-25 14:59:28 · 416 阅读 · 0 评论 -
Spring Data Redis 让 NoSQL 快如闪电(2)
本文作者为 Xinyu Liu,文章的第一部分重点概述了 Redis 方方面面的特性。在第二部分,将介绍详细的用例。文章系国内 ITOM 管理平台 OneAPM 编译呈现。原创 2016-06-28 11:45:35 · 4219 阅读 · 1 评论 -
微服务扩展新途径:Messaging
服务编排是微服务设置的一个重要方面。本文在利用 ActiveMQ 虚拟话题来实现这一目标的同时,还会提供实用性指导。文章系国内 ITOM 管理平台 OneAPM 编译呈现。原创 2016-06-27 11:29:37 · 1266 阅读 · 1 评论 -
为什么响应式编程并非一时之势?
本文作者为 David Buschman,文章从程序架构与系统的发展历程出发,逐步论证了为什么响应式编程并非一时之势,而是能带来更快处理速度,更高硬件利用率的未来选择。文章系国内 ITOM 管理平台 OneAPM 编译呈现。原创 2016-06-08 11:33:17 · 3689 阅读 · 0 评论 -
2016年,谁是最受欢迎的 Java EE 服务器?
本文作者为性能监控工具 Plumbr 创始人 Nikita Salnikov-tarnovski,主要介绍2016年度最广为使用的 Java EE 容器及其排名变化情况。本文系国内 ITOM 管理平台 OneAPM 编译呈现,以下为正文。原创 2016-05-20 12:25:38 · 1062 阅读 · 0 评论 -
创建完美SDK的10个技巧
本文作者为 Gal Lavinsky,文中将列出10个零基础小技巧,帮你创建完美的Java SDK。文章系国内 ITOM 管理平台 OneAPM 编译呈现。以下为正文。原创 2016-05-17 16:45:02 · 467 阅读 · 0 评论 -
的确,Java存在缺陷。但是……
本文作者为资深码农 Tim Spann,主要讲述 Java 让人无法抗拒的众多优点以及一些些缺陷。本文系国内 ITOM 管理平台 OneAPM 编译呈现,以下为正文原创 2016-05-06 14:49:27 · 748 阅读 · 0 评论 -
你的代码有重复吗?
本文作者为来自 SoftwareYoga.com 的软件架构师、敏捷与 DevOps 开发流程践行者 Deepak Karanth,文章主要介绍了 DRY 原则的诸多优点。原创 2016-05-04 15:26:35 · 527 阅读 · 0 评论 -
Java 性能要点:自动装箱/ 拆箱 (Autoboxing / Unboxing)
本文作者为 Ali Kemal TASCI,最早于2016年4月9日发布于DZONE社区。文章主要介绍通过改进 Java 1.5 就已存在的骨灰级特性大幅度提高应用性能。原创 2016-04-19 11:28:04 · 1607 阅读 · 0 评论 -
借助 Java 9 Jigsaw,如何在 60 秒内创建 JavaFX HelloWorld 程序?
在本文中,笔者会讲解如何利用 Java 9 的模块系统在 60 秒内创建一个 JavaFX HelloWorld 应用程序。原创 2016-05-26 14:38:49 · 947 阅读 · 0 评论 -
如何使用 Java 构建微服务?
【编者按】微服务背后的大理念是将大型、复杂且历时长久的应用在架构上设计为内聚的服务,这些服务能够随着时间的流逝而演化。本文主要介绍了利用 Java 生态系统构建微服务的多种方法,并分析了每种方法的利弊。快速预览在 Java 生态系统中构建微服务的策略主要有:container-less, self-contained 和 in-container;Container-less 微服务把应用程序及原创 2016-01-20 15:03:28 · 555 阅读 · 0 评论 -
用 JMH 检测 Lambdas 序列化性能
本文将介绍如何进行 Java Lambdas 序列化性能检测、Lambdas 的重要性以及 Lambdas 在分布式系统中的应用。Lambdas 表达式是 Java 8 中万众期待的新特性,其若干用途包括:为匿名内部类减少所需样本代码。缩小值的作用域。Lambdas 表达式中的 this 不会涉及到外部类,减少了内存泄露。轻松集成现有 API 与新的 Streams API。Lambdas转载 2015-12-18 11:46:43 · 450 阅读 · 0 评论 -
Java 8 vs. Scala(二):Stream vs. Collection
【编者按】在之前文章中,我们介绍了 Java 8和Scala的Lambda表达式对比。在本文,将进行 Hussachai Puripunpinyo Java 和 Scala 对比三部曲的第二部分,主要关注 Stream 和 Collection,本文由 OneAPM 工程师编译整理。首先,为大家做一个简短的介绍,collection 是有限的数据集,而 stream 是数据的序列集,可以是有限的或无原创 2015-11-30 13:40:51 · 964 阅读 · 0 评论 -
如何优化 Java 性能?
对于 Java 性能比较关心的同学大概都知道《Java Performance》这本书,一般而言,很多同学在日常写 Java Code 的时候很少去关心性能问题,但是在我们写 Code 的过程中必须考虑到性能对程序的影响。小到我们使用位运算来实现算术运算,大到我们对 Java 代码的总体架构设计,「性能」其实离我们很近。本篇文章主要提到几个点,希望能够对大家有所启发。对于性能调优而言,通常我们需要经原创 2015-10-21 11:05:47 · 454 阅读 · 0 评论 -
为什么选择 Java 8 ?
本文是 DZone 指南 Java 生态系统的专题文章。点击链接可阅读更多见解深刻的文章、行业统计信息,系 OneAPM工程师编译整理。要点速递在很多情况下,Java8 都能提升应用性能,而无需任何改变或性能调优。Lambda 表达式、 Streams API 以及现有类的新方法都是提高生产力的重要工具。Java8 新推出的 Optional 类型在处理 null 值时,能减少 NullPoi翻译 2015-11-04 13:11:22 · 479 阅读 · 0 评论 -
多维度分析:抽象类和接口的区别
【编者按】本文作者是[Sebastian Malaca](https://dzone.com/users/2571450/smalaca.html),是面向对象编程的狂热者,不断深化研究整洁代码和高代码质量。本文中,作者通过多个方面深入剖析抽象类和接口的区别,并结合经验供读者借鉴学习,本文系 [OneAPM](http://www.oneapm.com/index.html?utm_source=翻译 2015-09-15 17:21:16 · 512 阅读 · 0 评论 -
在 Java 中如何更高效地存储和管理 SQL 语句?
【编者按】还在为管理 Java 代码中的 SQL 语句而烦恼吗?让 Zemian 帮你摆脱困境吧!本文系 OneAPM 工程师编译整理注意:使用java.util.Properties#loadFromXML其实会更简单!如果使用的是普通的、没有任何外部类库的 Java JDBC,那么就必须得自己去管理 SQL 语句。很不幸的是,Java String 并不支持多行结构,所以开发者必须使用许多引号+翻译 2015-08-19 18:54:08 · 1168 阅读 · 0 评论 -
Java 中最常见的 5 个错误
【编者按】在编程时,开发者经常会遭遇各式各样莫名错误。近日,Sushil Das在 Geek On Java上列举了 Java 开发中常见的 5 个错误,与君共「免」。以下为译文:1. Null 的过度使用避免过度使用 null 值是一个最佳实践。例如,更好的做法是让方法返回空的 array 或者 collection 而不是 null 值,因为这样可以防止程序抛出 NullPointerExcep翻译 2015-07-23 07:07:38 · 2153 阅读 · 1 评论 -
JavaScript 性能分析新工具 OneProfile
OneProfile 是一个网页版的小工具,可以用全新的方式展示 JavaScript 性能分析的结果,帮助开发者洞悉函数调用关系,优化应用性能。点击打开 OneProfile背景Chrome Dev Tools 自带的 CPU Profile 功能非常好用。用它可以方便的生成 JavaScript 的 Flame Chart。更棒的是你可以把 Flame Chart 导出,留着下次或者拷贝到其它原创 2015-07-28 23:34:04 · 866 阅读 · 0 评论 -
在 Java EE 组件中使用 Camel Routes
摘要:你可以通过集成 Camel 和 WildFly 应用服务器(使用 WildFly-Camel 子系统)在 Java EE 组件中开始使用 Apache Camel Routes。【编者按】作者 Markus Eisele 是 Red Hat 的 Developer Advocate,主要从事 JBoss Middleware 相关研究,拥有超过14年的 Java EE 工作经验。本篇博文中,原创 2015-07-17 02:53:10 · 1638 阅读 · 0 评论 -
除非万不得已,别 Catch!
【编者按】作者 Yegor Bugayenko 是 Teamed.io 的软件架构师,热衷于软件质量研究和有效的项目管理方法探索。在本文中,Yegor 就「异常被捕获但并未重新抛出」这个问题进行了深入讨论,并分享了一些建议。对异常只捕获但并未重新抛出究竟是 anti-pattern,还是个普通而且非常流行的错误确实无从考究。但毫无疑问的是,在所有异常捕获代码中,它基本无处不在,正如下面这段代码:原创 2015-07-17 02:36:44 · 1800 阅读 · 0 评论 -
JAVA 异常对于性能的影响
在对OneAPM的客户做技术支持时,我们常常会看到很多客户根本没意识到的异常。在消除了这些异常之后,代码运行速度与以前相比大幅提升。这让我们产生一种猜测,就是在代码里面使用异常会带来显著的性能开销。因为异常是错误情况处理的重要组成部分,摒弃是不太可能的,所以我们需要衡量异常处理对于性能影响,我们可以通过一个实验看看异常处理的对于性能的影响。实验我的实验基于一段随机抛出异常的简单代码。从科学的角度,这原创 2015-06-18 23:15:10 · 1476 阅读 · 1 评论 -
如何有效地记录 Java SQL 日志?
在常规项目的开发中可能最容易出问题的地方就在于对数据库的处理了,在大部分的环境下,我们对数据库的操作都是使用流行的框架,比如 Hibernate 、 MyBatis 等。由于各种原因,我们有时会想知道在这些框架下实际执行的 SQL 究竟是什么。原创 2015-09-22 10:32:09 · 628 阅读 · 0 评论 -
Capsule:开源的 JVM 应用部署工具
【编者按】本文作者 Ron Pressler 是 Parallel Universe 公司的创始人,拥有着丰富的高性能开发经验。通过这篇文章,Ron 向大家详细介绍了全新的开源 JVM 部署工具——Capsule, 本文系 OneAPM 工程师编译整理。现实世界中,应用程序部署过程可能没有想象中的那么简单。应用程序其实非常「敏感」,在部署过程中,它会发现自己身处一个陌生的环境中,并且在与不同硬件、不翻译 2015-09-23 11:34:43 · 560 阅读 · 0 评论 -
Spring/Hibernate 应用性能优化的7种方法
对于大多数典型的 Spring/Hibernate 企业应用而言,其性能表现几乎完全依赖于持久层的性能。此篇文章中将介绍如何确认应用是否受数据库约束,同时介绍七种常用的提高应用性能的速成法。本文系 OneAPM 工程师编译整理。如何确认应用是否受限于数据库确认应用是否受限于数据库的第一步,是在开发环境中进行测试,并使用 VisualVM 进行监控。VisualVM 是一款包含在 JDK 中的 Jav原创 2015-10-27 16:35:56 · 479 阅读 · 0 评论 -
Java 8 vs. Scala(一): Lambda表达式
【编者按】虽然 Java 深得大量开发者喜爱,但是对比其他现代编程语言,其语法确实略显冗长。但是通过 Java8,直接利用 lambda 表达式就能编写出既可读又简洁的代码。作者 Hussachai Puripunpinyo 的软件工程师,作者通过对比 Java 8和 Scala,对性能和表达方面的差异进行了分析,并且深入讨论关于 Stream API 的区别,本文由 OneAPM 工程师编译整理。原创 2015-11-30 13:16:24 · 1347 阅读 · 0 评论 -
Java 应用发布后,需要关注的7个性能指标
在某个重大发布之后,都需要记录相应的指标,本文介绍了最重要的几个 Java 性能指标,包括响应时间和平均负载等。为理解应用程序在生产环境中如何运行,就需要遵循一些 Java 性能指标。在以前,当软件被发布后,开发者是没有方法去了解它在生产环境中的运行情况;而现在,几乎任一个你可以想到的指标都可以被监测和报告。时下,开发者面临的问题并不是缺乏信息,而是信息过载、过大。因此在数百台服务器同时工作的情景下转载 2015-12-16 19:30:27 · 2110 阅读 · 0 评论 -
欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl转载 2015-12-16 19:27:19 · 793 阅读 · 0 评论