SprinCloud相关组件都是干嘛的

  1. 使用到
    Spring Cloud Config
    Spring
    配置管理工具包,让你可以把配置放到远程服务器,集中化管理集群配置,目前支持本地存储、Git以及Subversion。
  2. 使用到
    Spring Cloud Bus
    Spring
    事件、消息总线,用于在集群(例如,配置变化事件)中传播状态变化,可与Spring Cloud Config联合实现热部署。
  3. 使用到
    Eureka
    Netflix
    云端服务发现,一个基于 REST 的服务,用于定位服务,以实现云端中间层服务发现和故障转移。
  4. 使用到
    Hystrix
    Netflix
    熔断器,容错管理工具,旨在通过熔断机制控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。
  5. 使用到
    Zuul
    Netflix
    Zuul 是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门。

Archaius
Netflix
配置管理API,包含一系列配置管理API,提供动态类型化属性、线程安全配置操作、轮询框架、回调机制等功能。
7. 使用到
Consul
HashiCorp
封装了Consul操作,consul是一个服务发现与配置工具,与Docker容器可以无缝集成。
8.
Spring Cloud for Cloud Foundry
Pivotal
通过Oauth2协议绑定服务到CloudFoundry,CloudFoundry是VMware推出的开源PaaS云平台。
9. 使用到
Spring Cloud Sleuth
Spring
日志收集工具包,封装了Dapper和log-based追踪以及Zipkin和HTrace操作,为SpringCloud应用实现了一种分布式追踪解决方案。
10.
Spring Cloud Data Flow
Pivotal
大数据操作工具,作为Spring XD的替代产品,它是一个混合计算模型,结合了流数据与批量数据的处理方式。
11.
Spring Cloud Security
Spring
基于spring security的安全工具包,为你的应用程序添加安全控制。
12.
Spring Cloud Zookeeper
Spring
操作Zookeeper的工具包,用于使用zookeeper方式的服务发现和配置管理。
13.
Spring Cloud Stream
Spring
数据流操作开发包,封装了与Redis,Rabbit、Kafka等发送接收消息。
14.
Spring Cloud CLI
Spring
基于 Spring Boot CLI,可以让你以命令行方式快速建立云组件。
15. 使用到
Ribbon
Netflix
提供云端负载均衡,有多种负载均衡策略可供选择,可配合服务发现和断路器使用。
16. 使用到
Turbine
Netflix
Turbine是聚合服务器发送事件流数据的一个工具,用来监控集群下hystrix的metrics情况。
17. 使用到
Feign
OpenFeign
Feign是一种声明式、模板化的HTTP客户端。
18.
Spring Cloud Task
Spring
提供云端计划任务管理、任务调度。
19.
Spring Cloud Connectors
Spring
便于云端应用程序在各种PaaS平台连接到后端,如:数据库和消息代理服务。
20.
Spring Cloud Cluster
Spring
提供Leadership选举,如:Zookeeper, Redis, Hazelcast, Consul等常见状态模式的抽象和实现。
21.
Spring Cloud Starters
Pivotal
Spring Boot式的启动项目,为Spring Cloud提供开箱即用的依赖管理。

中文文档
https://springcloud.cc/spring-cloud-dalston.html

常见的消息
kafka中文官网
http://kafka.apachecn.org/

Kafka官方文档主页
http://ifeve.com/kafka-home/

RabbitMQ
是使用Erlang编写的一个开源的消息队列,本身支持很多的协议:AMQP,XMPP, SMTP, STOMP,也正是如此,使的它变的非常重量级,更适合于企业级的开发。同时实现了一个经纪人(Broker)构架,这意味着消息在发送给客户端时先在中心队列排队。对路由(Routing),负载均衡(Load balance)或者数据持久化都有很好的支持。

Redis

是一个Key-Value的NoSQL数据库,开发维护很活跃,虽然它是一个Key-Value数据库存储系统,但它本身支持MQ功能,所以完全可以当做一个轻量级的队列服务来使用。对于RabbitMQ和Redis的入队和出队操作,各执行100万次,每10万次记录一次执行时间。测试数据分为128Bytes、512Bytes、1K和10K四个不同大小的数据。实验表明:入队时,当数据比较小时redis的性能要高于RabbitMQ,而如果数据大小超过了10K,Redis则慢的无法忍受;出队时,无论数据大小,Redis都表现出非常好的性能,而RabbitMQ的出队性能则远低于Redis。


ZeroMQ

号称最快的消息队列系统,尤其针对大吞吐量的需求场景。ZMQ能够实现RabbitMQ不擅长的高级/复杂的队列,但是开发人员需要自己组合多种技术框架,技术上的复杂度是对这MQ能够应用成功的挑战。ZeroMQ具有一个独特的非中间件的模式,你不需要安装和运行一个消息服务器或中间件,因为你的应用程序将扮演了这个服务角色。你只需要简单的引用ZeroMQ程序库,可以使用NuGet安装,然后你就可以愉快的在应用程序之间发送消息了。但是ZeroMQ仅提供非持久性的队列,也就是说如果down机,数据将会丢失。其中,Twitter的Storm中使用ZeroMQ作为数据流的传输。


ActiveMQ

是Apache下的一个子项目。 类似于ZeroMQ,它能够以代理人和点对点的技术实现队列。同时类似于RabbitMQ,它少量代码就可以高效地实现高级应用场景。RabbitMQ、ZeroMQ、ActiveMQ均支持常用的多种语言客户端 C++、Java、.Net,、Python、 PHP、
Ruby等。

Jafka/Kafka

Kafka是Apache下的一个子项目,是一个高性能跨语言分布式Publish/Subscribe消息队列系统,而Jafka是在Kafka之上孵化而来的,即Kafka的一个升级版。具有以下特性:快速持久化,可以在O(1)的系统开销下进行消息持久化;高吞吐,在一台普通的服务器上既可以达到10W/s的吞吐速率;完全的分布式系统,Broker、Producer、Consumer都原生自动支持分布式,自动实现复杂均衡;支持Hadoop数据并行加载,对于像hadoop的一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka通过Hadoop的并行加载机制来统一了在线和离线的消息处理,这一点也是本课题所研究系统所看重的。Apache
Kafka相对于ActiveMQ是一个非常轻量级的消息系统,除了性能非常好之外,还是一个工作良好的分布式系统。

RocketMQ

RocketMQ是一款分布式、队列模型的消息中间件,具有以下特点: 能够保证严格的消息顺序、提供丰富的消息拉取模式 、高效的订阅者水平扩展能力

实时的消息订阅机制、亿级消息堆积能力

其他一些队列列表HornetQ、Apache Qpid、Sparrow、Starling、Kestrel、Beanstalkd、Amazon SQS就不再一一分析。

索引的类型和常见的索引
https://blog.csdn.net/jacabe/article/details/79422496

Mysql的索引类型
https://mp.weixin.qq.com/s?src=11×tamp=1538139664&ver=1150&signature=iuY2Nzd7GD8UbEzdEB5oSKDbzdm6VVbgPmsBH9RhDTxyGwCoseWzjxaXMy-zyqNXc6s682ha46vFvDIqQxqjWPJjptopHzsCzsmI3jUg8DdBlryZ4GhJqnMZeCWd6-&new=1

Rpc

看到算法也只能死磕

你可能感兴趣的:(文章主路径)