Category: Distributed Architecture

[转]一份完整的阿里云 Redis 开发规范 0

[转]一份完整的阿里云 Redis 开发规范

1. 一、键值设计 1-1. 1. key名设计 (1)【建议】: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id

(2)【建议】:简洁性 保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如:

(3)【强制】:不要包含特殊字符 反例:包含空格、换行、单双引号以及其他转义字符 详细解析

[转]如何使用Redis流和Apache Spark处理实时数据? 0

[转]如何使用Redis流和Apache Spark处理实时数据?

1. 本文要点 Apache Spark 的流框架(Structured Streaming)为数据流带来了 SQL 查询功能,让用户可以实时、可扩展地处理数据。 Redis 流(Redis Stream)是 Redis 5.0 新引入的数据结构,能够以亚毫秒级的延迟高速收集、保存和分发数据。 用户集成 Redis 流和流框架后就能简化连续应用程序(continuous application)的扩展工作。 开源的 Spark-Redis 库将 Apache Spark 与 Redis 连接起来。该库为 Redis 数据结构提供 RDD 和数据帧 API,使用户可以将 Redis 流用作流框架的数据源。 流框架是...

[转]消息中间件–5 消息处理失败&死信队列 0

[转]消息中间件–5 消息处理失败&死信队列

消息中间件消费到的消息处理失败怎么办? 一般生产环境中,如果你有丰富的架构设计经验,都会在使用MQ的时候设计两个队列:一个是核心业务队列,一个是死信队列。 核心业务队列,就是比如专门用来让订单系统发送订单消息的,然后另外一个死信队列就是用来处理异常情况的。比如说要是第三方物流系统故障了,此时无法请求,那么仓储系统每次消费到一条订单消息,尝试通知发货和配送,都会遇到对方的接口报错。 此时仓储系统就可以把这条消息拒绝访问,或者标志位处理失败!注意,这个步骤很重要。

0e3735c3f9e54d129509ee659afffe05_th.png 0

[转]日志处理两大生态Splunk和ELK深度对比

随着Splunk越来越被大家熟知和认可,现在市面上也不断涌各种同类产品,作为大数据搜索界的翘楚Splunk和ElasticSearch,绝对值得我们去学习,探索和使用,因此为了造福Splunk的铁粉和新粉们,小编特邀了Splunk的资深架构师,江湖人称“陶指导”的陶刚为大家就架构,功能,产品线,概念等方面将Splunk和ElasticSearch做了一下全方位的对比,希望能够给大家在制定大数据搜索方案的时候有所帮助。 陶刚在Splunk上海担任资深架构师,负责数据采集和云平台产品的技术架构。 拥有丰富的企业级产品的开发经验,对数据科学,数据可视化和机器学习等领域有着浓厚的兴趣。同时是足球和炉石传说的狂热爱好者,也是大圣庞卡足球队的当家球霸和炉石传说俱乐部最受追捧的明星会长。 本文就架构,功能,产品线,概念等方面就ElasticSearch和Splunk做了一下全方位的对比,希望能够大家在制定大数据搜索方案的时候有所帮助。

[总结]Nginx 负载均衡策略 0

[总结]Nginx 负载均衡策略

Nginx 作为高性能web服务器,负载均衡是其基本功能之一。 注:负载均衡至少需要两台机器 1. 负载均衡 负载均衡可以将请求前端的请求分担到后端多个节点上,提升系统的响应和处理能力。 2. 负载均衡策略 负载均衡的策略可以大致分为两大类:内置策略 和扩展策略 内置策略:一般会直接编译进Nginx内核,常用的有、轮询、ip hash、最少连接 扩展策略:fair、url hash等

[转]MQ中间件各种疑难杂症 0

[转]MQ中间件各种疑难杂症

1. 消息队列有什么优点和缺点? 为什么使用消息队列?假设你的业务场景遇到个技术挑战,如果不用 MQ 可能会很麻烦,但是你用了 MQ 之后会带给你很多好处。 消息队列 MQ 的常见使用场景其实有很多,但是比较核心的有如下三个: 解耦 异步 削峰 1-1-1. 解耦:A 系统发送个数据到 BCD 三个系统,接口调用发送,那如果 E 系统也要这个数据呢?那如果 C 系统现在不需要了呢?