自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 基于AST语法树的sql语句动态修改

上述demo已将出入参数解析出来了,如得入参为#{c}, 将#{c}动态注入替换到SQL中。提取查询语句的出入参(WHERE条件参数),提取查询语句的出参(SELECT后面的字段)阿里巴巴的druid线程池中,存在对SQL语句的语法树解析,依赖如下。在以下代码中,能够提取语句中入参为c,出参为A,b。经过以下代码,假设c=3,则SQL变为如下。

2023-10-17 10:22:31 469

原创 Docker 安装 ElasticSearch

Centos安装ElasticSearch访问ElasticSearch中文社区下载ElasticSearch。 Centos则下载tar后缀wget下面地址 ElasticSearch 地址tar -zxvf elasticsearch-6.6.0.tar.gz解压文件修改/etc/security/limits.conf文件# 添加下方代码# elastic-user 下面elastic为执行用户名 elastic soft nofile 65536 elastic hard no

2020-08-08 22:13:30 108

原创 Docker 安装 Redis

docker run --name redis -p 6379:6379 --restart=always -v /usr/redis/data:/data -v /usr/redis/conf/redis.conf:/etc/redis/redis.conf -d redis:latest redis-server --appendonly yes

2020-08-08 22:12:54 85

原创 Mysql解决only_full_group_by问题

出错原因mysql在5.7以上的***sql_mode***中存在***only_full_group_by***模式在only_full_group_by这种模式下,使用group by语句进行查询时,所要查询的语句必须依赖于group by子句中所列出的列,也就是group by要以查询的字段可以通过使用查询到存在 only_full_group_byselect @@global.sql_mode; //全局配置select @@sql_mode;//已存在数据库配置解決window在

2020-08-08 22:12:02 497

原创 Mysql索引数据结构

索引Hash Mysql使用的数据结构优点根据HashCode计算得到存储位置的下标,速度快,时间复杂度O(1)缺点Hash结构会造成Hash碰撞,HashMap通过高16位异或低16位减少Hash冲突。利用Hash存储的话需要将所有的数据文件添加到内存中,比较耗费内存。Hash等值查询效率快,但不支持范围查询,需要从前往后扫描一遍,时间复杂度O(n)二叉树与红黑树缺点每个节点存放一个数据。而内存从磁盘取回一个大小为4k的整数倍的大小的块,Mysql默认读取16k的大小节点一多,

2020-08-08 22:11:28 203

原创 CAS、volatile、synchronized

进程操作系统资源分配的基本单位。分配内存、网络等。线程操作系统、CPU执行的基本单位CASCAS定义CAS Compare And Swap 比较并交换 (自旋锁、无锁)。不需要加锁能保证线程同步、线程安全的机制。cas(v,a,b) 变量v 期待值a 修改值b 内存中的值与a相等 则设置成功 否则自选继续设置CAS底层实现CAS的底层是UnSafe + CAS自旋AtomicInteger原子类 AtomicInteger atomicInteger = new

2020-08-08 22:10:03 149

原创 Reids系列: Redis哨兵模式(Sentinel) (五)

哨兵模式介绍Redis-Sentinel是官方推荐的高可用解决方案,当redis在做master-slave的高可用方案时,假如master宕机了,redis本身(以及其很多客户端)都没有实现自动进行主备切换,而redis-sentinel本身也是独立运行的进程,可以部署在其他与redis集群可通讯的机器中监控redis集群。Sentinel配置启动与故障转移(failover)环境准备主机说明主机IP端口sentinel端口master192.168.250.1327

2020-08-08 22:06:46 150

原创 Reids系列: Redis主从复制 (四)

主从复制主次复制作用数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接主节点,读Redis数据时应用连接从节点),分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量。读写分离:可以用于实现读写分离,主库写、从库读,

2020-08-08 22:06:15 103

原创 Reids系列: Redis事务 (三)

Redis的事务中启用的是乐观锁,只负责监测key没有被改动.如果没变正常执行,如果有变事务取消import redis.clients.jedis.Jedis;import redis.clients.jedis.Transaction;import java.util.List;import java.util.UUID;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;p

2020-08-08 22:05:48 75

原创 Reids系列: Redis配置文件介绍及持久化 (二)

Redis配置文件介绍及持久化Redis配置文件# vi redis.conf daemonize yes #是否以后台进程运行 pidfile /var/run/redis/redis-server.pid #pid文件位置 port 6379#监听端口 bind 127.0.0.1 #绑定地址,如外网需要连接,设置0.0.0.0 timeout 300 #连接超时时间,单位秒 loglevel notice #日志级别,分别有: # debug :适用于开发和测试

2020-08-08 22:05:14 71

原创 Reids系列: Redis基本介绍及类型 (一)

Redis基本介绍Redis 简介Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。Redis 与其他 key - value 缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等 数据结构的存储。Redis支持数据的备份,即master-slave模式的数据备份。Redis优

2020-08-08 22:02:25 89

空空如也

空空如也

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

TA关注的人

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