“根本就不需要 Kafka 这样的大型分布式系统!”

由 Scala 和 Java 编写的 Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据,不过,Kafka 也存在数据并非真正的实时传输、不支持物联网传感数据直接接入、监控不完善等缺点。事实上,作为开发者,在项目中通常会视情况而定地去选择适用的技术架构,而并非所有相关的架构就适合自己,在本文中,作者基于特定的项目及场景强烈地表达了对 Kafka的不满,而这究竟是何原因导致的?

640?wx_fmt=jpeg

作者 | Normcore Tech

译者 | 弯月,责编 | 屠敏

出品 | CSDN(ID:CSDNnews)

以下为译文:

可能有人没有听说过Kafka,这是一个非常复杂的分布式软件,可协调多台计算机之间的数据传输。更具体地说,该软件的功能是“展平”数据,然后快速地将数据从一个地方移动到另一个地方。一般来讲,如果你有很多数据需要快速处理并发送到其他地方,那么就可以考虑一下Kafka。Kafka还可以在一定期限内保留数据,比如设置数据保存2天、3天或7天,如果你的下游流程失败,那么你还可以利用存储在Kafka中的数据重新处理。

许多处理汇总数据的公司(比如Facebook和Twitter等社交网络数据,以及每晚需要处理大量星体运动的天文学家,或需要快速了解车辆周围环境数据的自动驾驶车辆公司等)都在使用Kafka,将任意地方生产的数据(即用户通过键盘输入的数据,通过望远镜读取的数据,通过车辆遥测读取的数据等)移动至下游流程进行处理和分析。

最近,WeWork更为名The We Company,他们在共享工作间领域取得了成功,其官网宣称公司的使命为:

“提升世界的意识。”其核心业务是从房地产出租公司那里租下办公室,然后转租给无法按照传统流程租赁办公室的个人和小公司。

为了“提升世界的意识”,该公司致力于为世界各地的个人和公司的团队打造独特却又不完全相同的办公空间。最近,该公司还开始涉足教育。

最近,因为上市,WeWork曝光了一些财务信息:

WeWork的收入从2017年的8.86亿美元增加到2018年的18亿美元,大约翻了一番,而净亏损达到惊人的19亿美元。对于即将上市的公司而言,这个数字可不怎么好看;然而也有先例,优步的增长萎缩依然未能阻碍其完成一场备受关注的公开募股。以下是Crunchbase新闻报道的WeWork财务报告:

  • 2017年WeWork的收入为:8.86亿美元

  • 2017年WeWork的净亏损为:9.33亿美元

  • 2018年WeWorks的收入为:18.2亿美元(+ 105.4%)

  • 2018年WeWork的净亏损为:19亿美元(+ 103.6%)

从好的方面来看,根据Axios的数据,2018年WeWork的入住率为90%,且会员总数在不断增加。

有人常常将WeWork视为硅谷地区的公司过高估值的完美例子。作为一家房地产企业,WeWork烧钱的速度非常快,毫无疑问他们必须努力让公众市场投资者相信公司有长远的发展,同时和还要维护其作为科技公司的地位。

这家公司再三强调说它不是一家房地产公司(毕竟它在不断烧钱对吧?),那么一家消息中介技术公司究竟能提供什么?WeWork曾宣布,它使用Kafka来实现“内部部署的物联网需求”。这是什么意思?

“我们的产品是物理空间,”WeWork的首席开发负责人David Fano说,他在会议期间穿着一件印有“bldgs = data”字样的T恤。

每个办公室都有10个环境传感器——小巧的壁挂式绿色盒子,这些传感器可跟踪室内温度、湿度、空气质量、气压和环境光线水平。还有20个白色的壁挂式信标,呈三角形分布在公共空间(开放式办公区和会议室),用于测量WeWork成员的室内位置(数据是匿名的)。顶部四分之一的传感器通过计算机视觉观察成员的活动。 

换句话说,WeWork会跟踪WeWork的多个物理事件并记录所有这些数据。但是......他们真的有必要这样做吗?记录Keith Harring壁画周围开放区域的环境温度能给他们带来怎样的竞争优势?更重要的是,他们能否将这些信息用到重要的项目中?

