<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[吾行远方]]></title><description><![CDATA[随笔记录]]></description><link>https://blog.youkuaiyun.com/wxyf2018</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wxyf2018]]></copyright><item><title><![CDATA[MySQL中sum和count用法总结]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/106349900</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/106349900</guid><author>wxyf2018</author><pubDate>Tue, 26 May 2020 10:57:34 +0800</pubDate><description><![CDATA[MySQL中sum和count用法总结1.sum2.count例子：要求：查询出2门及2门以上不及格者的平均成绩。3、MySQL 分组之后如何统计记录条数 gourp by 之后的 count()例子4、sum mysql select 横向展示例子1纵向展示横向展示例子2：
1.sum
（1）sum()函数里面的参数是列名的时候，是计算列名的值的相加，而不是有值项的总数。
（2）sum(条件表达式)，如果记录满足条件表达式就加1，统计满足条件的行数
2.count
（1）COUNT()函数里面的参数是列名]]></description><category></category></item><item><title><![CDATA[MySQL Packet for query is too large解决方法]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/106115678</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/106115678</guid><author>wxyf2018</author><pubDate>Thu, 14 May 2020 11:22:43 +0800</pubDate><description><![CDATA[MySQL Packet for query is too large解决方法背景：昨天上线的分配订单业务在读取订单到缓存中时，由于是批量从DB查询读取缓存，一次查询读取数据量较大（ Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (4935 &gt; 2048). You can change this value on the server by setting the max_allowed_pack]]></description><category></category></item><item><title><![CDATA[分布式ID生成算法--雪花算法（SNOWFLAKE）]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/103087023</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/103087023</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:31:27 +0800</pubDate><description><![CDATA[Github源码
https://github.com/souyunku/SnowFlake
分布式ID生成算法的有很多种，Twitter的SnowFlake就是其中经典的一种。
注：
1B就是1个字节。
Byte、KB、B、MB、GB之间的关系是：
Bit——比特 ； B ——字节；KB——千字节；MB——兆字节；GB——吉字节；TB——太字节
1bit=0.125b ；1B=8 Bit   ；...]]></description><category></category></item><item><title><![CDATA[redis分布式锁（4）]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102965026</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102965026</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:30:51 +0800</pubDate><description><![CDATA[redis分布式锁1、灾备切换Sentinel的使⽤1.1、Redis 主从复制可将主节点数据同步给从节点，从节点此时有两个作⽤：1.2、redis主节点挂掉之后应该怎么操作？命令模拟1.3、Sentinel正是实现了这个功能1.4、开启Sentinel配置 3主3从 3主6从1.5、命令讲解1.6、启动所有主从上的sentinel1.7、info Replication 查看节点信息1.8、sh...]]></description><category></category></item><item><title><![CDATA[redis分布式锁（3）]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102964922</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102964922</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:30:15 +0800</pubDate><description><![CDATA[redis分布式锁31、不可不知的Redis⾼性能读写分离1.1、海量并发性能瓶颈处理1.2、对读写能⼒进⾏扩展，采⽤读写分离⽅式解决性能瓶颈1.3、redis已经发现了这个读写分离场景特别普遍，⾃身集成了读写分离供⽤户使⽤。我们只需在redis的配置⽂件⾥⾯加上⼀条，【slaveof host port】语句1.4、配置过程，启动多个redis节点，修改节点⾥⾯的redis.conf配置⽂件1....]]></description><category></category></item><item><title><![CDATA[redis分布式锁（1）]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102929102</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102929102</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:28:55 +0800</pubDate><description><![CDATA[redis分布式锁1、redis分布式锁的使用场景1.1、分布式锁是什么1.2、分布锁设计目的1.3、设计要求1.4、分布锁实现方案分析2、Redis分布式锁的实现2.1、springboot定时任务配置，定时任务配置步骤2.2、本地服务器集群部署同一套代码?2.2.1、面临问题分析3、本地服务器集群部署同一套代码3.1、服务器log日志打印， springboot已经logback4、深入剖析T...]]></description><category></category></item><item><title><![CDATA[redis作为mybatis缓存]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102852325</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102852325</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:27:02 +0800</pubDate><description><![CDATA[1

用户第一次访问的时候获取数据库的值，再次访问时直接从缓存中获取数据
设置缓存过期时间
项目8080端口是对外端口（向外部暴露的端口），区别于内部进程号,查内部端口用ps -ef|grep port，查外部端口用lsof -i:port

2 redis作为mybatis二级缓存
     1、springboot cache的使用：可以结合redis、ehcache等缓存
         ...]]></description><category></category></item><item><title><![CDATA[redis事务]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102837612</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102837612</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:26:32 +0800</pubDate><description><![CDATA[redis事务1、事务介绍1.1、事务的ACID四大特性1.3、事务隔离机制1.4、mysql事务隔离机制和MVCC（多版本并发控制技术）2、redis事务2.1、 MULTI 与 EXEC命令2.2、DISCARD命令2.3、WATCH命令3、redis事务与传统关系型事务的比较3.1、原子性（Atomicity）3.2、 一致性（Consistency）3.3、隔离性（Isolation）3....]]></description><category></category></item><item><title><![CDATA[redis五种数据类型常用指令]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102831946</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102831946</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:25:58 +0800</pubDate><description><![CDATA[redis常用指令1、String1.1、set/get1.2、mget1.3、incr &amp;&amp; incrby1.4、decr &amp;&amp; decrby1.5、setnx1.6、setex1.7、其他命令2、Hash2.1、hash运用场景2.2、Hash命令实例3、List3.1、lpush3.2、lrange3.3、lpop3.4、rpush3.5、rpop4、Set4...]]></description><category></category></item><item><title><![CDATA[多线程容器]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102700403</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102700403</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:25:18 +0800</pubDate><description><![CDATA[1、容器
1.1、同步容器与并发容器

同步容器
Vector、HashTable – JDK提供的同步容器类
Collections.synchronizedXXX 本质是对相应的容器进行包装

同步容器类的缺点
在单独使用里面的方法的时候，可以保证线程安全，但是，复合操作需要额外加锁来保证线程安全
使用Iterator迭代容器或使用使用for-each遍历容器，在迭代过程中修改容器会抛出Con...]]></description><category></category></item><item><title><![CDATA[原子类]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102699854</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102699854</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:24:02 +0800</pubDate><description><![CDATA[1、什么是原子类

一度认为原子是不可分割的最小单位，故原子类可以认为其操作都是不可分割
为什么要有原子类？
对多线程访问同一个变量，我们需要加锁，而锁是比较消耗性能的，JDk1.5之后，新增的原子操作类提供了一种用法简单、性能高效、线程安全地更新一个变量的方式，这些类同样位于JUC包下的atomic包下，发展到JDk1.8，该包下共有17个类，囊括了原子更新基本类型、原子更新数组、原子更新属性、...]]></description><category></category></item><item><title><![CDATA[线程间的通信]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102699754</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102699754</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:23:48 +0800</pubDate><description><![CDATA[1、wait、notify、notifyAll

何时使用
在多线程环境下，有时候一个线程的执行，依赖于另外一个线程的某种状态的改变，这个时候，我们就可以使用wait与notify或者notifyAll
wait跟sleep的区别
wait会释放持有的锁，而sleep不会，sleep只是让线程在指定的时间内，不去抢占cpu的资源
注意点
wait notify必须放在同步代码块中, 且必须拥有当前...]]></description><category></category></item><item><title><![CDATA[并发编程]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/102618959</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/102618959</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:22:29 +0800</pubDate><description><![CDATA[进程与线程的区别
	进程：是系统进行分配和管理资源的基本单位

	线程：进程的一个执行单元，是进程内调度的实体、是CPU调度和分派的基本单位，是比进程更小的独立运行的基本单位。
	线程也被称为轻量级进程,线程是程序执行的最小单位。	

	一个程序至少一个进程，一个进程至少一个线程。

	进程有自己的独立地址空间，每启动一个进程，系统就会为它分配地址空间，建立数据表来维护代码段、堆栈段和数据段，
	...]]></description><category></category></item><item><title><![CDATA[垃圾回收算法]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/103238123</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/103238123</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:21:17 +0800</pubDate><description><![CDATA[垃圾回收算法1、GC垃圾回收2、对象存活算法引用计数法3、对象存活算法可达性分析4、标记清除算法5、标记复制算法6、标记整理算法与分代收集算法
1、GC垃圾回收


为什么要垃圾回收？

Java语言中一个显著的特点就是引入了垃圾回收机制，使c++程序员最头疼的内存管理的问题迎刃而解。由于有个垃圾回收机制，Java中的对象不再有“作用域”的概念，只有对象的引用才有“作用域”。垃圾回收可以有效的防止...]]></description><category></category></item><item><title><![CDATA[java对象]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/103235014</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/103235014</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:20:48 +0800</pubDate><description><![CDATA[java对象1、java对象创建的流程步骤？2、java对象的结构3、怎么访问对象--对象访问定位方式
1、java对象创建的流程步骤？


对象创建的流程步骤包括哪些：


虚拟机遇到一条new指令时，首先检查这个对应的类能否在常量池中定位到一个类的符号引用


判断这个类是否已被加载、解析和初始化


为这个新生对象在Java堆中分配内存空间，其中Java堆分配内存空间的方式主要有以下两种

...]]></description><category></category></item><item><title><![CDATA[JVM内存模型]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/103232603</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/103232603</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:20:26 +0800</pubDate><description><![CDATA[JVM内存模型1、JVM运行时数据区分布图1.1、线程共享数据区：方法区（静态变量）、堆（所有数组和对象都是在堆中产生的）1.2、线程隔离数据区：Java虚拟机栈、本地方法栈（java虚拟机需要调用本地方法库）、程序计数器(主要是用来记录字节指令的行号)。这三块内存是线程私有的，生命周期和线程的生命周期是一样的2、JVM内存模型之程序计算器3、JVM内存模型之java虚拟机栈4、JVM内存模型之本...]]></description><category></category></item><item><title><![CDATA[Docker容器的文件复制与挂载]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/103876286</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/103876286</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:19:32 +0800</pubDate><description><![CDATA[简介：容器与宿主机之间文件复制与挂载
Docker容器的文件复制与挂载从宿主机复制到容器从容器复制到宿主机宿主机文件夹挂载到容器里挂载使用场景举例
从宿主机复制到容器
docker cp 宿主机本地路径 容器名字/ID：容器路径

docker cp /root/123.txt mycentos:/home/




追加写入后。另一个不变
从容器复制到宿主机
docker cp 容器名字/ID：...]]></description><category></category></item><item><title><![CDATA[Docker容器的构建及基本操作]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/103875964</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/103875964</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:18:53 +0800</pubDate><description><![CDATA[简介：Docker容器的创建，查看，停止，重启等
Docker容器的构建及基本操作构建容器查看本地所有的容器：docker ps -a查看本地正在运行的容器：docker ps停止容器：docker stop CONTAINER_ID / CONTAINER_NAME一次性停止所有容器：docker stop $(docker ps -a -q)启动容器：docker start CONTAINE...]]></description><category></category></item><item><title><![CDATA[Docker核心基础之配置阿里云镜像加速]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/103875844</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/103875844</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:18:35 +0800</pubDate><description><![CDATA[Docker核心基础之配置阿里云镜像加速阿里云镜像加速器配置地址配置步骤重启
阿里云镜像加速器配置地址
https://cr.console.aliyun.com/cn-shenzhen/instances/mirrors

配置步骤
vi /etc/docker/daemon.json

{"registry-mirrors": ["https://xxxx.mirror.aliyuncs.co...]]></description><category></category></item><item><title><![CDATA[Docker镜像的搜索下载以及查看删除]]></title><link>https://blog.youkuaiyun.com/wxyf2018/article/details/103875810</link><guid>https://blog.youkuaiyun.com/wxyf2018/article/details/103875810</guid><author>wxyf2018</author><pubDate>Thu, 09 Jan 2020 09:18:09 +0800</pubDate><description><![CDATA[Docker镜像的搜索下载以及查看删除查看本地镜像：docker images搜索镜像：docker search centos搜索镜像并过滤是官方的： docker search --filter "is-official=true" centos搜索镜像并过滤大于多少颗星星的：docker search --filter stars=10 centos下载centos7镜像：docker pu...]]></description><category></category></item></channel></rss>