高并发架构设计(三大利器:缓存、限流和降级)

阿里妹导读
软件系统有三个追求:高性能、高并发、高可用,俗称三高。本篇讨论高并发,从高并发是什么到高并发应对的策略、缓存、限流、降级等。
引言
高并发背景
互…

Java 并发队列全介绍

前言
如果按照用途与特性进行粗略的划分,JUC 包中包含的工具大体可以分为 6 类:

执行者与线程池
并发队列
同步工具
并发集合

原子变量
在【并发系列…

你技术这么好,总要改变点什么把!

这篇文章我很早就想写了,工作至今(10年)我对于技术这个东西的体会也越来越多。今天触发我动键盘敲字的是一个事情:我在准备做一个golang内存模型的ppt,准备…

滴滴曹大:为什么 Go 模块在下游服务抖动恢复后,CPU 占用无法恢复

某团圆节日公司服务到达历史峰值 10w+ QPS,而之前没有预料到营销系统又在峰值期间搞事情,雪上加霜,流量增长到 11w+ QPS,本组服务差点被打挂(汗
所…

GCTT出品 | Go 语言的并发性

昨天,我在 Quora 上回答了一个关于 Go 语言并发模型的问题。现在,我觉得我还想再多说些什么!并发性是 Go 语言中最强大的特性之一。许多人讨论了这个话题…

有 GC 的编程语言就一劳永逸了吗?GODEBUG来助力 Gopher 调试 GC

以下文章来源于不会写Go的煎鱼 ,作者陈煎鱼

什么是 GC
在计算机科学中,垃圾回收(GC)是一种自动管理内存的机制,垃圾回收器会去尝试回收程序不再使用的对象…

阿里不让多表join?我偏要!

作者:谢斌
来源:http://blog.itpub.net/30393770/viewspace-2650450/
阿里规范中强制要求不要多表join。那么问…

Apache架构师的30条设计原则!

作者:Srinath
来源:ImportSource
本文作者叫 Srinath,是一位科学家,软件架构师,也是一名在分布式系统上工作的程序员。 他是 Apac…

漫漫优化路,总会错几步!记一次接口优化!

作者:狂乱的贵公子
最近做了一个搜索接口的优化,反复压测了四次,终于达到要求了,记录一下,晚上加个鸡腿🍗
业务逻辑
从OpenSearch中检索出数据,然后各种…

GCTT 出品 |Goroutine 泄露 – 被遗忘的发送者

引言
并发编程允许开发人员使用多个执行路径解决问题,并且通常用于提高性能。并发并不意味着这些多路径是并行执行的;它意味着这些路径是无序执行的而不是顺序执行。从历…

钻钻 “单例模式” 的牛角尖!你写的安全吗?

作者:秉心说
微信公众号:秉心说
枚举很适合用来实现单例模式。实际上,在 Effective Java 中也提到过(果然英雄所见略同):

单元素的枚举类型经常…

淘宝从几百到千万级并发的十四次架构演进之路!

作者:huashiou
1、概述
本文以淘宝作为例子,介绍从一百个并发到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对…

select count(*)底层究竟干了啥么?

作者:贾春生
“SELECT COUNT( ) FROM TABLE” 是个再常见不过的 SQL 需求了。在 MySQL 的使用规范中,我们一般使用事务引擎 …

一线大厂的分布式唯一ID生成方案是什么样的?

我们看上图,有张ID规则表:

1、id表示为主键,无业务含义。
2、biz_tag为了表示业务,因为整体系统中会有很多业务需要生成ID,这样可以共用一张表维护…

为什么不应该重写service方法?

作者:dtubest
故事通常是这样开始的:
从前,有一个程序猿,他语重心长地对孙子说:“孩子,要是你以后写servlet,最好不要重写service方法啊”

【独家】技术人到底应不应该写作?

二、你是如何考虑技术人写作这件事的呢?
其实,我一直都提倡技术人最好能够写作!
1.写作是梳理知识最好的方式
平时看别人的文章,相当于别人掰碎碾好放到你面前,直…

为什么阿里巴巴不建议在for循环中使用"+"进行字符串拼接?

作者:Hollis | 微信公众号:Hollis
本文,也是对于Java中字符串相关知识的一个补充,主要来介绍一下字符串拼接相关的知识。本文基于jdk1.8.0…

数据库中为什么不推荐使用外键约束?

作者:孤独烟 | 微信公众号:打杂的ZRJ
引言

其实这个话题是老生常谈,很多人在工作中确实也不会使用外键。包括在阿里的JAVA规范中也有下面这一条:

【…

【性能优化之道】每秒上万并发下的Spring Cloud参数优化实战!

本文来源:石杉的架构笔记(ID:shishan100)
一、写在前面
相信不少朋友都在自己公司使用Spring Cloud框架来构建微服务架构,毕竟现在这是非常…

一文弄清物联网的OTA

许多嵌入式系统部署在人类操作员很难或无法访问的地方。 对于物联网应用程序来说尤其如此,物联网应用程序通常数量较大,电池寿命有限。 一些例子是监视人或机器健康状况…