由于WeWork的资金主要来自订阅,特别是来自企业的订阅,因此为这些客户优化空间是有意义的:

对于公司而言,重要的是要了解办公室的“单位组合” ——私人办公室、会议空间和开放式办公桌——的比例,我们可以利用这些信息对下一个办公间作出调整。

我觉得这家新闻报道机构需要建立一种思考技术的心理模型。Ben Thompson为Stratechery提供了出色的服务,他建立了聚合理论(https://stratechery.com/concepts/),我在努力为这些理论建立一个网站,如果必须从中选择一个的话,那便是:

大多数创业公司(以及大公司)现有的技术栈都没有必要。

在此,我想挑战一下那些自认为可以在一个周末期间独自建立Facebook的Hacker News上的开发人员,我认为WeWork的实际业务和架构问题在于:

WeWork需要的只不过是清点进出的人数,然后对容量规划做优化而已,追踪“气压”有什么用?只要你有WeWork的ID,那你肯定是个人或公司。那么,在大堂里安装一个登记系统,并要求会议系统发放名牌,不是更简单吗?

第一项要求根本就不需要Kafka: 

目前WeWork有280个办公间。假设每个办公间平均每天有1000个(有这么多吗?)成员出入。那么每天会产生280,000个事务。我们假设每个人在早餐时间进来一次,在午餐时间出入各一次,然后离开。那么每个人会产生4个事务。那么每天大约是100万个事务,这点数据量存储在最常用的开源关系数据库Postgres中就可以了。保守地说,Postgres每秒可以提供10,000次写入(如果设置得当,其写入次数会更高)。每天100万个事件,也就是每秒11次。根本就不是问题。

至于第二项要求,受预订会议室人数的影响,产生的数据量可能更高,但你不需要实时传输数据。你完全可以等到一天结束时批量处理或收集,这同样可以利用司空见惯的关系数据库。 

与大型Postgres(或者是BigQuery,或选择其他关系数据库连接到接收JSON传感器数据的Web服务)相比,Kafka的日常开销要高出很多,因为分布式系统非常非常复杂,比传统的系统复杂得多。

Kafka是一个非常优秀的强大的工具,但各个公司在采用该软件时,需要三思而后行。杀鸡焉用牛刀,WeWork用Kafka来记录开放办公间的气压,实属大材小用。 

虽然很多时候我们都不需要Kafka,但开发人员很喜欢推荐这个工具,因为他们可以借机积攒经验和谈资。开发人员喜欢用最尖端的技术来完成工作,有时甚至他们自己都没意识到这一点。

过度架构真实存在。Nemil在一篇文章中说:

在职业生涯的早期,你遇到的大量设计不良的软件系统都要归咎于那些传播错误观点的工程媒体。

在大学和培训班中,你对工程的了解主要来自工程媒体,例如 Hacker News、聚会、会议、Free Code Camp和Hacker Noon等。这些网站广泛讨论的技术(比如微服务、前端框架或区块链)自然会现在你的技术栈中,虽然不是很必要。

使用这些技术栈会导致各个公司承担不必要的债务,导致他们不得不在风险投资周期中寻求更多的资金,无法迈向精益或从别人的资金中解脱出来。

这种不幸的趋势只会持续下去,我们唯一能做的就是公之于众。

640?wx_fmt=png

640?wx_fmt=jpeg

福利

扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!

640?wx_fmt=jpeg

推荐阅读:

  • 上万条数据撕开微博热搜的真相!

  • IT公司老板落水,各部门员工怎么救??

  • HTML 30 年进化史

  • 读了鸿蒙 OS 的代码后,我发现优秀项目都有这个共性!

  • 字节跳动李航:自学机器学习,研究AI三十载,他说AI发展或进入平缓期

  • 主链增幅最高飚至152%,主流币却惊现回落;以太坊发币速度持续放缓

真香,朕在看了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/522271.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一份关于机器学习中线性代数学习资源的汇总

摘要: 本文是一份关于机器学习中线性代数学习指南,所给出的资源涵盖维基百科网页、教材、视频等,机器学习从业者可以从中选择合适的资源进行学习。对于机器学习而言,要学习的特征大多数是以矩阵的形式表示。线性代数是一门关于矩阵…

Linux环境_源码安装Unoconv实现文件在线预览doc,doxc,xls,xlsx,ppt,pptx 文件

因业务需求需要,用unoconv就可以轻松地实现利用LibOffice可以打开的文档的转换。 服务器版本 环境系统版本LinuxRed Hat Enterprise Linux Server release 7.6 (Maipo)LinuxCentOS Linux release 7.6 需要准备软件包 软件及版本下载链接LibreOffice_6.3.2_Linux_x…

车纷享:基于阿里云HBase构建车联网平台实践

摘要: 1. 业务介绍 车纷享是国内首家进行汽车共享开发和运营的公司。旗下共享汽车平台采用新能源汽车作为运营工具以B2CC2C汽车共享作为商业运营模式采用车联网技术作为运营管理技术目前已与国内多个城市建立合作。 1. 业务介绍 车纷享是国内首家进行汽车共享开发和…

promise用法_图解 Promise 实现原理(四):Promise 静态方法实现

作者:Morrain转发链接:https://mp.weixin.qq.com/s/Lp_5BXdpm7G29Z7zT_S-bQ前言Promise 是异步编程的一种解决方案,它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。更多…

这本零差评且有趣的Python算法书有点火~

普通程序员,不学算法,也可以成为大神吗?对不起,这个,绝对不可以。可是算法好难啊~~看两页书就想睡觉……所以就不学了吗?就一直当普通程序员吗?如果有一本算法书,看着很轻松……又有…

QuickBI助你成为分析师——数据源FAQ小结

摘要: 添加数据源的时候经常会遇到各种问题,下面来讲解一下常见情况,若仍有疑问扫码咨询哦! 使用 Quick BI 分析数据时,需要先指定原始数据所在的数据源,测试连通数据源是数据分析的基础,下面让…

库函数strcmp的模拟实现

strcmp是字符串之间的比较&#xff0c;看官方说明 前面字符串大于后面的字符串返回大于0的数字&#xff0c;相等返回0&#xff0c;前面的字符串小于后面的&#xff0c;返回小于0的数字 strcmp的模拟实现 #include<string.h> #include<stdio.h>int my_strcmp(cons…

5种最流行的AI编程语言

摘要&#xff1a; 有没有兴趣来了解更多与AI开发有关的内容&#xff1f; 本文将介绍创建AI程序时可以使用的5种最佳语言。有没有兴趣来了解更多与AI开发有关的内容&#xff1f; 本文将介绍创建AI程序时可以使用的5种最佳语言。PythonPython语法简单&#xff0c;功能多样&#x…

VSFTPD实战02_需求

文章目录一、常用命令&#xff08;Linux&#xff09;二、 需求案例三、思路分析四、coding实战&#xff1a;① 创建ftp用户test 指定目录为/home/test② 为test设置密码③ 切换用户&#xff0c;查看目录五、限制用户目录① 编辑配置文件② 在/etc/vsftpd/目录下面&#xff0c;新…

axure web组件_AXURE原型设计:移动端选择器的应用

移动端的选择器就好比是web端的下拉列表&#xff0c;可以说是每个系统、软件必备的组件&#xff0c;也是移动端元件库的必备元件&#xff0c;文章对移动端选择器的不同种类以及原型应用进行了梳理分析&#xff0c;与大家分享。一般而言&#xff0c;移动端的选择器分为单选选择器…

Storm精华问答 | storm与Hadoop有什么区别?

戳蓝字“CSDN云计算”关注我们哦&#xff01;归于Apache社区&#xff0c;Storm被业界称为实时版Hadoop。随着越来越多的场景对Hadoop的MapReduce高延迟无法容忍。而目前已是分布式技术领域最新爆发点&#xff0c;Storm更是流计算技术中的佼佼者和主流。今天我们就一起来看看Sto…

QuickBI助你成为分析师——搞定数据源

摘要&#xff1a; QuickBI支持多种数据源连接&#xff0c;添加数据源是数据分析展示的第一步&#xff0c;下面来详细介绍一下产品数据源支持情况&#xff01; Quick BI是一个基于云计算的灵活的轻量级的自助BI工具服务平台&#xff0c;提供海量数据即时分析 &#xff0c;拖拽式…

光动能表怎么维护_男士手表什么牌子好,男士手表品牌推荐, 天梭、阿玛尼、西铁城、天王表、罗西尼、卡西欧男手表推荐...

本文目录一、男士手表分类和选购看点&#xff0c;男士手表什么牌子好二、天梭、阿玛尼、欧米茄、天王表、罗西尼、卡西欧等大品牌爆款男士机械手表推荐三、天梭、阿玛尼、卡西欧爆款男士石英手表推荐四、西铁城光动能男士手表推荐五、华为、佳明智能运动手表推荐本文由钟灵原创…

“刚毕业1年,做Python挣了60W!”网友:吹的不多..

现状揭秘&#xff1a;Python岗位大厂50K起&#xff1f;程序员&#xff1a;心态崩了&#xff01;屠杀各种榜单&#xff0c;拿下语言排行榜的Python&#xff0c;薪酬真的如同网传开挂了吗&#xff1f;数据来自于职友集网站2019年7月8号从上图看&#xff0c;Python薪酬普遍集中在2…

区块链如何改变AI

摘要&#xff1a; 区块链和人工智能&#xff0c;这两种常常被误解的技术&#xff0c;它们怎样增强数据处理能力&#xff1f;本文将对其进行详细介绍。区块链被吹捧为一种新兴技术&#xff0c;它有可能对每个行业造成影响。区块链的分布式系统与当今使用的固有集中式操作系统相对…

库函数memcpy的使用

库函数memcpy是内存函数的拷贝&#xff0c;memcpy的函数参数如下 把源头的指针的值拷贝到目标指针的值中&#xff0c;拷贝是按字节拷贝的&#xff0c;使用方法如下 #include<stdio.h> #include<string.h> int main(){int arr1[]{1,2,3,4,5,6,7,8,9,10};int arr2[1…

大家常用的 IDEA 插件大推荐,个个都得安装!

代码生成 插件名称作用Easy Code代码生成&#xff0c;支持定制模板Codota智能提示.ignore生成各种ignore文件&#xff0c;一键创建git ignore文件的模板&#xff0c;免得自己去写lombok简化代码工具restfultoolkit精确搜索urlMaven Helper解决maven以来冲突GenerateAllSetter一…

全新一代人工智能计算引擎MaxCompute杭州开服,强化阿里云大数据能力,比肩谷歌微软...

摘要&#xff1a; 3月22日&#xff0c;阿里云将正式开服售卖华东1&#xff08;杭州&#xff09;节点的大数据计算服务MaxCompute&#xff0c;以进一步提升对华东区域客户服务的响应速度&#xff0c;推动杭州大数据、人工智能产业的加速发展。 日前&#xff0c;全球权威调研机构…

【实操手册】一篇文章教你快速开始使用视频点播

摘要&#xff1a; 阿里云视频点播&#xff08;VoD&#xff09;是集音视频采集、编辑、上传、自动化转码处理、媒体资源管理、分发加速、视频播放于一体的一站式音视频点播解决方案。 用户可以通过阿里云管理控制台进行基本和高级 VoD 配置、操作&#xff0c;还可以通过视频点播…

微服务架构到底是什么鬼?

戳蓝字“CSDN云计算”关注我们哦&#xff01;摘自《微服务架构设计模式》作者&#xff1a;&#xff1a;[美] &#xff08;Chris Richardson&#xff09;译者&#xff1a;喻勇 导语&#xff1a;微服务架构如何与更广泛的软件架构概念相结合&#xff1f;什么是服务&#xff1f;服…