五十五张图告诉你微服务的灵魂摆渡者Nacos究竟有多强?

前言Nacos是阿里巴巴开源的服务注册中心以及配置中心,致力于给开发者提供一款便捷、简单上手的开源框架。Nacos究竟有什么惊人的地方呢?看下图:从上图不难看出阿里巴巴的野心,一个Nacos干掉了Spring Cloud的三大组件,分别是注册中心Eureka、服务配置Config,服务总线Bus。本文目录结构如下图:为什么Nacos这么受欢迎?Nacos官方...
📅 2023-08-14 阅读全文 →

我的很长(源码),你忍一下!

在MyBatis 3.5.1这个版中有968个类、2770个字段、8422个方法、42504行代码、186428个指令码。其源码体量只有Spring 的1/5,也是Hibernate的1/5。但在功能上这三个框架并无高低之分,但从源码轻量级来讲,MyBatis无疑是最成功的。这得益于Mybatis作者Clinton Begin 极简主义风格,以及恰到好处的设...
📅 2023-08-14 阅读全文 →

分布式存储系统可靠性:系统量化估算

作者:vivo互联网通用存储研发团队-Gong Bing一、引言我们常常听到衡量分布式存储系统好坏的两个指标:可用性和可靠性指标。可用性指的是系统服务的可用性。一般按全年可用时间除以全年时间来衡量可用性的好坏,平常我们说的 SLA指标就是可用性指标,这里就不展开细说。可靠性指标指的是数据的可靠性。我们常说的数据可靠性11个9,在对象存储中就意味着存储一千亿个...
📅 2023-08-14 阅读全文 →

小白如何快速绘制原型图

说到绘制产品原型图的工具,大家一定首先先到的是大名鼎鼎的“Axure RP”,或者在线协同的“墨刀”。它们的功能确实非常的强大,以至于很多产品经理可以做出还原度非常高的产品原型,不过能够熟练的够驾驭它们,还需使用者有不少的磨练。对于小型的团队(3-5人),特别是在没有专业的产品经理的情况下,大部分我们在接到产品的需求时,我们需要借助一个简单的、快速的工具将需...
📅 2023-08-14 阅读全文 →

初探可编程网关 Pipy

有幸参加了 Flomesh[1] 组织的workshop,了解了他们的 Pipy 网络代理,以及围绕 Pipy 构建起来的生态。Pipy 在生态中,不止是代理的角色,还是 Flomesh 服务网格中的数据平面。整理一下,做个记录,顺便瞄一下 Pipy 的部分源码。介绍下面是摘自 Github 上关于 Pipy 的介绍:Pipy 是一个轻量...
📅 2023-08-14 阅读全文 →

别再用 kill -9 了,这才是微服务上下线的正确姿势!

作者:fredalxin来源:https://fredal.xin/graceful-soa-updown对于微服务来说,服务的优雅上下线是必要的。就上线来说,如果组件或者容器没有启动成功,就不应该对外暴露服务,对于下线来说,如果机器已经停机了,就应该保证服务已下线,如此可避免上游流量进入不健康的机器。优雅下线 基础下线(Spring/SpringBoot/...
📅 2023-08-14 阅读全文 →

对不起,不会 Go 真进不了大厂!

整天喊着 Java 卷,你为啥还不考虑转语言?是 Go 开发岗位太少还是薪资太低?还是你面试没信心?这不,金九银十要来了,后台不少人问我啥样的后端适合切 Go 技术栈。我的建议是,如果你:有 2 年以上工作经验,但在 Java 或 PHP 方向难以晋升;掌握 Go 基础语法,并有一定 Go 语言开发经验;有其他语言基础,但没接触过 Go 语言;满足任一条,都...
📅 2023-08-14 阅读全文 →

57张图,13个实验,干死 MySQL 锁!

