
中间件、工具
中间件
IT_10-
我爱编程 编程爱我❤️
展开
-
Mycat基本使用
MycatMycat属于数据库中间件,用于连接Java应用程序和MySQL数据库。主要作用如下:读写分离数据分片垂直拆分(分库)、水平拆分(分表)、垂直+水平拆分(分库分表)多数据源整合原理Mycat原理主要是拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等,然后将此SQL发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。安装Mycat官网:http://www.mycat.org.cn/我这里选原创 2020-11-17 16:23:53 · 1340 阅读 · 0 评论 -
RabbitMQ死信队列详解和使用
死信队列死信,在官网中对应的单词为“Dead Letter”“死信”是RabbitMQ中的一种消息机制,当你在消费消息时,如果队列里的消息出现以下情况:消息被否定确认,使用 channel.basicNack 或 channel.basicReject ,并且此时requeue 属性被设置为false。消息在队列的存活时间超过设置的TTL时间。消息队列的消息数量已经超过最大队列长度。那么该消息将成为“死信”。“死信”消息会被RabbitMQ进行特殊处理,如果配置了死信队列信息,那么该消息将原创 2020-05-09 20:01:53 · 1458 阅读 · 1 评论 -
RabbitMQ之消息确认机制(事务、Confirm)
概述在使用RabbitMQ的时候,我们可以通过消息持久化操作来解决因为服务器的异常奔溃导致的消息丢失,除此之外我们还会遇到一个问题,当消息的发布者在将消息发送出去之后,消息到底有没有正确到达broker代理服务器呢?如果不进行特殊配置的话,默认情况下发布操作是不会返回任何信息给生产者的,也就是默认情况下我们的生产者是不知道消息有没有正确到达broker的,如果在消息到达broker之前已经丢失的话,持久化操作也解决不了这个问题,因为消息根本就没到达代理服务器,你怎么进行持久化,那么这个问题该怎么解决呢?转载 2020-05-09 16:18:59 · 379 阅读 · 0 评论 -
Eureka、Ribbon、Feign简介和使用
Eureka注册中心Spring Cloud中提供服务注册中心来管理微服务信息,解决了如下问题:微服务的ip和端口管理在前后台分离大型架构中,服务层被拆成了很多的微服务,前端要进行远程调用后台提供的接口就需要知道服务端的ip地址和端口,注册中心帮助我们管理这些服务器的ip和端口。微服务的状态管理微服务会实时上报自己的状态,注册中心统一管理这些微服务的状态,将存在问题的服务踢出服务列表,...原创 2020-01-19 00:42:28 · 1958 阅读 · 0 评论 -
Lucene简介和使用
全文检索数据分类:结构化数据:格式、长度、类型等固定,如数据库中的数据非结构化数据:格式、长度、类型等不固定,如pdf、html文件数据查询:结构化数据:sql语句非结构化数据:将非结构化数据转换为结构化数据,建立索引然后查询全文检索就是先创建索引然后查询索引的过程全文检索的应用场景:搜索引擎,如百度、谷歌站内搜索,如微博、csdn文章电商搜索,如淘宝、京东等等L...原创 2020-01-19 17:19:10 · 477 阅读 · 0 评论 -
Dubbo(中篇)
《Dubbo+Zookeeper入门(上篇)》1. Dubbo核心功能Remoting:远程通讯,提供对多种 NIO(Dubbo使用了著名的通信框架:Netty) 框架抽象封装,包括“同步转异步”和“请求-响应”模式的信息交换方式。通讯模型BIO:同步并阻塞;NID:异步并阻塞;AIO:异步非阻塞Cluster:服务框架,提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡...原创 2020-01-29 22:16:21 · 313 阅读 · 0 评论 -
Dubbo+Zookeeper(上篇)
RPC概念RPC(Remote Procedure Call)是指远程过程调用,是一种进程间通信方式,是一种技术思想,而不是规范。它允许程序调用另一个地址空间(通常是共享网络的另一台机器)的过程或函数,而不是程序员显示编码这个远程调用的细节。即程序员无论是调用本地的还是远程的函数,本质上编写的调用代码基本相同。RPC基本原理假设A服务器上的程序要调用B服务器上的程序,A、B服务器上执行的...原创 2020-01-27 00:20:11 · 1500 阅读 · 0 评论 -
RabbitMQ简介以及在Spring Boot中使用
在JavaScript中,false类型有: 1.undefined 2.‘ ’ //空字符串 3.null 4.false 5.NaN //值NaN是一个数值,表示一个不能产生正常结果的运算结果,它不能等任何值,包括它自己 6.数字0 其他值都被当做真 true,包括true、字符串“false”、所有对象...原创 2018-07-29 13:55:09 · 1808 阅读 · 0 评论