摘要:
ARTS 是左耳朵耗子发起的一项打卡活动,每个人每周至少一个 Algorithm,Review 一篇英文文章,总结一个工作中的技术 Tip,以及 Share 一个传递价值观的东西。我非常认同这些行为的价值,决定参与,计划坚持至少一年,看看能带来什么改变。这是第一周内容,花了不少时间,但是它至少解决了 阅读全文
摘要:
问题场景 Flink SQL 是一种使用 SQL 语义设计的开发语言,用它解决具体业务需求是一种全新体验,类似于从过程式编程到函数式编程的转变一样,需要一个不断学习和实践的过程。在看完了 Flink 官方文档中 SQL 部分 ,以及官方提供的 SQL Training 后,觉得自己装备了必杀技准备横 阅读全文
摘要:
上文分析了 SQL 作业提交流程和实现思路,即通过 SQL Client 管理和创建 TableEnv、设置各类信息、调用 sqlUpdate、最后复用 SQL Client 的提交作业逻辑。现在需要将该过程进行细化,并考虑如何实现 SQL 校验和调试功能。 一、作业提交步骤细化 首先,作业提交作为 阅读全文
摘要:
上文提到构建平台需要实现一个更好的提交流程,具体目标是将 SQL 任务相关内容,如 SQL 、DDL、UDF、配置内容等信息作为参数,调用提交API就能在目标集群创建任务。 一、分析提交作业流程 首先借由官方文档中的整体角色流程图,可以看出左侧一部分 Flink Program 其中包括用户程序代码 阅读全文
摘要:
一、理想与现实 Apache Flink 是一个分布式流批一体化的开源平台。Flink 的核心是一个提供数据分发、通信以及自动容错的流计算引擎。Flink 在流计算之上构建批处理,并且原生的支持迭代计算,内存管理以及程序优化。 实时计算(Alibaba Cloud Realtime Comput 阅读全文
摘要:
背景介绍 JSF(京东服务框架,类似dubbo)默认配置了可伸缩的最大到200的工作线程池,每一个向外提供的服务都在其中运行(这里我们是服务端),这些服务内部调用外部依赖时(这里我们是客户端)一般是同步调用,不单独限制调用并发量,因为同步调用时会阻塞原服务线程,因此实际上所有外部调用共享了JSF的2 阅读全文
摘要:
基于面向对象和各种设计要求,一个分层的Java系统中存在各种 VO、DTO、BO、PO 之类的对象,同一个实体的不同对象需要大量的属性复制,为了避免手动操作,需要一种便捷对象浅复制工具类,下面是各个常见工具对比。 列举 原理 以上4种方式都是通过自动调用原对象的getter方法,再用目标对象的set 阅读全文
摘要:
Java垃圾回收手册翻译 什么是垃圾回收 初看之下,垃圾回收应该要做其名称之事 找到和丢掉垃圾。然而事实上它正好做着相反的事,垃圾回收会记录所有仍在使用中的对象,然后将其他标记为垃圾。谨记这点,我们开始挖掘更多Java虚拟机如何实现被称为垃圾回收的自动化内存回收过程的细节。 为了避免一头扎进细节,我 阅读全文
摘要:
优化背景 当前生产环境机器配置为4核8G,默认JDK版本1.6,堆内存2G 2.7G,未充分利用硬件资源 由于JDK版本为比较老的1.6,使用一些第三方依赖时会遇到新版本不支持的问题 当前使用默认的Parallel Scavenge(吞吐量优先)收集器,运行一段时间后Full GC为几百毫秒级别,同 阅读全文
摘要:
在学习和实践虚拟机相关知识的过程中,经常会疑问某个特性在我现在用的版本中启用了么,需要手动配置启用么?当前虚拟机有700项左右的配置参数,不同版本和模式的虚拟机默认值也是不同的,不论是查文档或是网上搜索都很难快速的找到答案,最好的办法就是自己动手寻找答案。 虚拟机类型 在只考虑Oracle的HotS 阅读全文