2019java趋势报告框架

趋势报告框架 第分:Java的技术采命周期 这部分采英同样的标准划分: 创新者 早期采 早期 晚期 技术采命周期是美国技营销杰弗摩尔在的书《跨越鸿沟》出的概念。技术采 周期是衡量对某项新技术接受程度的模型,它认为新的技术,从始出现到最 后成熟,必然会经历创新者、早期采、早期、晚期的阶段。 虽然每个间都会有裂缝,但是早期采和早期之间的那条裂缝最这条裂缝就是传说中 的“鸿沟”,只有跨越过这条鸿沟,渗透到早期这个,产品才等于是进主流市场。 希望您结合国内使发展情况,把以下技术对应到技术采命周期相应的不同阶段中: Java/JVM Java版本(8~13); OpenJDK定制版或者公开发,Oracle JDK, OpenJDK by Oracle/Redhat/Azul/Alibaba/Amazon, 或者其他; otspot JDK实践,如GraalVM、IBM OpenJ9; 语法与特性,例如:Lambda /Stream、Vector API等(可以从是否有哪些特性带来了突出甚 可替代的价值的,评判他们在技术采命周期中的位置); JVM语Kotlin、Scala、Groovy、其他; 不同层次的主流框架:Java EE(Jakarta EE)、Spring Framework、RxJava 、Vert.x、Netty; 微服务领域:Spring Boot/Cloud、Dubbo、TarsJava、ServiceComb、其他 哥(@mercyblitz):创新者 早期采早期晚期 Java 13 Java 11 OpenJDK Java 8 Jakarta EE GraalVM Reactive Streams Lambda/Stream Apache Dubbo (ECO System) Vert.x Kotlin Scala、Groovy TarsJava RxJava/Reactor Java EE(Jakarta EE)、 Netty ServiceComb Spring Framework Spring Boot/Cloud Apache Dubbo InfoQ英结果供参考 第分:Java趋势点评 对第分中您所归类的处于不同阶段的技术,请您逐出如下点评问题包括: 某个技术为什么要被划在这个技术采命周期内个技术在国内的发展情况以及机遇和挑战是 什么 哥(@mercyblitz): Java / JVM 语- Java 8 已被业界普遍接受,像 Spring Framework、Spring Boot,以及 Spring Cloud 这样的现代 Java 框架,还是类似于 Vert.x、RxJava 或 Reactor 这类框 架,均已构建在 Java 8 以及更版本之上。同时,Lambda 语法以及 Stream API 也在开 发的中地运并且没有看到语法回退的趋势。因此,Java 8 和 Lambda/Stream 可归类为“晚期”。 JVM 语Scala 和 Groovy 已快成为明花,往昔 的光芒逐渐地被后期之秀 Kotlin 替代,故 Scala 和 Groovy 属于“晚期”,Kotlin 则纳 早期“ 之流。然Java 9 的被接受程度则没有那么幸运,尽管我们等待它的到来已有 数年。 Java 模块化作为 Java 9 核特性,就我个完全能够理解和接受它的设 计。虽然模块化增强了模块的隔离性,减少了内存的 Footprint,然它更强的封装性 形之中增加了管理依赖的成本。所谓曲寡,夸张地说,模块化形同虚设。因此,应 级 Java 9 的效果相当于 Java API 以及 JVM 的更新。同时,Oracle 宣布从 Java 9 开始,每半 年将更新Java 本。那么,更多的选择 Java 11 这样的(Long-Term – Support, LTS)版本,换,Java 9/10 则成了过渡版本(nonTS) 1 。因此,Java 11 将是未来 Java 的最可能选项,将其列为“早期采”。Java 13,最近有注意到该 本版在新 GC 算法的提升以及 Socket 实现上的变化 2 ,还是令待的,故排在“创新 者” 之列。除了模块化之外,Java 9 还有的 API 更新,在偏开发侧的部分,Flow API 可 能是最有吸引,提供了 Reactive Streams 3 标准接及实现,并且内建了 HTTP Client Reactive 实现。尽管 Spring 和 Eclipse 社区的推并且 Java Lambda 以及 Stream API 也流来,不过对开发者,Reactive Streams 技术还是相对陌将其 放在 “早期“。同理,Spring 引Reactor 框架也属于“早期” 阶段。虽然 RxJava 并Reactive Streams 的实现,但是相较于前两者,它在 Reactive 编程中的地位必然 是有过之不及的,故也在 “早期“ 之中。 OpenJDK – 由于 Oracle 宣布 2019 年伊始,Oracle JDK 8 以及更本在服务器端部署不再 免费,OpenJDK 则成为数 Java 的选项。尽管 Oracle JDK 与 OpenJDK 出 同之不过OpenJDK 很可能被认为是退其次的选择。对于具备研发的企 业,它们可能选择在 OpenJDK 的基础上,义分续开发。在程度上,Java 的发 展出现了裂痕,所以未来仍存在着不确定性,故将其放置于 “早期“ otspot JDK实践 – 按照 GraalVM 官描述,GraalVM 将会是下的 JVM 基础设 施,也是 Oracle 的重点项能够将传统的 JVM 进程 native 化,那么未来 Java 的性能提 升以及快速启停则不再遥远,不够还尚不可知其兼容性情况以及明确的商业化条款,列 为“早期采应该是合理的 不同层次的主流框架 Java EE – 在 Java 中,绝数应接或间接地使Spring Framework,这 个曾经以轻量级著称的框架,显然“名不副实”,不过巨基础,早已进晚 期”的。相反,Java EE 规范或者重组后的 Jakarta EE 4 则寂寥许多。实际 上,作为 J2EE 或 Java EE 的模仿者,尽管 Spring Framework 多半的特性和实现向 JSR 5 参考。程度上,Spring Framework 的流压缩”了 Java EE 以及 JSR 的认 知空间,因此不少的开发不知道 Java EE API 或者 JSR 的存在,尤其是年轻的国内 从业。当然,Spring 也反哺了少量标准给 Java EE,JSR 330 6 ,因此,将 Java EE 列为 “晚期” 是毋容置疑的。值得的是,Jakarta EE 在 Eclipse 基 会 7 的带领下能否再次“伟值得期待,后续未来 Jakarta EE 将是“创新者”成员 框架 – Java 的框架只有两种,其Netty,其是其他。如此描述也丝毫 不夸张,毕竟数与相关的框架或中间件都和 Netty 多少存在关联,如 Apache Dubbo、Spring 5 Web Server、Jersey 等,所以“晚期”的排望所归。 微服务框架 – Java 微服务框架的王者Spring Boot 和 Spring Cloud 莫属,进过数年的使两者早已属于“晚期” 的技术栈。相对应地,Apache Dubbo 出现和开 源的时间Spring Cloud 早不少,是性能还是稳定性,相对于后者要优秀不少, 因此,Apache Dubbo 也属于 “晚期” 框架。不过,最新的 Apache Dubbo ECO System(系统)则基于 Apache Dubbo 衍进的 Cloud Native 解决,尚 未枝叶茂盛,处于 “创新者” 阵营。Vert.x 则由于编程模型以及 API 熟悉度等 客观条件所限,它不得不仍处于 ”早期采”。类似,TarsJava 以及 ServiceComb 最 近才出现,的认可度和稳定性稍微成熟,同样处于 ”早期采”。 国内是否在某个相对完整的领域,形成甚始引领技术趋势 哥(@mercyblitz):在国内的开源软件中,Apache Dubbo(后称 Dubbo)常年受到 业界的,并荣获多次殊荣。个为 Dubbo 有机会引领技术趋势。Dubbo 从过去的能 RPC 框架,正在Cloud Native 的系统(后称 Dubbo ECO System)。具体执 步骤也是 Dubbo 社区对 Cloud Native 的发展趋势研判,其冲的是 Dubbo 在 Spring Cloud 场景下的整合。这部分已在 Spring Cloud Alibaba 项完成,作为项的核员, Dubbo Spring Cloud 可地替换过传统 Spring Cloud OpenFeign,不仅提供更好的性能,并 且具备更多的负载均衡策略和熔断等特性。同时,灵活的扩展点和内建实现帮助 Dubbo 适应不同 语环境和基础设施。随着 Dubbo 内核即将发布 Cloud Native(即将发布)特性 ,能够将 Dubbo 帮助独任意的基础设施,实现 Dubbo(原与 Spring Cloud(原调通, 甚K8S 场景下。Dubbo 身处何处,统编程模型帮助开发快速和地实现业 务逻辑,达成 “Write Once, Run Anywhere” 的。后续,Dubbo 在多语Mesh 化 以及 Istio 的建树将逐现。 第三部分:应践 请您尽可能详细地回答以下问题,这些问题的回答除了作为趋势报告的分之外,还可以作为您所在 企业的技术实践,单独成InfoQ记者将针对每位嘉宾所在企业和技术实践,补充个性化问题): Java相关: 您的企业使JDK版本情况,是否采某个OpenJDK 发如何看待OpenJDK 在国内的 发展如果没有采原因以及后续计划 哥(@mercyblitz):在开源penJDK 的选择仅为 Oracle 官供。如果是公 司内部的话,则是 OpenJDK Alibaba 的分OpenJDK 在国内直接拿去使多,有能 围之扩展的公司凤可能随着 OpenJDK 不同分成熟,未来国内公司选择会 更 您的企业在Java技术栈的策略是什么划和是什么关的核点或者业务 需求是什么 哥(@mercyblitz):关于公司在战略层设定,个不是清楚的。不过,作 为基础设施的研发,遇到和周遭听到同事抱怨的痛点还是存在的。,Java 9 之后的版本更新问题。 Reactive Streams 推落地时的阻碍,毕竟数开发从事 业务开发,业务系统的稳定性是他们核KPI 之他们缺少的勇动腾新技术 的引进、也没有时间和精注其中细节,尤其当没有明显特性变化的基础设施 和 API 升级时。对于本我关JVM 中的变化,包括 GC 算法和性能提升,C1 和 C2 编译所导致的延迟和资源开销,如何帮助 JVM 快速启停,因为这些会限制 Java 作为编程语 云原代的想象空间 对于当前Java的整体发展情况,您有什么感想 哥(@mercyblitz):Java 仍具在编程语上夺魁,不过在整体上微幅 下滑。个来,未来这个趋势还将持续。究其原因,由于新语种出现的中短期效 应,Java 的编程复杂度并没有明显的降低,I/O 处理、并发/并算,以及 类加载等等。再者是 Java 与操作系统之间的交互仍不够充分,尽管 Java 9 开始提供了不少 的 API,然解和使群体不Java 在这明显不及 GO 语 从语看,Java 正在向主流Java 语合,解决其中鸿沟的起就是语法的变 化,Java 8 的 Lambda 表达式 和 Java 10 的局部变量类型( var )等。个为这是 好事,未来前后端不分家,相互渗透,对于彼此语是良性发展。 除此之外,个较期待的是 GraalVM 对 Java 的改变,传统 Java 应须依赖 JVM 进程 加载字节码后解释执保证所有的代码能够在运编程完成,不免有运编译所 带来的性能开销,从响 JVM 的启停时间,简单地说,这种不够 Native,对于云原 或许不够友好。如果未来 GraalVM 的社区版也能够像 OpenJDK 那般“亲,那么,Java 的 变化将是颠覆性的。 微服务相关: 请介绍您的企业是否进微服务实践果是,在整体系统架构中的是多少果不是,是 否有相关计划 您所采主要微服务框架是什么何判断国内该领域的技术发展情况认为微服务主流框架 的争夺是否尘埃落定 您如何看待Service Mesh在国内的发展现状和发展前景 参与专家: 哥(@mercyblitz),《Spring Boot 编程思想》作者、Apache Dubbo PMC 和 Spring-Cloud Alibaba Architect 1. Oracle Java SE Support Roadmap – https://www.oracle.com/technetwork/java/java-se-support-roadmap.html 2. Java Performance Tuning News August 2019 – http://www.javaperformancetuning.com/news/news225.shtml 3. Reactive Streams JVM – https://github.com/reactive-streams/reactive-streams-jvm 4. Jakarta EE – https://jakarta.ee/ 5. Java Community Process – https://jcp.org/en/home/index 6. JSR 330: Dependency Injection for Java – https://jcp.org/en/jsr/detaild=330 7. Eclipse Foundation – https://www.eclipse.org/org/foundation/

转载于:https://www.cnblogs.com/MrZhouZ/p/11580474.html

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树使用JDBC操作数据库数据库操作91437 人正在系统学习中 相关资源:火凤凰软件安装包封装大师8.56中文已注册版本.exe_火凤打包…

来源:au2171

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年8月21日
下一篇 2019年8月21日

相关推荐