前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个技术人原地爆炸,并反撸不懂GraphQL的马斯克

一个技术人原地爆炸,并反撸不懂GraphQL的马斯克

作者头像
35岁程序员那些事
发布2023-01-05 16:13:40
6710
发布2023-01-05 16:13:40
举报
文章被收录于专栏:35岁程序员那些事

刚刚正式掌管 Twitter 不久的马斯克对公司进行了大刀阔斧的裁员,从他近日发表的推文来看,很显然他对此决策颇为满意,直言 “Twitter 越来越充满活力”。

但与此同时,马斯克旁敲侧击地对 Twitter 的开发团队 “批判” 了一番。他表示自己为 Twitter 在许多国家的极慢运行速度感到抱歉。之所以如此慢是因为 App 需要执行 1000 多个 “糟糕” 的批处理 RPC,而这只是为了渲染主页的时间线。

Twitter 技术主管转发了马斯克的这则推文,并回击道:“你不仅裁掉了几乎所有负责 Twitter 基础设施的员工,现在还粗鲁无礼地评价我们的批处理工作。” 最后还质问马斯克是否有去了解过 GraphQL 的工作原理。

事实上,这位女性主管早已表达过对马斯克的不满,且看她的置顶推文。她的推特名字更是在内涵马斯克掌管下的 Twitter 是一个 "hell site"。

这里简单的给大家普及一下GraphQL,GraphQL 是一个用于 API 的查询语言,也是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。GraphQL 并没有和任何特定数据库或者存储引擎绑定,而是依靠你现有的代码和数据支撑。

GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让 API 更容易地随着时间推移而演进,还能用于构建强大的开发者工具。

大家可以访问GraphQL的官网https://graphql.org/或者github的地址https://github.com/graph,都可以找到第一手学习GraphQL的资料。

正如官网所说,GraphQL是一款专门为前端查询而生的语言,它本身就是用来解放前后端接口联调工作的提效工具,那当然也包括推特的APP,也可以利用它来提高开发效率,也就是说Twitter的技术主管已经在自己的项目中落地了GraphQL,但是只是多发送了几次RPC请求,导致性能太差和开发效率变低,就被老板马斯克骂了,当然这个无可厚非,因为老板看中的是结果。

在国内GraphQL还没有完全的用起来,当然Apache Skywalking为了提高链路数据输出的效率,直接采用GraphQL,并输出了GraphQL标准的API,这样可以大大的减少前端UI和平台的联调成本,主要是因为后端的数据接口的逻辑会经常变动。

GraphQL之所以很难在中国落地,主要还是因为它不是Spring生态的组件,现在但凡是一个采用Java作为开发语言的公司,都在使用Spring框架,并且也会使用它提供的Web编程技术,比如Spring Web和Spring MVC,并且自己的服务已经和Spring强耦合了,这样就可以直接使用Spring生态的各种组件,当然这个也是提高效率的一种方式。

但是问题在于Spring并不兼容GraphQL API,也就是说二者是隔离的,你要么使用裸奔的GraphQL API,而不要使用Spring提供的能力,这样你就要在GraphQL API的基础之上开发出以前Spring提供的各种能力,比如拦截器、AOP、事务等功能,很显然这个功能是服务必备的。

就是因为这个门槛,所以GraphQL在互联网企业很难落地,尤其是大厂,你就是为了节约前端和后端的联调时间和减少前端的开发工作量,需要后端做出这么多的技术改造,很显然是不划算的,老板肯定不允许你这么干。

一个老板懂不懂技术没关系,老板看重的是结果和收益,也就是叫你这周必须要完成产品的上线,你没有上线,那就是你的问题。至于你采用什么样的技术去实现,他根本不会关心的。

当然Twitter的这个技术主管确牛逼,他做了咱们底层的一线技术人员敢怒而不敢说的事情。

技术人员本身就是要关注技术层面的事情,这个是你的本职工作,假如你的老板都过来要参与你的技术方案的评测了,那么只能说明“要么你不称职,要么就是老板管的太多”。

当然马斯克的这次事件很显然是后者,不过人家马斯克是物理博士,从他的角度去看,肯定会觉得写代码不是很简单的事情吗?毕竟人家收购Twitter之前,自己从0-1创建了特斯拉、SpaceX、人工智能、超级高铁等公司。

并且美国最早的支付公司PayPal就是马斯克觉得不好玩了,直接将它卖给了亚马逊,要不然哪有现在的淘宝和支付宝,也就是说咱们的淘宝和支付宝其实是抄袭人家马斯克的商业模式,这个是有资料可以查询的,而不是我在这里瞎歪歪的。

假如我们碰到了这么强势的老板,并且老板确实是像神一样的存在,那么我们该怎么办了。

作为打工人的我们当然只能是顺从老板的意思了,他想怎么玩我们只能陪着他玩,谁叫人家是神呢?是不是这个道理。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-11-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 架构随笔录 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CLI 工具
云开发 CLI 工具(Cloudbase CLI Devtools,CCLID)是云开发官方指定的 CLI 工具,可以帮助开发者快速构建 Serverless 应用。CLI 工具提供能力包括文件储存的管理、云函数的部署、模板项目的创建、HTTP Service、静态网站托管等,您可以专注于编码,无需在平台中切换各类配置。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档