Apache Beam的KafkaIO与Flink实战实例详解

Apache Beam简介

Apache Beam是大数据的编程模型,定义了数据处理的编程范式和接口,它并不涉及具体的执行引擎的实现,但是,基于Beam开发的数据处理程序可以执行在任意的分布式计算引擎上,目前Dataflow、SparkFlinkApex提供了对批处理和流处理的支持,GearPump提供了流处理的支持,Storm的支持也在开发中。

综上所述,Apache Beam的目标是:

提供统一批处理和流处理的编程范式
能运行在任何可执行的引擎之上

为无限、乱序、互联网级别的数据集处理提供简单灵活、功能丰富以及表达能力十分强大的SDK。

在本文章中,将详细介[……]

继续阅读

Centos7下gitlab的安装步骤详解

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

1. 安装Gitlab

1.1. 新建tsinghua.repo

vim /etc/yum.repos.d/tsinghua.repo

输入以下内容

[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

1.2. 缓存相关包

yum make[......]

继续阅读

Redis集群安装文档

安装java环境

rpm -ivh jdk-8u112-linux-x64.rpm

配置环境变量

JAVA_HOME=/usr/java/jdk1.8.0_112
JRE_HOME=/usr/java/jdk1.8.0_112/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME

安装redis

下载redis并解压

cd /data/cluster/redis/
mkdir download
cd download/
wget http://download.redis.io[……]

继续阅读

使用Markdown快速书写技术文档

背景介绍

在设计和开发公司某项目的过程中,通过与同事交谈,了解到目前使用Word作为主要的技术文档制作工具,有以下使用难点

  1. 排版困难,比如:标题、有序列表的调整,都很繁琐,效率低
  2. 格式方面,比如:给代码加语法高亮,Word支持很差。如果截图贴到文档里,易用性、可编辑性都比较差

针对上面的痛点,现在更流行使用MarkDown来书写文档。再配合一些编辑器(比如:Typora),可以很好的解决上面的问题。

Markdown简介

Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。

Markdown具有一[……]

继续阅读

对研发团队里技术分享的一些思考

本文来自: https://www.iteye.com/blog/aoyouzi-2342659

分享目的

做任何事情,要明确目的,才能清晰、顺利实施。目的包括这件事能帮大家带来什么、能给公司带来什么、预期结果是什么、成长又是什么等等。我从公司、团队、个人三个维度,总结了以下五点目的。我会对每一个同事讲述这五点目的,确保大家目标一致:

  1. 学习新知识,完善自我体系
  2. 提升沟通能力、表达能力、自信
  3. 有效提升工程师在专业领域的经验
  4. 解决工程师最常见问题——技术瓶颈
  5. 项目技术推进,如框架、性能、工具等

需要让所有参与人明确分享目的,特别是新人,不要只关注自己付出的代价 , 以及计算别人分[……]

继续阅读

ExecutorService的正确关闭方法

转自:https://blog.csdn.net/xueyepiaoling/article/details/61200270

虽然使用ExecutorService可以让线程处理变的很简单,可是有没有人觉得在结束线程运行时候只调用shutdown方法就可以了?实际上,只调用shutdown方法的是不够的。我们用学校的老师和学生的关系来说明这个问题。

shutdown只是起到通知的作用

我们来假设如下场景:
学校里在课上老师出了一些问题安排全班同学进行解答并对学生说“开问题解答完毕后请举手示意!”
如果有学生解答完毕后会举手对老师说“老师我做完了!”,如果大家都解题完毕后上[……]

继续阅读

Java代码注释TODO FIXME XXX的意义

特殊注释

TODO

表示需要实现,但目前还未实现的功能

如果代码中有该标识,说明在标识处有功能代码待编写,待实现的功能在说明中会简略说明。

XXX

勉强可以工作,但是性能差等原因

如果代码中有该标识,说明标识处代码虽然实现了功能,但是实现的方法有待商榷,希望将来能改进,要改进的地方会在说明中简略说明。

FIXME

代码是错误的,不能工作,需要修复

如果代码中有该标识,说明标识处代码需要修正,甚至代码是错误的,不能工作,需要修复,如何修正会在说明中简略说明。

[……]

继续阅读

读《20多家倒闭企业 假装高逼格的公司都死掉了》有感

事件心得概括

严厉和高要求是为员工好,是有助于员工成长,更能为公司创造高价值

文章中提到“别再对制度进行宽容,别再对员工进行宽容。这是对员工未来的最大不负责。”,我对此有一些体会,对员工严厉和高要求,有助于员工成长,而员工是公司巨大的财富。只有员工成长了,员工自身可以争取更好收入,才能给公司带来更多价值,这是一种双赢。

我在之前公司遇到过这样的一些领导和同事,我的感觉是他们不想得罪人,或者不想培养人,对自己的下属也没什么要求。这样虽然不会有冲突和矛盾,看似一片“祥和”,这样的领导个人能力可能很强,但是从工作职责来说是不合格的。因为对于员工来说得不到锻炼的机会,慢慢就会失去工作[……]

继续阅读

读傅盛《认知三部曲》有感

事件心得概括

不断想学习,想了解,去反思

不知道自己不知道是很可怕的。如果能够知道自己的不足,有了更深层次的认知,我们能够做的更好。 
通过读这篇文章,使我对工作、专业技能等有了更深入的认识。

  1. 加强对行业的了解。如果密切关注行业发展,行业动态,就会获得许多信息,再通过思考,可以提高自己的行业理解。
  2. 走出去,看一看,多学习。走出去,带领团队的核心员工参加一些技术沙龙或技术峰会等,可以开拓视野。
  3. 借鉴别人的一些经验,不能闭门造车。而且要求写参会心得等文章。这些都是我们部门要加强的地方。
  4. 没有做不到的,只有想不到的。这句话当然不是说能想到就一定能做到,我的理解是:只要有了想法,才[……]

    继续阅读