Flink CDC胖包瘦包,指的是flink运行环境里面的依赖使用的吗?
是的,Flink CDC胖包和瘦包是指Flink CDC项目中各种connector的依赖管理方式。胖包是将所有需要的依赖都打包在一起,形成一个独立的jar文件,用户只需要在lib目录下添加该胖包即可。这种方式的优点是简化了依赖管理,但缺点是会增大jar文件的大小。瘦包则是将每个依赖都单独打包,需要使用时再通过classpath或者依赖注入的方式引入。这种方式的优点是可以减小jar文件的大小,提高部署效率,但缺点是会增加依赖管理的复杂性。
Flink CDC的"胖包"和"瘦包"指的是应用程序打包的方式,这与Flink运行环境的依赖有关。具体来说,“胖包”是将应用程序的所有依赖项都打包到单个JAR文件中,这样在本地运行时可以通过命令行直接运行。同时,这种打包方式也支持在集群环境下使用standalone模式运行。这主要是因为设定了classloader.resolve-order: parent-first,Flink框架本身的jar包由application classload加载,而我上传的jar包中的类,由custom classload加载。这三个jar包,跟flink核心类都不冲突。
另一方面,“瘦包”则是指只包含应用程序本身及其依赖项的JAR文件,这种方式可以使得应用程序更加轻量化,但需要确保所有依赖项都能在运行时找到。打瘦包采用的是spring boot提供的打包插件,启动采用的是java的cp命令来加载classpath。
是的,Flink CDC中的“胖包”和“瘦包”指的是在构建或运行Flink应用时所依赖的不同软件包。这些术语通常用于描述应用程序及其依赖项的整体大小。
胖包(Fat jar):也称为Uber jar或Shadow jar,它包含了应用程序本身以及所有必要的依赖项。这意味着你只需要部署一个包含所有内容的大文件,而不需要担心外部依赖问题。胖包的好处在于方便部署,因为所有需要的东西都在一个地方;缺点是文件较大,可能会影响启动速度和资源消耗。
瘦包(Thin jar):这种包只包含了应用程序本身的代码,而不包括任何依赖项。要运行瘦包,你需要确保目标环境已经安装了所有必要的库。瘦包的优点是文件较小,便于分发和管理;但缺点是需要额外的步骤来管理和配置依赖关系。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。