工程与设计3 分钟

阿里云核心服务概念梳理: FC / ECS /ECI / ACK /ACS

阿里云产品中有不少词汇,乍一看不知道什么意思,做一个小结。 FC:Function Compute (函数计算) FC 是阿里云提供的 事件驱动 的 无服务器计算服务 。 核心理念: 运行代码, 无需管理服务器 。用户只需编写和上传代码,FC 会自动管理计算资源。 按事件触发: 代码执行由事件触发(…

工程与设计6 分钟

Prometheus 为代表的监控构建

接口 p99、队列积压、TTFT 要先变成可查询的时间序列。Prometheus 负责拉取和存储,Grafana 只画图,Alertmanager 负责把规则变成通知。

工程与设计4 分钟

SSE

SSE介绍 SSE(Server Sent Events,服务器发送事件)是一种基于 HTTP 的协议,允许 服务器主动向浏览器推送数据 。它常用于实时更新页面数据,比如消息推送、实时行情、通知等场景。 SSE 是一种 单向通信协议 : 服务器 → 客户端 ,只能由服务器发送数据到客户端; 使用的是…

工程与设计15 分钟

Kafka 生产者、消费者与重复消费

Kafka 是按 Partition 切开的提交日志。组内靠分区独占避免并发抢同一条消息;崩溃、rebalance、提交失败仍会让同一条消息被处理两遍。协议层和业务层要分开看。

工程与设计2 分钟

如何构建一个短链系统

典型读多写少的场景,需要考虑高并发的读取的场景。所以缓存和恶意请求需要处理得当。 对于长链接转短链接的场景 参数校验 1. 判断长链接能够访问通 2. 判断长链接不是一个短链接(防止循环转链) 构造链接 1. 发号器发号(可以是redis的string、mysql的主键或雪花算法生成的id),给这个…

工程与设计2 分钟

MongoDB:文档、副本集、分片

MongoDB 是文档数据库,不是「分布式文件存储」。写走 Primary,高可用靠 Replica Set;要把一份数据摊到多台机器上才上 Sharding。WiredTiger 默认,事务要短。

工程与设计4 分钟

高可用的常见手段

高可用是一个复杂的命题。日常的运维操作例如服务升级、硬件更新、数据迁移等都会造成服务等宕机,尤其是在功能上线周期越来越短、发布越来越频繁的开发模式下,实现“4个9”或“5个9”高可用的难度不言而喻。简单来说,在设计时要避免单点故障:路由、防火墙、负载均衡、反向代理以及监控都得是冗余设计,以此来保证最…

工程与设计5 分钟

基于Casbin的RBAC权限认证|权限管理

k8s中的权限管理 在k8s中的权限管理默认是使用的的RBAC,其中主要包含这四个核心概念:Role、ClusterRole、RoleBinding和ClusterRole,比如下面的案例就是创建一个 role ,允许读取development namespace下的pod,将这个role 赋予us…

工程与设计6 分钟

etcd

热身 etcd简介 是什么 分布式的kv存储系统 用于存储和管理分布式系统中的共享配置和服务发现信息 使用场景 1. k8s的存储后端 & 配置管理 & 存储原数据和状态 存储API对象的原数据,如Pod、ConfigMap、Secret等 记录k8s集群中所有的资源的实时状态变化,提供回滚能力 2…

工程与设计14 分钟

常用限流组件及其实现

分布式系统稳定性保障:限流、熔断与降级完全指南 在分布式系统中,服务间依赖关系错综复杂,任何一个节点的异常都可能引发连锁反应,最终导致整个系统雪崩。限流、熔断、降级是应对流量冲击、故障传播和部分失效的三大核心机制。本文将系统梳理这三者的概念、关系、算法原理、代码实践与最佳配置,帮助你构建真正健壮的后…

工程与设计4 分钟

全局唯一ID生成方案

uuid 是什么 uuid的全称是 universally unique identifier ,即通用唯一识别号,它由16字节(128byte)组成,可以用于唯一的标识信息。 格式为 8 4 4 4 12的16进制格式 使用 分隔 不同的UUID版本 1. UUID v1 (基于时间) UUID…