你好,我是yes。前段时间写了一篇关于 MySQL 锁的文章,一些小伙伴们在阅读之后产生了一些疑问,这些问题还挺有代表性的,所以在这里做个实验,来用事实探究一番。那篇文章提到了记录锁(Record Locks),顾名思义锁的是记录,作用在索引上的记录。锁是作用在索引上这句话可能不太好理解,并且对于在可重复读和读提交两个隔离级别下,关于是否命中二级索引的锁之间...
📅 2023-08-14 阅读全文 →

MySQL 5.6.35 索引优化导致的死锁案例解析

一、背景随着公司业务的发展,商品库存从商品中心独立出来成为一个独立的系统,承接主站商品库存校验、订单库存扣减、售后库存释放等业务。在上线之前我们对于核心接口进行了压测,压测过程中出现了 MySQL 5.6.35 死锁现象,通过日志发现引发死锁的只是一条简单的sql,死锁是怎么产生的?发扬技术人员刨根问底的优良传统,对于这次死锁原因进行了细致的排查和总结。本文...
📅 2023-08-14 阅读全文 →

这本书,让我秒懂了微服务架构

通过采用微服务架构,企业最大的收益是帮助内部IT建设沿着可演进的方向发展、支持灵活扩展、降低运维成本、快速响应业务变化。这些底层技术能力的提升让业务更加敏捷、成本可控,企业也可以从中获得技术红利和市场的竞争优势。那么有什么方法可以让我们在较短的时间内掌握并且能够游刃有余地发挥微服务带给我们的开发成效呢?看书显然是一条捷径,有人给你整理好,并且成本非常低。目前...
📅 2023-08-14 阅读全文 →

