自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (7)
  • 收藏
  • 关注

原创 Sharding Sphere学习笔记

1、基本概念(1)什么是 Sharding Sphere(2)分库分表2、Sharding-JDBC 分库分表操作3、Sharding-Proxy 分库分表操作什么是 ShardingSphere1、一套开源的分布式数据库中间件解决方案2、有三个产品:Sharding-JDBC 和 Sharding-Proxy3、定位为关系型数据库中间件,合理在分布式环境下使用关系型数据库操作什么是分库分表1、数据库数据量不可控的,随着时间和业务发展,造成表里面数据越来越多,如果再去对数据库表 cur.

2021-05-27 10:36:27 156

原创 Mycat学习之路(八)

第八章 Mycat 监控工具8.1 Mycat-web 简介Mycat-web 是 Mycat 可视化运维的管理和监控平台,弥补了 Mycat 在监控上的空白。帮 Mycat 分担统计任务和配置管理任务。Mycat-web 引入了 ZooKeeper 作为配置中心,可以管理多个节点。Mycat-web 主要管理和监控 Mycat 的流量、连接、活动线程和内存等,具备 IP 白名单、邮件告警等模块,还可以统计 SQL 并分析慢 SQL 和高频 SQL 等。为优化 SQL 提供依据。8.2 Mycat-

2021-05-27 09:35:42 92

转载 Mycat学习之路(七)

第七章 Mycat 安全设置7.1 权限配置1、user标签权限控制目前 Mycat 对于中间件的连接控制并没有做太复杂的控制,目前只做了中间件逻辑库级别的读写权限控制。是通过 server.xml 的 user 标签进行配置。#server.xml配置文件user部分<user name="mycat"><property name="password">123456</property><property name="schemas">TES

2021-05-27 09:30:37 91

原创 Mycat学习之路(六)

第六章 基于 HA 机制的 Mycat 高可用在实际项目中,Mycat 服务也需要考虑高可用性,如果 Mycat 所在服务器出现宕机,或 Mycat 服务故障,需要有备机提供服务,需要考虑 Mycat 集群。6.1 高可用方案我们可以使用 HAProxy + Keepalived 配合两台 Mycat 搭起 Mycat 集群,实现高可用性。HAProxy实现了 MyCat 多节点的集群高可用和负载均衡, 而 HAProxy 自身的高可用则可以通过Keepalived 来实现。编号角色I

2021-05-27 09:12:21 72

原创 Mycat学习之路(五)

第五章水平拆分 —— 分 表相对于垂直拆分,水平拆分不是将表做分类,而是按照某个字段的某种规则来分散到多个库之中,每个表中 包含一部分数据。简单来说,我们可以将数据的水平切分理解为是按照数据行的切分,就是将表中的某些行切分 到一个数据库,而另外的某些行又切分到其他的数据库中,如图:5.1 实现1 、 选择要拆分的表MySQL 单表存储数据条数是有瓶颈的,单表达到 1000 万条数据就达到了瓶颈,会影响查询效率,需要进行水平拆分(分表)进行优化。例如:例子中的 orders、orders_deta

2021-05-27 09:03:32 104

原创 Mycat学习之路(四)

第四章 垂直拆分 —— 分库一个数据库由很多表的构成,每个表对应着不同的业务,垂直切分是指按照业务将表进行分类,分布到不同 的数据库上面,这样也就将数据或者说压力分担到不同的库上面,如下图:系统被切分成了,用户,订单交易,支付几个模块。4.1 如何划分表一个问题:在两台主机上的两个数据库中的表,能否关联查询?答案:不可以关联查询。分库的原则:有紧密关联关系的表应该在一个库里,相互没有关联关系的表可以分到不同的库里#客户表 rows:20万CREATE TABLE customer(id

2021-05-27 08:40:08 55

原创 Mycat学习之路(三)

第三章 搭建读写分离我们通过 Mycat 和 MySQL 的主从复制配合搭建数据库的读写分离,实现 MySQL 的高可用性。我们将搭建:一主一从、双主双从两种读写分离模式。3.1 搭建 一主一从一个主机用于处理所有写请求,一台从机负责所有读请求,架构图如下1 、 搭建 MySQL 数据库主从复 制① MySQL 主从复制原理② 主机配置(host79)修改配置文件:vim /etc/my.cnf#主服务器唯一IDserver-id=1#启用二进制日志log-bin=mysql-b

2021-05-27 08:29:17 97 1

原创 Mycat学习之路(二)

第二章 安装启动2.1 安装1 、 解压后 即可使用解压缩文件拷贝到 linux 下 /usr/local/2 、 三个 配置 文件①schema.xml:定义逻辑库,表、分片节点等内容② rule.xml: 定义分片规则③server.xml:定义用户以及系统相关变量,如端口等2.2 启动1 、 修改配置文件 server.xml修改用户信息,与MySQL区分,如下:<user name="mycat"><property name="password">1

2021-05-27 08:24:55 73

原创 Mycat学习之路(一)

