随笔分类 -  并发与分布

分布式唯一ID生成常用方案
摘要:1. 使用JAVA的UUID生成 算法的核心思想是结合机器的网卡、当地时间、一个随记数来生成UUID。 优点:本地生成,生成简单,性能好,没有高可用风险 缺点:长度过长,字母和数字组合,存储冗余,且无序不可读,查询效率低 2. 数据库自增ID 使用数据库的id自增策略,如 MySQL 的 auto_ 阅读全文

posted @ 2019-11-27 20:26 ExplorerMan 阅读(214) 评论(0) 推荐(0)

四层、七层负载均衡的区别
摘要:** 所谓四层就是基于IP+端口的负载均衡;七层就是基于URL等应用层信息的负载均衡;**同理,还有基于MAC地址的二层负载均衡和基于IP地址的三层负载均衡。 换句换说,二层负载均衡会通过一个虚拟MAC地址接收请求,然后再分配到真实的MAC地址;三层负载均衡会通过一个虚拟IP地址接收请求,然后再分配 阅读全文

posted @ 2019-11-13 15:58 ExplorerMan 阅读(216) 评论(0) 推荐(0)

《吊打面试官》系列-缓存雪崩、击穿、穿透
摘要:前言 Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难。作为一个在互联网公司面一次拿一次offer的面霸(请允许我使用一下夸张的修辞手法),打败了无数竞争对手,每次都只能看到无数落寞的身影失望的离开,略感愧疚,在一个寂寞 阅读全文

posted @ 2019-11-06 12:54 ExplorerMan 阅读(23) 评论(0) 推荐(0)

要不要赶个时髦,去建设一个「 中台 」?(转)
摘要:很多技术人总是抱怨 新技术/新框架/新概念 太多了,总是学不完,抱怨实在是学不动了。哈哈,这不,最近「 中台 」这么火热,要不要停止抱怨,再咬咬牙学一波? “很多人都担心被技术新潮流所抛弃,所以当遇见不断涌现的新技术时,总是慌忙的去学习。可是其中到底有多少是真正有用的?又有多少是昙花一现的技术呢?当 阅读全文

posted @ 2019-10-24 14:33 ExplorerMan 阅读(210) 评论(0) 推荐(0)

集群、限流、缓存 BAT 大厂无非也就是这么做
摘要:前言 前阵子有网友询问,如何优化网站?这个问题真的很大,跟他简单的聊了一下,随便说了几点,觉得有必要整理一篇文章出来,正好前阵子在做爬虫博客,于是把大体思路分享出来,与大家互通有无,共同进步。 优化 版本一 系统开始是这样子的,一个 Tomcat 拖着一个 MySql 服务,跑在一个 2C 4G 的 阅读全文

posted @ 2019-08-29 18:36 ExplorerMan 阅读(298) 评论(0) 推荐(0)

Redlock:Redis分布式锁最牛逼的实现
摘要:普通实现 说道Redis分布式锁大部分人都会想到:setnx+lua,或者知道set key value px milliseconds nx。后一种方式的核心实现命令如下: - 获取锁(unique_value可以是UUID等) SET resource_name unique_value NX 阅读全文

posted @ 2019-08-18 20:51 ExplorerMan 阅读(469) 评论(0) 推荐(1)

GitHub 开源的 MySQL 在线更改 Schema 工具【转】
摘要:本文来自:https://segmentfault.com/a/1190000006158503 原文:gh-ost: GitHub's online schema migration tool for MySQL MySQL在线更改schema的工具很多,如Percona的pt-online-sc 阅读全文

posted @ 2019-08-14 14:18 ExplorerMan 阅读(221) 评论(0) 推荐(0)

MySQL ProxySQL读写分离实践
摘要:目的 在上一篇文章MySQL ProxySQL读写分离使用初探里初步介绍了ProxySQL的使用,本文继续介绍它的一些特点和DBProxy的性能差异。深入一些去了解ProxySQL,通过例子来说明ProxySQL的一些特性和用sysbench对其进行测试来对比分析说明。 环境: 测试 本文测试环境是 阅读全文

posted @ 2019-08-14 14:16 ExplorerMan 阅读(392) 评论(0) 推荐(0)

MySQL ProxySQL读写分离使用初探
摘要:目的 在美团点评DBProxy读写分离使用说明文章中已经说明了使用目的,本文介绍ProxySQL的使用方法以及和DBProxy的性能差异。具体的介绍可以看官网的相关说明,并且这个中间件也是percona推的一款中间件。其特性和其他读写分离的中间件差距不大,具体的会在文中介绍。本文大致简单的介绍在使用 阅读全文

posted @ 2019-08-14 14:15 ExplorerMan 阅读(206) 评论(0) 推荐(0)

LVS+Keepalived实现DBProxy的高可用
摘要:背景 在上一篇文章美团点评DBProxy读写分离使用说明实现了读写分离,但在最后提了二个问题:一是代理不管MySQL主从的复制状态,二是DBProxy本身是一个单点的存在。对于第一个可以通过自己定义的检测规则进行操作Admin接口,实现主从状态异常的处理。而对于第二个问题,需要再起一个DBProx 阅读全文

posted @ 2019-08-14 14:14 ExplorerMan 阅读(178) 评论(0) 推荐(0)

