Attic 在wikipedia中译为“阁楼”。 近两年进入attic的apache项目有不少:sqoop,ambri… 什么时候项目会进入attic? PMC决定不在维护了,或者ASF建议PMC将项目移进attic。 新技术不断涌现,替代者的出现是这些项目逐渐成为历史的直接原因。例如sqoop被datax、flink或spark(seatunnel)数据集成平台、kafka connect所替代。 结语 花无百日红,软件项目的生命周期也一样。优胜劣汰,自然社会进化的亘古不变的规律。
使用了stackoverflow.com这么久,还没有登陆过,一直匿名。上周看了一个问题,很想一起解答一下,使用google账号登陆了,很方便。 刚开始没什么不同。当post完一个回答。我的个人头像下方出现了一个字样“new contributor”。好奇地点开头像,发现一会多了一个badge,editor。脑神经一会兴奋了起来。 当第二天回答第二个问题时,尝试首先自己在脑袋里用英语回答,然后借助谷歌翻译看机器翻译的回答。这个过程还挺有趣,弥补了自己英语只读不写不会表达的短板,慢慢地捡起来一些表达方式。 点滴帮助,可以让你自己在人群中慢慢发光。 借助国外问答平台,一方面可以巩固输出自己的知识,一方面可以提升自己的英语表达水平。
kafka有自己的rpc协议,即nio bytebuf中的数据格式,详见之前的kafka相关介绍的文章。这里我们来看一下大家常用,有时又疑惑的序列化反序列化,对应rpc协议中的records,kafka叫Serdes,实际上也是字面上的意思serialize and deserialize。在程序中序列化就是toBinary,反序列化是fromBinary,存储和传输都是用二进制。 通过以上描述,我们知道序列化和反序列化的作用。我们来看kafka的实现。Serdes工厂类,和提供基本数据类型序列化。 一、先看基础的抽象 interface:Serializer 包括 configure,例如配置ChartSet字符集,serialize,序列化。 interface:Deserializer 同理。 再来看包装接口:Serde 指定了serializer和deserializer。 二、 实现类,以Serializer为例 提供了几大应用的实现,分别是common,connect,stream,也即对应了kafka一般场景、kafka抽数场景如debezium,kafka stream原生流计算。我们看common,主要是实现了基本的数据类型的序列化,举两个例子,Long和String。 从上我们知道实现Serialize类,主要做了toBinary动作。 三、包装类,工厂方法 这里看WrapperSerde 为静态内部类,有一批子类: 看其中一个常用的StringSerde 引入String序列化类和反序列化类。
上一篇,聊到mysql的timezone问题。我们一起看看js的Date类型是否有时区的问题。 记住一点:js 的new Date()使用的是utc时间,即比GMT+8少了8小时。所以当我们用一些控件,需要初始化设置时间时,注意会有时区的问题。 如果直接用console.log(new Date())可以看到是UTC时间。 怎样获取正确时区的时间呢? 1、date.getFullYear()等方法,会默认使用浏览器的时区进行时间获取,即以用户所在时区为准。这样就解决了时区问题。 2、更多定制化的timezone,或复杂的时间计算,可以考虑使用moment.js等工具库。 开发中,为什么我们不用考虑时区问题? 幸运的是,开发过程中,大多数的日期时间控件都支持指定value format,即时间的格式。例如el-date-picker,指定value-format=’yyyy-MM-dd’。当这样指定的时候实际上,控件已经帮你做了一件事。类似用如下的js表达: [date.getFullYear(), date.getMonth() + 1, date.getDate()].join(‘-‘).replace(/(?=\b\d\b)/g, ‘0’)
jdbc url时指定serverTimezone,是会话timezone,数据查询与写入以该timezone为准,默认为UTC,比我国的GMT+8少8小时,也可以在mysql server配置中设为指定的timezone。 会话timezone在哪起作用? 三种时间数据格式: 1、datetime 以当前timezone写入,不存储timezone信息,写的时候是gmt+8,读的时候不清楚写时用的是utc还是gmt+8,看会话timezone的值为准,所以读写需要保持timezone一致才不会出错。 2、timestamp存1970年以来的时间戳,相当于可以根据timezone生成不同的日期时间。 3、存成长整型bigint,和timestamp类似,只是查库时,需要用函数转换,可读性不如timestamp。 结语 一般应用,为了读写不受时区影响,我们会存timestamp或长整型。而datetime可以用于那些不需要国际化的应用。
作者:徐志摩 假如我是一朵雪花, 翩翩的在半空里潇洒, 我一定认清我的方向 飞扬,飞扬,飞扬, 这地面上有我的方向。 不去那冷寞的幽谷, 不去那凄凉的山麓, 也不上荒街去惆怅 飞扬,飞扬,飞扬, 你看,我有我的方向! 在半空里娟娟的飞舞, 认明了那清幽的住处, 等着她来花园里探望 飞扬,飞扬,飞扬, 啊,她身上有朱砂梅的清香! 那时我凭籍我的身轻, 盈盈的,沾住了她的衣襟, 贴近她柔波似的心胸 消溶,消溶,消溶 溶入了她柔波似的心胸! 读工大的微信公众号信息《假如我是一朵雪花*》有感 Allen,2022年春,厦门。