第一章 入门概述1.1 是什么Mycat 是数据库中间件。1 、 数据库中间件中间件:是一类连接软件组件和应用的计算机软件,以便于软件各部件之间的沟通。例子:Tomcat,web中间件。数据库中间件:连接java应用程序和数据库2 、 为什么要用Mycat ?① Java与数据库紧耦合。② 高访问量高并发对数据库的压力。③ 读写请求数据不一致3 、 数据库中间件对比① Cobar属于阿里B2B事业群,始于2008年,在阿里服役3年多,接管3000+个MySQL数据库的schema,

2021-05-27 08:18:37 72

原创 Java NIO

Java NIO 简介Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的Java IO API。NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的、基于通道的IO操作。NIO将以更加高效的方式进行文件的读写操作。Java NIO 与 IO 的主要区别1- 通道(Channel) 与缓冲区(Buffer)通道和缓冲区⚫ Java NIO系统的核心在于:通道(Channel)和缓冲区(Buffer)。通道表示打开到

2021-05-26 20:06:54 59

转载 Sharding-jdbc与Sharding-Proxy

Sharding-JDBCSharding-JDBC 采用在 JDBC 层扩展分库分表,支持读写分离,是一个以 jar 形式提供服务的轻量级组件,其核心思路是小而美地完成最核心的事情,基于 JDBC 层进行分片的好处是轻量、简单、兼容性好以及无需额外的运维工作。缺点是无法跨语言,目前仅支持 Java。Sharding-JDBC 适用场景对于关系型数据库数据量很大的情况,需要进行水平拆库和拆表(即分库和分表),这种场景很适合使用 Sharding-JDBC。举例说明:假设有一亿数据的用户库,放在 My

2021-05-25 21:28:51 757

转载 SpringCloud微服务架构篇:深入了解Ribbon与Feign

深入Ribbon1、Ribbon客户端负载均衡原理对于一个客户端负载均衡实现方案,主要核心三个步骤:服务发现:能够自动发现所依赖服务的列表服务监听:能够监测到失败的服务,并高效地将失败服务从服务列表中移除负载均衡策略:能够决定如何在多个服务实例中选择一个有效的服务实例,并进行相应的服务请求处理。Ribbon在具体实现上,有以下组件:服务器列表(ServerList)服务器列表就是客户端负载均衡所使用的各服务的服务实例列表。Ribbon在实现上支持3中服务列表方式静态服务器列表:通过Ribb

2021-03-06 14:33:27 99

原创 RocketMQ消费者

@Component@Order(10000)public class RocketMQConsumer implements InitializingBean { Longger logger = LoggerFactory.getLogger(RocketMQConsumer.class); @Value("${rocketm1.namesrv.addr}") private String namesrvAddr; /** * rocket topic 后缀 */ private

2021-03-05 09:40:52 216 1

原创 Redis实现队列加分布式锁

Redis实现队列加分布式锁背景在开发过程中遇到了一个需求,需将页面上传的文件,以及用户个人信息同步添加到物联网硬件,但物联网端服务处理能力较低,响应极慢,且不支持并发;未解决此问题考虑到使用消息队列,但因RabbitMQ或RocketMQ相对来说都是比较重量级的组件,后期运维不便于维护,因此采用Redis队列并使用Redis实现分布式锁,来解决页面响应慢以及并发问题。分析redis实现的分布式锁,实现原理是set方法,因为多个线程同时请求的时候,只有一个线程可以成功并返回结果,还可以设置有效期,来

2021-02-06 15:44:55 176

原创 springcloud config-client启动时@value(name)报注入错误

springcloud config 有服务端与客户端,服务端主要就是从远程git获取配置文件的。如果客户端报注入错误,一般有三个原因:1:检查git上的配置文件中是否有@Value(“${nama}”)中的name2:切记,作为config客户端,pom文件中一定不能有config-server这个依赖,这个依赖只能在config客户端才能使用,而且 服务端也不能有starter-conf...

2019-10-21 14:00:32 682

原创 IDEA实用插件

1.Alibaba Java Code Guidelines阿里巴巴Java开发规约扫描插件2. Background Image Plus背景图片3. Code Glance小地图4. FindBugs-IDEA寻找隐藏bug5. Free Mybatis pluginMapper接口和XML文件之间跳转6. GoogleTranslation翻译,选中右键即可翻译,英译汉...

2019-10-17 08:59:33 73

原创 增加maven仓库,解决某些依赖无法获取

修改maven的setting.xml修改maven安装目录下的conf下的settings.xml 为<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.or...

2019-10-16 17:51:27 164

mycat相关工具.zip

MyCat相关工具

2021-05-26

niodemo.zip

java nio 演示代码

2021-05-26

springboot-es-master.zip

springboot-es-demo

2021-05-20

elasticsearch-analysis-ik-7.12.1.zip

IK分词器-7.12.1

2021-05-20

-agent.zip

2019.2 2019.3激活代理 如果上来就需要注册,选择:试用(Evaluate for free)进入 点击你要注册的菜单:"Configure" 或 "Help" -> "Edit Custom VM Options ..." 如果提示是否要创建文件,请点"Yes"

2020-01-04

luckwheel-master.zip

抽奖实现,非原创,暂时留存,源码地址 https://github.com/s6056826/luckwheel/tree/master

2019-12-20

FastDFS.zip

fastdfs文件服务器安装资源,包含FastDFS安装包,nginx安装资源,

2019-10-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除