Flink消费Kafka数据并把实时计算的结果导入到Redis
摘要:1. 完成的场景 在很多大数据场景下,要求数据形成数据流的形式进行计算和存储。上篇博客介绍了Flink消费Kafka数据实现Wordcount计算,这篇博客需要完成的是将实时计算的结果写到redis。当kafka从其他端获取数据立刻到Flink计算,Flink计算完后结果写到Redis,整个过程就像 阅读全文

posted @ 2019-08-01 20:34 ExplorerMan 阅读(925) 评论(0) 推荐(0)

Filebeat+Kafka+Logstash+ElasticSearch+Kibana搭建完整版
摘要:1. 了解各个组件的作用 Filebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读)Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据Logstash是 阅读全文

posted @ 2019-08-01 20:33 ExplorerMan 阅读(358) 评论(0) 推荐(0)

Flink+kafka实现Wordcount实时计算
摘要:1. Flink Flink介绍: Flink 是一个针对流数据和批数据的分布式处理引擎。它主要是由 Java 代码实现。目前主要还是依靠开源社区的贡献而发展。对 Flink 而言,其所要处理的主要场景就是流数据,批数据只是流数据的一个极限特例而已。再换句话说,Flink 会把所有任务当成流来处理, 阅读全文

posted @ 2019-08-01 20:33 ExplorerMan 阅读(366) 评论(0) 推荐(0)

API设计风格(RRC、REST、GraphQL、服务端驱动)
摘要:阅读目录 一、创建资源使用PUT还是POST 二、异常处理的HTTP响应状态码 三、返回数据是否需要包装 四、URI的设计层级是否超过两层 五、参考资料 阅读目录 一、创建资源使用PUT还是POST 二、异常处理的HTTP响应状态码 三、返回数据是否需要包装 四、URI的设计层级是否超过两层 五、参 阅读全文

posted @ 2019-08-01 19:44 ExplorerMan 阅读(276) 评论(0) 推荐(0)

微服务架构
摘要:阅读目录 一、Dubbo 二、Tars 三、gRPC 四、Motan 五、Spring Cloud 阅读目录 一、Dubbo 二、Tars 三、gRPC 四、Motan 五、Spring Cloud 阅读目录 微服务架构到底应该如何选择? 阅读目录 微服务架构到底应该如何选择? 回到目录 微服务架构 阅读全文

posted @ 2019-08-01 19:42 ExplorerMan 阅读(225) 评论(0) 推荐(0)

谈谈高并发系统的限流
摘要:开涛大神在博客中说过:在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。本文结合作者的一些经验介绍限流的相关概念、算法和常规的实现方式。 缓存 缓存比较好理解,在大型高并发系统中,如果没有缓存数据库将分分钟被爆,系统也会瞬间瘫痪。使用缓存不单单能够提升系统访问速度、提高并发访问量,也是保护 阅读全文

posted @ 2019-07-25 21:30 ExplorerMan 阅读(402) 评论(0) 推荐(0)

架构设计之「服务限流」
摘要:限流可以认为服务降级的一种,限流就是限制系统的输入和输出流量已达到保护系统的目的。一般来说系统的吞吐量是可以被测算的,为了保证系统的稳定运行,一旦达到的需要限制的阈值,就需要限制流量并采取一些措施以完成限制流量的目的。比如:延迟处理,拒绝处理,或者部分拒绝处理等等。 在介绍限流概念之前,我们先来聊聊 阅读全文

posted @ 2019-07-25 21:29 ExplorerMan 阅读(182) 评论(0) 推荐(0)

万亿级数据洪峰下的分布式消息引擎
摘要:前言 通过简单回顾阿里中间件(Aliware)消息引擎的发展史,本文开篇于双11消息引擎面临的低延迟挑战,通过经典的应用场景阐述可能会面临的问题 - 响应慢,雪崩,用户体验差,继而交易下跌。为了应对这些不可控的洪峰数据,中间件团队通过大量研究和实践,推出了低延迟高可用解决方案,在分布式存储领域具有一 阅读全文

posted @ 2019-07-25 21:23 ExplorerMan 阅读(328) 评论(0) 推荐(0)

腾讯重磅开源分布式NoSQL存储系统DCache
摘要:当你在电商平台秒杀商品或者在社交网络刷热门话题的时候,可以很明显感受到当前网络数据流量的恐怖,几十万商品刚开抢,一秒都不到就售罄;哪个大明星出轨的消息一出现,瞬间阅读与转发次数可以达到上亿。作为终端用户的我们可能会思考,服务系统是怎么在这样严峻的流量环境中存活下来的。 其实,服务系统的架构中有许多巧 阅读全文

posted @ 2019-07-10 19:38 ExplorerMan 阅读(600) 评论(0) 推荐(0)

腾讯两大开源项目Tars、TSeer
摘要:6月25日,在LC3(LinuxCon + ContainerCon + CloudOpen)中国2018大会上,腾讯宣布其两大开源项目——RPC开发框架Tars、轻量化名字服务方案TSeer,加入Linux基金会。 LC3是集Linux、容器、云技术、网络、微服务等多种开源议题于一身的科技大会。 阅读全文

posted @ 2019-07-04 21:46 ExplorerMan 阅读(475) 评论(0) 推荐(0)

导航