数学女博士奥运会摘金!没有教练,用数学知识和计算机软件自己训练,网友:真·学好数理化,走遍天下都不怕

  量子位 报道 | 公众号 QbitAI东京奥运会大爆冷门!奥地利的一位数学系博士后,拿到了自行车公路赛的金牌!而且,她打败的还是此前已经拿过3次世界冠军的荷兰选手Van Vleuten。突然杀出的黑马着实让人意想不到。以至于荷兰选手Van Vleuten在冲过终点线后,一度以为自己获得了金牌。而真正的冠军得主安娜·基森霍夫 (Anna...
📅 2023-08-14 阅读全文 →

高并发下秒杀商品,你必须知道的9个细节

前言高并发下如何设计秒杀系统?这是一个高频面试题。这个问题看似简单,但是里面的水很深,它考查的是高并发场景下,从前端到后端多方面的知识。秒杀一般出现在商城的促销活动中,指定了一定数量(比如:10个)的商品(比如:手机),以极低的价格(比如:0.1元),让大量用户参与活动,但只有极少数用户能够购买成功。这类活动商家绝大部分是不赚钱的,说白了是找个噱头宣传自己。...
📅 2023-08-14 阅读全文 →

Java 8 Stream原理解析

说起 Java 8,我们知道 Java 8 大改动之一就是增加函数式编程,而 Stream API 便是函数编程的主角,Stream API 是一种流式的处理数据风格,也就是将要处理的数据当作流,在管道中进行传输,并在管道中的每个节点对数据进行处理,如过滤、排序、转换等。首先我们先看一个使用Stream API的示例,具体代码如下:code1 Stream ...
📅 2023-08-14 阅读全文 →

美团某程序员哀叹:能力很强,却因为不会“向上管理”而惨遭被裁!怎么办?

互联网大厂大多有自己的绩效考核机制,比如“361”、“271”等。美团实行的绩效考核机制就是“271”,即20%的人是A类绩效,70%的人是B类绩效,10%的人是C类绩效。那么这个绩效是如何评定的呢?是唯技术论还是有其他因素?评定过程中是否存在不公平现象?一个美团员工发帖吐槽:见证了身边很多优秀的同学背上C绩效被裁,觉得莫名惶恐。其实他们能力都很强,只是因为...
📅 2023-08-14 阅读全文 →

项目延期半年,我被软件外包坑惨了!

    转自:infoQ    英文作者:Rajiv Prabhakar,翻译:平川 多年前,年轻且天真的我决定与他人一起创业,但同时还要兼顾我们的全职工作。我负责技术开发,另一个创始人负责业务。我们的 MVP 计划是发布 iOS 和 Android App。我在后端上...
📅 2023-08-14 阅读全文 →

快手二面:Java 里的 for (;;) 与 while (true),哪个更快?

转自:知乎www.zhihu.com/question/52311366/answer/1300903在 JDK8u 的 jdk 项目下做个很粗略的搜索:mymbp:/Users/me/workspace/jdk8u/jdk/src$ egrep -nr "for \\(\\s?;\\s?;" . | wc -l 369mymbp:/Users/me/wor...
📅 2023-08-14 阅读全文 →

干掉 Postman?测试接口直接生成API文档,这个工具我爱了

前几天粉丝群有小伙伴问,有啥好用的API文档工具推荐,无意间发现了一款工具,这里马不停蹄的来给大家分享一下。ShowDoc一个非常适合团队的在线API文档工具,也支持用docker自建文档服务,不过为了方便演示,我直接用了平台在线服务。官网地址:https://www.showdoc.com.cn/item/index可以使用markdown语法来写API文...
📅 2023-08-14 阅读全文 →

怎么通过打工,在一线城市购买10套房?Snapchat程序员亲身分享经历!

同样是程序员,有的人年纪轻轻就实现了财富自由,有的人却一大把年纪还在辛苦给别人打工,这种差别是怎么形成的?作为程序员,如何才能快速积累财富?最近,一个深圳Snapchat的程序员发的帖子冲上了热榜,这位程序员说自己在工作之余帮助身边的朋友拿到了多家top外企的offer,而且加入Snapchat以来,经历了公司股价暴跌至不到5刀,又涨到今天接近80刀的起伏。...
📅 2023-08-14 阅读全文 →

舍弃325亿估值公司CTO职位:写代码才最快乐!管理只会影响我搞研发

来源:InfoQ , 作者 | 褚杏娟 核子可乐“我终于又能亲手解决软件工程问题了,这才是我真正喜欢的事情。”当地时间 7 月 22 日,《2020 胡润全球独角兽榜》中排名 58 位的科技公司 HashiCorp 的创始人 Mitchell Hashimoto 发布内部信表示,他将辞去公司 CTO 的职位, 同时退出 HashiCorp 董事会,重新成为一...
📅 2023-08-14 阅读全文 →

让jwt来保护你的接口服务

以前写过一篇关于接口服务规范的文章,里面关于安全性问题重点讲述了通过appid,appkey,timestamp,nonce以及sign来获取token,使用token来保障接口服务的安全。今天我们来讲述一种更加便捷的方式,使用jwt来生成token。一、JWT是什么JSON Web Token(JWT) 定义了一种紧凑且自包含的方式,用于在各方之间作为 J...
📅 2023-08-14 阅读全文 →

聊聊 Kafka 那点破事!

Kafka作为一款开源的消息引擎,很多人并不陌生,但深入其源码的同学估计不多,除非你是中间件团队消息系统维护者。但术业有专攻,市面上那么多开源框架且每个框架又经常迭代升级,花精力深入了解每一个框架源码不太现实,本文会以业务视角罗列工作中大家需要熟知的一些知识本篇文章的目录:首先,为什么使用kafka?削峰填谷。缓冲上下游瞬时突发流量,保护“脆弱”的下游系统不...
📅 2023-08-14 阅读全文 →

微服务时代组件化和服务化的抉择

作者:vivo 互联网服务器团队-Yao Wenyu随着业务系统的复杂性越来越高,系统之间的调用也越来越多,在微服务拆分和迭代过程中,是不断的拆分出新的独立的服务还是封装独立的组件以jar包依赖的方式提供服务是我们经常需要面对的问题,本文将详细探讨这两种不同的方式区别、各自的优劣势及适用的场景,希望能够对大家有所启发。一、组件化&服务化定义随着公司互...
📅 2023-08-14 阅读全文 →

40岁遭遇中年危机:好不容易熬到公司中层,月薪一万五,却突然被辞退,怎么办?

40岁+中年失业+月薪15000+被辞退,这几个关键词放在一起,就是一出活生生的人间惨剧。可是这样的惨剧却天天都在发生,成为许多中年人的人生噩梦。近日,一位集齐了所有关键词的惨剧当事人发帖求助,问大家该怎么办?面对这个问题,网友纷纷出谋划策:有人说,既然公司有意辞退,就要多考虑自己的善后问题。先判断是与公司协商解除还是公司劝退,千万不要答应主动辞职,因为没有...
📅 2023-08-14 阅读全文 →

3天,我把MySQL索引、锁、事务、分库分表撸干净了!

前两天看到字节一个老哥写的帖子,提到高阶开发者必须掌握的技能,其中他明确提出了“精通MySQL”。 为啥MySQL对开发人员如此重要?第一,不管你去面试哪家公司,数据库是必问项,而MySQL使用范围广,无论如何是避不开的;第二,你对MySQL掌握的越深入,意味着你能做的事情越多。实现业务功能,要懂基本的SQL语句;性能优化,那么索引、引擎就要摸透;...
📅 2023-08-14 阅读全文 →

Tomcat组成与工作原理

作者:VectorJin来源:juejin.cn/post/6844903473482317837Tomcat是什么开源的 Java Web 应用服务器,实现了 Java EE(Java Platform Enterprise Edition)的部 分技术规范,比如 Java Servlet、Java Server Page、JSTL、Java WebSoc...
📅 2023-08-13 阅读全文 →

ELK 处理 Spring Boot 日志,有点强悍!

在排查线上异常的过程中,查询日志总是必不可缺的一部分。现今大多采用的微服务架构,日志被分散在不同的机器上,使得日志的查询变得异常困难。工欲善其事,必先利其器。如果此时有一个统一的实时日志分析平台,那可谓是雪中送碳,必定能够提高我们排查线上问题的效率。本文带您了解一下开源的实时日志分析平台 ELK 的搭建及使用。   ELK 简介ELK 是...
📅 2023-08-13 阅读全文 →

实现一个全链路监控平台很难吗?一点都不难。。。

0 问题背景 随着微服务架构的流行,服务按照不同的维度进行拆分,一次请求往往需要涉及到多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具,以便发生故障的时候,能够快速定位和解决问题。全...
📅 2023-08-13 阅读全文 →

干掉 RESTful!GraphQL 真香!

-     前言    -REST作为一种现代网络应用非常流行的软件架构风格,自从Roy Fielding博士在2000年他的博士论文中提出来到现在已经有了20年的历史。它的简单易用性,可扩展性,伸缩性受到广大Web开发者的喜爱。REST 的 API 配合JSON格式的数据交换,使得前后端分离、数据交互变得非...
📅 2023-08-13 阅读全文 →

Beego 负责人原来这么解决学习 Go 困境的

昨天我交流群里的一条发言,激起了不小的水花,一位群友最近面试 Java 方向的工作都不是很顺利,于是抱着试一试的态度把 Java 方向的简历改成了 Go 方向的,结果还挺令人吃惊的。很多人私聊问我,到底该不该学习 Go 语言。直接给你答案吧,你也不信。所以,在正式回答之前,我们还是先说说,到底怎么判断一门语言是不是有前景?左耳朵耗子之前曾经分享过他的经验,看...
📅 2023-08-13 阅读全文 →

18 款顶级代码生成器平台!

文 | 白开水出品 | OSC开源社区低代码成了企追求的主流目标,与使用计算机编程语言构建应用程序的传统方法不同,低代码开发平台是使用图形向导来创建和构建软件的应用程序开发平台。因此,在许多情况下,低代码或无代码(几乎没有代码)这个名称是作为可视化开发工具来帮助设计人员进行拖放、组件浏览器和逻辑构建器的。低代码/无代码的主要概念并不新鲜,它可以追溯到十多年前...
📅 2023-08-13 阅读全文 →