目录

程序员子悠 · 好记性不如烂笔头

技术人生 X 人生技术

存档: 2017 年 10 月 (4)

记一次与Kafka大神的交流

背景 线上某项目有三个实例同时从Kafka集群某topic消费数据,该topic有六个分区,每个实例的代码都是一样,都是开线程去消费数据。项目中数据消费下来会生成一个文本文件,之前由于没有部署多实例,所以只会生成一个文件,前段时间考虑国庆期间数据量会增大,就部署了多实例,今天发现并不是每个实例都生成了文件,只有一个实例正常生成了文件,另外两个实例都没有生成文件,实例状态都是正常的没有任何问题。 分析 今天发现问题的时候,我觉得很奇怪,理论是不应该会出现这个现象的。但是最后突然想起来每个实例开的是六个线程。这就能解释了,因为Kafka同一个topic的最大并发数是不能超过分区数量的。也就是说该topic有六个分区,最多也就只能有六个线程去消费,三个实例,每个实例六个线程,就是18个,必然有两个实例是消费不到数据的。 问题 那么就有一个问题了,那就是为什么刚好是第一个实例能消费数据,剩余的两个实例却没有消费到呢? 请教 发现了问题那么接下来就是解决问题了,自己解决不了,那自己就是找专业人士。经过在Kafka中国社区群里有人给了回答。 之所以第一个实例能消费数据,剩余两个实例消费不到数据,是....

《硅谷革命——成就苹果公司的疯狂往事》读后感二

“如果你不知道怎么满足用户的需求,那么就给他们自我满足的条件” 作为一个终极美学总监,乔布斯对产品总是有着无比的挑剔。 在Macintosh桌面装饰小程序还没有正式开发的时候,Chris Espinosa用QuickDraw画了一个自己认为还不错的计算器,没想到拿个乔布斯看的时候,乔布斯却说道:“嗯,这只是一个开始,但基本上,它蛮丑的。背景颜色太暗了,有些线条粗细不对,按键也太大了。”单纯的Chris说他会继续改,直到乔布斯满意为止。 咦,怎么感觉这几句话这么熟悉,难道全世界所有的产品经理都是这些套路吗? 对于Chris的每次修改乔布斯都能挑出新的毛病。最后Chris不再修改了,而是提供各种组件,让乔布斯自己挑选线条的粗细、按键的大小、背景图案等。这样乔布斯在试了十几分钟后终于找到了自己喜欢的风格,设计了一款自己喜欢的样式。最后在实现计算器的时候就采用了乔布斯的设计,作为标准计算器一直沿用到OS 9。 就是这么机智的程序员,你行你上吧。嗯,又学了一招,以后有机会就这样跟产品说,不过现在用不上,没办法,老大自己是产品。。。

《硅谷革命——成就苹果公司的疯狂往事》读后感一

最近在阅读一本关于苹果公司早期产品Macintosh的书,这本书并不是介绍这个产品的功能,而是介绍这个产品创造过程乔布斯与团队工程师之间发生的一系列故事。 有原本计划下周一完成的任务,工程师们却在周五晚加班到8点,完成demo,就因为乔布斯说如果能在周五晚上就完成的话,他请客吃披萨。 有不想在印名片的时候挂个"xxx资深技术员"的头衔,给自己取名"软件术士"、"硬件精灵"、"开拓者"。。。 有在遇到车祸后对警察说"帮我打电话给Larry Tesler,告诉他我开会会迟到",然后。。。就昏迷了的Bill。 ... 经得起生命考验的专注 那个时候的Macintosh团队成员在乎的不是金钱,不是头衔而是单纯的热爱技术,喜欢自己动手去实现一个产品的从无到有,单纯的沉浸在自己技术的世界里不带有一点点杂质。 书中提到有次一些经理决定使用工程师每周编写的代码行数来跟踪他们的进度,通过每周五让工程师们提交一个表格,里面有一项就是记录这周的代码行数。Bill在优化了QuickDraw的区域计算功能后代码减少了2000行,所以最后他写上了-2000,最后的结果就是经理再也不用他提交代码行数了。。。 无疑不....

Python学习笔记一

python3 笔记一 Python输入input()函数 name = input('please input your name:') Python还允许用r''表示''内部的字符串默认不转义 print(r'\\t\') Python允许用'''...'''的格式表示多行内容 >>> print('''line1 ... line2 ... lin33''') line1 line2 lin33 Python 精确除法用‘/’,取整除法用‘//’,取余用‘%’ >>> 10 / 3 3.3333333333333335 >>> 10 // 3 3 >>> 10 % 3 1 >>> 11 // 3 3 >>> 11 // 2 5 >>> Python编码函数ord(),chr() >>> ord('A') 65 >>> ord('中') 20013 >>> chr(66) 'B' >&g......