分布式、微服务
文章平均质量分 65
开着奥迪卖小猪
走在成为大牛的路上!
展开
-
阿里巴巴共享服务中心:淘宝四大服务中心
本章将介绍阿里巴巴共享服务中心的架构,以及在架构转变的过程中,技术团队对如何建设共享服务中心的思考,包括在过去几年建设历程中,我们沉淀出的一些建设原则。 在阿里巴巴集团的中台战略中,共享服务中心是中台架构的基石,如何构建稳定可靠、最高效地支撑上层业务快速创新的共享服务能力是中台战略成功落地的关键。 一般来说,服务能力包括两个层次,一个层次是底层PaaS的能力...转载 2020-04-02 10:46:55 · 708 阅读 · 0 评论 -
Kafka为什么吞吐量大、速度快?
本文参考:http://searene.me/2017/07/09/Why-is-Kafka-so-fast/ https://queue.acm.org/detail.cfm?id=1563874 Kafka是大数据领域无处不在的消息中间件,目前广泛使用在企业内部的实时数据管道,并帮助企业构建自己的流计算应用程序。 Kafka...原创 2019-09-28 02:01:32 · 16956 阅读 · 5 评论 -
布隆过滤器 bloom
布隆过滤器的应用:https://blog.csdn.net/kzadmxz/article/details/100640815 布隆过滤器是Burton Howard Bloom在1970年提出来的,一种空间效率极高的概率型算法和数据结构,主要用来判断一个元素是否在集合中存在。因为他是一个概率型的算法,所以会存在一定的误差,如果传入一个值去布隆过滤器中检索,可能会出现检...原创 2019-09-08 22:43:43 · 349 阅读 · 0 评论 -
缓存雪崩、缓存穿透、缓存击穿
一、缓存雪崩 当缓存大规模渗透在整个架构中以后,那么缓存本身的可用性将决定整个架构的稳定性。 缓存雪崩是指设置缓存时采用了相同的过期时间,导致缓存在某一个时刻同时失效,或者缓存服务器宕机宕机,导致缓存全面失效,请求全部转发到了DB层面,DB由于瞬间压力增大而导致崩溃。 缓存失效导致的雪崩效应对底层系统的冲击是很大的。解决方式: 1. 对缓存的访问,如果发现从缓存...原创 2019-09-08 22:20:08 · 623 阅读 · 0 评论 -
Redis持久化:RDB、AOF
目录一、RDB方式Redis会在以下几种情况下对数据进行快照:RDB优点RDB缺点二、AOF方式开启AOFAOF的实现AOF的重写原理AOF优点AOF缺点PS:小编另外一篇关于持久化快照的文章:https://blog.csdn.net/kzadmxz/article/details/75913259Redis两种持久化的方式: RD...原创 2019-09-06 12:17:39 · 660 阅读 · 0 评论 -
Redis存储结构、数据类型
存储结构: Redis的全称是remote dictionary server(远程字典服务器),它以字典结构存储数据(key-value),并允许其他应用通过TCP协议读写字典中的内容。 数据结构如下:数据类型:1、字符类型 String 字符串类型是redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据。你可以用它...原创 2019-09-06 10:30:27 · 7622 阅读 · 0 评论 -
Redis为什么高效?应用场景是什么?性能瓶颈在哪里?
为什么高效: 1、完全基于内存,大多数请求都是内存操作,非常快速; 2、数据结构简单,操作简单; 3、采用单线程,避免了不必要的上下文切换和竞争条件,不存在多进程或者多线程的切换,不用考虑锁带来的性能消耗; 4、使用多路 I/O复用模型,非阻塞 IO应用场景: 缓存(数据查询、热点数据、商品数据、短连接、新闻内容等。(最多使用)...原创 2019-09-06 09:53:44 · 1285 阅读 · 0 评论 -
锁:公平锁/非公平锁、悲观锁/乐观锁
一、公平锁/非公平锁(多线程执行顺序的维度)公平锁:加锁前先查看是否有排队等待的线程,有的话优先处理排在前面的线程,先来先得。 非公平所:线程加锁时直接尝试获取锁,获取不到就自动到队尾等待。例子ReentrantLock 同时支持两种锁//创建一个非公平锁,默认是非公平锁Lock nonFairLock= new ReentrantLock();Lock nonFairL...原创 2019-08-22 13:12:27 · 695 阅读 · 0 评论 -
分布式事务 解决方案
目录一、为什么会有分布式事务?二、分库分表以后带来的问题?三、分布式事务解决方法及原理1、经典的 X/Open DTP 事务模型2、2PC二阶段提交(two -phaseCommit)3、3PC 三阶段提交(1)cancommit阶段:询问是否可以执行事务提交(2)precommit阶段:预提交(3)doCommit阶段:四、分布式事务一致性 开源...原创 2019-08-21 22:59:01 · 875 阅读 · 2 评论 -
slf4j与logback冲突,导致 log4j.properties不起作用,疯狂打印debug级别日志
1、bug现象:生产环境,日志级别不受控,疯狂打印debug级别的日志,也连不到日志平台kibana。 此时已不能回滚,因为,新上的RPC接口,已经被别的系统依赖。 除了日志问题,其它一切正常。 所以当前方法是,赶紧找到问题所在,解决掉。2、将生产问题尝试在测试环境复现 ...原创 2019-07-31 22:48:04 · 3949 阅读 · 0 评论 -
【安全漏洞】jackson-databind漏洞、 异常NoClassDefFoundError: Could not initialize class com.fasterxml.jackson
一、jackson-databind漏洞 国家信息安全漏洞库:http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-201906-867 二、发现项目中有使用2.6.3版本的jackson,所以进行升级 jackson-databind 升级到2.9.9.1、 jackson...原创 2019-07-25 00:54:40 · 14434 阅读 · 5 评论 -
Solr+Zookeeper 搭建搜索集群SolrCloud
目录一、简介1、SolrCloud是个什么玩意?2、Solr是个什么玩意?3、zookeeper是个什么玩意?4、实现负载均衡的方式: (Nginx、Redis槽、Zookeeper)二、SolrCloud的结构1、物理结构2、逻辑结构三、SolrCloud的搭建(3个zookeeper、4个solr)1、3台zookeeper搭建2、4台solr 实例...原创 2019-07-20 15:50:46 · 3567 阅读 · 1 评论 -
限流 熔断:Hystrix、 Sentinel
目录一、Hystrix SpringCloud1、Hystrix名字由来?2、Hystrix是什么?3、为什么需要Hystrix ?4、Hystrix的设计原则是什么?5、Hystrix如何解决依赖隔离6、Hystrix是如何实现它的目标的?7、如何使用Hystrix?8、Hystrix-dashboard监控平台搭建9、Hystrix配置...原创 2019-04-21 12:58:57 · 2584 阅读 · 0 评论 -
漫画:什么是微服务?
单体架构的痛点缺点一:项目过于臃肿当大大小小的功能模块都集中在同一项目的时候,整个项目必然会变得臃肿,让开发者难以维护。缺点二:资源无法隔离就像刚刚小灰的经历一样,整个单体系统的各个功能模块都依赖于同样的数据库、内存等资源,一旦某个功能模块对资源使用不当,整个系统都会被拖垮。缺点三:无法灵活扩展当系统的访问量越来越大的时候,单体系统固然可以进行水平扩展,部署在多台机器上组成集群...转载 2018-06-20 16:16:24 · 978 阅读 · 0 评论 -
Kafka简介(一)
一、简介1.1 介绍 Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。 Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。特性: 1.通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。 2.高吞吐量:即使...原创 2018-05-28 19:20:56 · 2981 阅读 · 0 评论 -
Zookeeper原理
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用,因此需要有一种可靠的、可扩展的、分布式的、可配置的协调机制来统一系统的状态。Z...转载 2017-10-25 21:03:47 · 1318 阅读 · 0 评论 -
搭建SolrCloud: Error: Could not find or load main class org.apache.solr.cloud.ZkCLI
【./zkcli.sh:line 13: unzip: command not found Error: Could not find or load main class org.apache.solr.cloud.ZkCLI 搭建SolrCloud集群 时,把solrhome中的配置文件上传到zookeeper集群。使用zookeeper的客户端上传。 客户端...原创 2017-07-21 21:57:30 · 1875 阅读 · 2 评论