JDK8新特性与生产

作者:坤谷(@JianhaoMo)

JDK8新特性与生产

for “华东地区scala爱好者聚会”-坤谷

  • 一年半前,就在这栋大楼,甲骨文Java布道师团队老大Simon布道了JDK8新特性。

  • 一年半后的今天,甲骨文整个Java布道师团队都被裁掉了,但甲骨文并没有停止对Java的投入,而是加大Java云平台的投资。
    • 表示甲骨文认为Java产品/生态足够好,不需要布道。
  • 所以今天我不是来布道JDK8新特性的,各种资料已经足够多了。
  • 我今天主要希望和业界交流JDK8新特性在实际生产中的表现。
  • 首先是JDK8最大的亮点:Lambda和Stream
    • 举世瞩目的2015双十一,阿里已经有核心交易应用是跑在JDK8上。
    • 主要原因就是利用Lambda和Stream重构复杂的业务逻辑。
    • Lambda和Stream让一些Java架构师和研发充满了激情
  • Lambda和Stream(续)
    • 担心调试?实际经验,没听到相关研发抱怨过,而且最新的IDE已经支持Lambda调试。
    • 性能Benchmark?Micro Benchmark没有意义。
    • 实际应用本身性能就有抖动。
    • 谈性能先得profile性能瓶颈。
    • 渲染⻚面和实际业务逻辑处理的延迟和吞吐率有不同的特性。
    • 业务逻辑应用Lambda得到很好重构,对整体性能没坏处
  • 其他新特性
    • 默认分层编译,让应用在生产启动时间显著加快
    • 8u60以后,对性能profile有革命性地突破
    • 详⻅:http://greenteajug.cn/?p=179
  • 当然,我们定制优化的做得更多。
    • 第一个外部种子用户已经用我们的定制版解决了生产痛点,不改代码已经直接降低了生产成本,还在持续优化,享受免费优化咨询服务。
  • 征集种子用户:
    • 阿里云客户,提工单申请种子用户,工单注明接口人:坤谷
    • 非阿里云客户,公司邮箱联系:kungu.mjh@alibaba-inc.com
时间: 2024-10-26 05:45:53

JDK8新特性与生产的相关文章

深入浅析JDK8新特性之Lambda表达式_java

第一次是接触Lambda表达式是在TypeScript中(JavaScript的超集中),当时是为了让TypeScript的this方法外而不是本方法内所使用的.使用过后突然想到Lambda不是JDK8的重量级新特性么?于是感觉查阅相关资料并记录下来: 一. 行为参数化 行为参数化简单的说就是函数的主体仅包含模板类通用代码,而一些会随着业务场景而变化的逻辑则以参数的形式传递到函数之中,采用行为参数化可以让程序更加的通用,以应对频繁变更的需求. 考虑一个业务场景,假设我们需要通过程序对苹果进行筛选

利用JDK8的新特性计算某个目录下的文件中包含字符串的次数

需求:计算某个字符串在某个文件夹中出现的次数.**这篇文章利用了JDK1.8的新特性Stream流和Lambda表达式并结合了线程池的使用.** package com.zkn.fullstacktraining.seventh; import javafx.util.Pair; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import java.util.List; im

【译】Java 8的新特性—终极版

文/杜琪(简书作者) 原文链接:http://www.jianshu.com/p/5b800057f2d8 著作权归作者所有,转载请联系作者获得授权,并标注"简书作者". 声明:本文翻译自Java 8 Features Tutorial – The ULTIMATE Guide,翻译过程中发现并发编程网已经有同学翻译过了:Java 8 特性 – 终极手册,我还是坚持自己翻译了一版(写作驱动学习,加深印象),有些地方参考了该同学的. Java 8 前言: Java 8 已经发布很久了,很

Oracle9i新特性-索引监视及注意事项[修正版]

oracle|索引 在Oracle9i中,如何监视索引并清除监视信息 -使用Oracle9i新特性 Last Updated: Saturday, 2004-12-04 10:28 Eygle         对于DML操作来说,索引对于数据库是一个性能负担.如果索引没有被有效的使用,那么其存在性就值得从新考虑.1. 从Oracle9i开始,Oracle允许你监视索引的使用: SQL> connect scott/tiger@connerConnected to Oracle9i Enterpr

Oracle 10G First Release的新特性简介(上)

oracle Oracle 10G First Release的新特性简介(上)   By Fenng 2003-6-8   Oracle(www.oracle.com)公司早已经宣称,Oracle 9i数据库只是一个过渡性的产品,真正的技术革新很可能在下一版,也就是通常说的10i(内部可能的版本号是2003,以下简称10i,估计在正式发行的时候会有一个新的名字)中体现出来.很多技术人员可能都会比较关心Oracle 10i究竟能有哪些新功能,是否能提供一些激动人心的新特性?我们在这里对Oracl

JDK 7新特性简介

JDK7 新特性系列之一 总览 JDK 全称 Java Development Kit,是一套供 Java 开发人员使用的软件开发工具, 其中包括了 JRE(Java Runtime Environment),以及 Java.Jar.Javac. Javap.Javah.Javaws 等工具.自从 Sun 公司 于 2006 年 12 月 11 日发布 JDK6 到 Oracle 公司于 2011 年 7 月 28 日发布 JDK7,历时长达 5 年之久,期间经历了 不少大大小小的事件.所以首先

探索Eclipse V3.1的新特性

这份教程演示了 Eclipse 的最新发行版 V3.1 中的许多新特性.如果正考虑 从以前的发行版升级到 V3.1,或者正考虑从其他集成开发环境转到 Eclipse, 那么您会发现本教程非常有用.如果想修改代码,以利用 Java 语言的 最新一代 Java 2 Standard Edition V1.5(为 Java 编程语言添加了许多强大 的结构和便利),本教程也会给您带来很大的帮助. 预备知识 了解本教程的学习目标和最佳学习方式. 关于本教 程 本教程演示了 Eclipse 的最新发行版 V

让 ESS 更灵活的新特性:UserData & KeyPair & RamRole & Tags

弹性伸缩(Elastic Scaling Service, ESS)是一种根据业务需求和策略,自动调整其弹性计算资源的管理服务,在满足业务需求高峰增长时无缝地增加 ECS 实例,并在业务需求下降时自动减少 ECS 实例以节约成本. 为了提供更加弹性.灵活的伸缩服务,ESS 弹性伸缩配置中新增了 UserData.KeyPair.RamRole.Tags 四个特性.使用 UserData,您可以快速安全的完成自动化的配置过程,在 ECS 实例数量随着业务需求弹性变化的同时,您还能够安全.快速地完成

PHP7.0,PHP7.1.x新特性

PHP7.1.x 新特性 风.fox 1.可为空(Nullable)类型 类型现在允许为空,当启用这个特性时,传入的参数或者函数返回的结果要么是给定的类型,要么是 null .可以通过在类型前面加上一个问号来使之成为可为空的. function test(?string $name) { var_dump($name); } 以上例程会输出: string(5) "tpunt" NULL Uncaught Error: Too few arguments to function tes