2020-03-30 18:22
⁄ 工业·编程
⁄ 共 2525字
关于RabbitMQ 与ActiveMQ的文章在网上有很多。个人比较好奇它们的通信机制是怎么样的呢?
消息域
点对点:其实就是生成者者和消费者共用一个队列。当然,消费者和生产者可以有多个。只不过当消息被某个消费者消费后,就会在队列上销毁掉。也就是一条消息,只会被一个消费者消费。
订阅模式:一个发布者,或者多个发布者,共同发布到一个主题。然后订阅者可以订阅该主题。当主题有消息时,多订阅者都能共同接收这些消息。但是如...
ActiveMQ, RabbitMQ, 分布式阅读全文
2020-03-25 07:50
⁄ 工业·编程
⁄ 共 1406字
单机结构
大家最最最熟悉的就是单机结构,一个系统业务量很小的时候所有的代码都放在一个项目中就好了,然后这个项目部署在一台服务器上就好了。整个项目所有的服务都由这台服务器提供。这就是单机结构。
那么,单机结构有啥缺点呢?我想缺点是显而易见的,单机的处理能力毕竟是有限的,当你的业务增长到一定程度的时候,单机的硬件资源将无法满足你的业务需求。此时便出现了集群模式,往下接着看。
集群结构
集群模式在程序猿...
分布式, 区别, 集群阅读全文
2020-02-24 11:06
⁄ 工业·编程
⁄ 共 744字
集群与分布式像一对孪生兄弟,傻傻分不清楚。在我看来,它们之间没有特别明确的分界线,集群离不开分布式,分布式也需要集群。如果一定要做个区分,可以套用一个比喻来描述两者的区别:
一家餐厅刚开业,由于成本限制招了一个厨师,慢慢地,餐厅生意越做越好,一个厨师已经很难应付过来,于是又招了一个,这两个厨师水平相当,都能做同样的事,两个厨师之间的关系就是集群。两厨师除了炒菜,还要负责洗菜、配菜等等的活...
分布式, 区别, 集群阅读全文
2020-02-05 22:25
⁄ 工业·编程
⁄ 共 688字
hypertable是一个高性能,分布式,开源,面向列的数据库(如果完全支持SQL那将是多么变态地强大..)。它被设计为在廉价普通的计算机硬件上存储,处理大量数据的系统,hypertable是以google的bigtable为原型的。
hypertable的原始发行版包含c++ API和HQL(hypertable 查询语句,跟SQL很想)解释器来访问数据。
Hypertable的目的并不是取代传统的关系形数据库,比如mysql或者oracleDB,而是解决巨大的数据量的存储和处理的(从纯技...
hypertable, 分布式阅读全文
2019-09-30 06:39
⁄ 工业·编程
⁄ 共 3083字
分布式锁有几种常用的实现方式:zookeeper、memcached、redis、mysql。这里介绍一下redis的实现方式,并在最后附上了一个Demo小工具:
众所周知,reids锁是通过setnx + expire的方式实现的,setnx保证只有在key不存在时才能set成功,expire保证锁在非正常释放的情况下不会形成死锁。基本原理就是这个,但实际操作中我们需要注意几个问题:
1)setnx与expire是非原子性的,那么如果setnx执行成功、但expire未执行,那么锁也就无法...
Redis, 分布式, 分布式锁阅读全文
2019-01-25 06:02
⁄ 工业·编程
⁄ 共 3434字
直连式存储(简称DAS)
DAS存储是最为常见的存储形式之一,特别是其是在规模比较小的企业中。由于企业本身数据量不大,且光纤交换机等设备价格昂贵,因此基本都采用高密度的存储服务器或者服务器后接JBOD等形式,这种形式的存储属于DAS架构。
对于DAS存储,其实可以是在服务器内部直接连接磁盘组,或者通过外接线连接磁盘阵列两种方式。对于外联的方式通常是通过SAS线进行连接,其实通过FC进行服务器与磁盘阵列的连接也可以理...
分布式, 存储阅读全文
2017-02-07 04:20
⁄ 工业·编程
⁄ 共 1324字
一、大白话解说,半分钟就懂,用生活中的例子来说明:
小饭店原来只有一个厨师,切菜洗菜备料炒菜全干。
后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师都能炒一样的菜,两个厨师的关系是集群。
为了让厨师专心炒菜,把菜做到极致,再请了个配菜师负责切菜,备菜,备料 ... 厨师和配菜师的关系是分布式。
一个配菜师也忙不过来了,又请了个配菜师,两个配菜师关系是集群。
一个配菜师因故请假了,但是其余...
分布式, 区别, 集群阅读全文
2016-07-02 22:54
⁄ 工业·编程
⁄ 共 2031字
1、Eureka 简介:
Eureka 是 Netflix 出品的用于实现服务注册和发现的工具。 Spring Cloud 集成了 Eureka,并提供了开箱即用的支持。其中, Eureka 又可细分为 Eureka Server 和 Eureka Client。
1.基本原理
上图是来自eureka的官方架构图,这是基于集群配置的eureka;
- 处于不同节点的eureka通过Replicate进行数据同步
- Application Service为服务提供者
- Application Client为服务消费者
- Make Remote Call完成一次服务...
Eureka, Zookeeper, 分布式, 区别阅读全文
2016-07-01 22:48
⁄ 工业·编程
⁄ 共 3935字
Eureka的优势
1、在Eureka平台中,如果某台服务器宕机,Eureka不会有类似于ZooKeeper的选举leader的过程;客户端请求会自动切换到新的Eureka节点;当宕机的服务器重新恢复后,Eureka会再次将其纳入到服务器集群管理之中;而对于它来说,所有要做的无非是同步一些新的服务注册信息而已。所以,再也不用担心有“掉队”的服务器恢复以后,会从Eureka服务器集群中剔除出去的风险了。Eureka甚至被设计用来应付范围更广的网络分割故障,...
Euraka, Zookeeper, 分布式阅读全文
2016-06-30 18:58
⁄ 工业·编程
⁄ 共 5386字
Zookeeper 分布式服务框架是 Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。
Zookeeper 从设计模式角度来看,是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper 就将负责通知已经在 Zookeeper 上注册的那些观察者...
Zookeeper, 分布式阅读全文