<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[WC949464367的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/WC949464367</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; WC949464367]]></copyright><item><title><![CDATA[DDD设计学习]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/136367907</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/136367907</guid><author>WC949464367</author><pubDate>Thu, 29 Feb 2024 15:26:26 +0800</pubDate><description><![CDATA[总体来说，MVC架构设计的技术逻辑非常清晰，controller就是负责交互的，model就是负责业务处理诸如此类；将数据库的操作做隔离，定义接口，并定义实现类用于实现有关数据库的操作，而用户调用只需要调用api，不用管代码中的具体内容(这样如果有业务更改，如换框架操作数据库，只需要修改实现类的具体代码，而不用修改其他地方的代码，做到了隔离)。随着业务需求的不断改变，需要在原有项目代码中不断进行修改，导致代码不断累积。可见代码如下所示，调用了第三方的服务，造成了代码的不稳定性（风控）]]></description><category></category></item><item><title><![CDATA[JVM调优实战]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/130888201</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/130888201</guid><author>WC949464367</author><pubDate>Fri, 26 May 2023 16:18:45 +0800</pubDate><description><![CDATA[如果大小设置成不一样，那么堆内存大小会根据实际需要进行动态的扩张或者是缩小，而这一个过程是耗费一定资源的，影响了程序的执行效率。或者是使用命令：jstack  进程ID | more 可以看到进程中各线程的详细信息，如线程状态，线程调用了哪些方法；5、知道哪个进程有问题，则执行 top -HP 进程id号  命令,可以看到指定进程内，线程占用CPU的情况。2、执行jinfo 进程id号 ，可以获取进程的详细信息，可以看到堆内存设置的大小等。当项目运行一段时间以后，产生了OOM的问题，我们该如何排查问题呢？]]></description><category></category></item><item><title><![CDATA[Kafka]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/130222606</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/130222606</guid><author>WC949464367</author><pubDate>Wed, 19 Apr 2023 14:23:01 +0800</pubDate><description><![CDATA[消费者组：由多个consumer组成。形成一个消费者组的条件，是所有消费者的groupid相同1、消费者组内每个消费者消费不同分区的数据，一个分区只能由一个组内消费者消费2、消费者组之间互不影响。所有消费者都属于某个消费者组，即消费者组是逻辑上的一个订阅者。3、如果向消费者组中添加更多的消费者，超过主题分区数量，则有一部分消费者就会闲置，不会接收任何消息。]]></description><category></category></item><item><title><![CDATA[Spring理论学习]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/130092110</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/130092110</guid><author>WC949464367</author><pubDate>Wed, 12 Apr 2023 13:04:33 +0800</pubDate><description><![CDATA[是一种设计思想，而不是一个具体的技术实现。IoC 的思想就是将原本在程序中手动创建对象的控制权，交由 Spring 框架来管理。不过， IoC 并非 Spring 特有，在其他语言中也有应用。将对象之间的相互依赖关系交给 IoC 容器来管理，并由 IoC 容器完成对象的注入。这样可以很大程度上简化应用的开发，把应用从复杂的依赖关系中解放出来。IoC 容器就像是一个工厂一样，当我们需要创建一个对象的时候，只需要配置好配置文件/注解即可，完全不用考虑对象是如何被创建出来的。]]></description><category></category></item><item><title><![CDATA[牛客过第二遍]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/130044047</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/130044047</guid><author>WC949464367</author><pubDate>Mon, 10 Apr 2023 12:14:31 +0800</pubDate><description><![CDATA[通过TransactionTemplate管理事务，并通过它执行数据库的操作。2、通过注解，声明某方法的事务特征，注解@Transactional。假如在A方法中，调用了B方法，而B方法是事务操作，则A为B的外部事务。isolation ：隔离级别；propagation ：传播机制。@Transactional 注解参数讲解。1 通过XML配置，声明某方法的事务特征。传播机制比较难理解，这里粗略说一下。Spring事务管理。]]></description><category></category></item><item><title><![CDATA[JUC部分需要深究的知识点]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/130028223</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/130028223</guid><author>WC949464367</author><pubDate>Sat, 08 Apr 2023 14:11:43 +0800</pubDate><description><![CDATA[这种方式需要定义一个类，实现Callable接口，并实现call()方法，然后创建该类的对象，并作为参数传递给FutureTask类的构造器，创建FutureTask对象，并作为参数传递给Thread类的构造器，创建Thread对象，并调用start()方法启动线程。通过使用线程池创建线程。这种方式需要定义一个类，实现Runnable接口，并实现run()方法，然后创建该类的对象，并作为参数传递给Thread类的构造器，创建Thread对象，并调用start()方法启动线程。]]></description><category></category></item><item><title><![CDATA[Redis进阶]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/129977805</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/129977805</guid><author>WC949464367</author><pubDate>Wed, 05 Apr 2023 22:43:13 +0800</pubDate><description><![CDATA[什么是持久化？利用存储介质将数据进行保存，在特定的时间将保存的数据进行恢复的工作机制称为持久化。为什么要持久化数据的意外，确保数据持久化过程保存什么。]]></description><category></category></item><item><title><![CDATA[计算机网络]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/129855470</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/129855470</guid><author>WC949464367</author><pubDate>Thu, 30 Mar 2023 13:22:28 +0800</pubDate><description><![CDATA[缓存处理：HTTP1.中缓存处理能力较弱，只能使用header中的If-Modified-Since来判断文件是否被修改过，而HTTP1.1则引入了更多的缓存控制策略，如Cache-Control和ETag等，能更好地支持缓存机制。（请求消息和响应消息都可使用），它支持一个可扩展的指令子集：例如max-age指令支持相对时间戳；private和no-store指令禁止对象被缓存；no-transform阻止Proxy进行任何改变响应的行为。，它的值entity tag可以用来唯一的描述一个资源。]]></description><category></category></item><item><title><![CDATA[JAVA基础回顾]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/129729094</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/129729094</guid><author>WC949464367</author><pubDate>Fri, 24 Mar 2023 09:48:08 +0800</pubDate><description><![CDATA[在同一个类中，方法名相同，参数不同的方法。与返回值无关。参数不同：个数不同、类型不同、顺序不同(符合其一则是重载）如果参数相同，则不构成重载关系如不在同一个类中，则不构成重载关系。]]></description><category></category></item><item><title><![CDATA[MYSQL进阶]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/125894156</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/125894156</guid><author>WC949464367</author><pubDate>Thu, 09 Mar 2023 20:41:44 +0800</pubDate><description><![CDATA[聚集索引和二级索引的区别。]]></description><category></category></item><item><title><![CDATA[并查集的学习]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/128005604</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/128005604</guid><author>WC949464367</author><pubDate>Fri, 02 Dec 2022 17:06:14 +0800</pubDate><description><![CDATA[在数组中寻找，根据下标找到对应的元素，该元素如若不等于下标，则为该下标的父节点。当下标值等于对应下标元素的值，便是找到所要查找元素分组的标识符，思路图如下所示。并查集的路径压缩优化（以上方法可能会生成线性树，使得查找的最大时间复杂度为On)，为了降低查找的时间复杂度，提高find的效率，我们可以在合并的时候，将小树合并到大树中，最大程度降低树的深度。3、一个组中的数据对应的树和另外一个组中的数据对应的树之间没有任何联系。4、元素在树中没有子父级关系的硬性要求。1、查询元素p和元素q是否属于同一组。]]></description><category></category></item><item><title><![CDATA[基础算法研究分析]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/127987794</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/127987794</guid><author>WC949464367</author><pubDate>Tue, 22 Nov 2022 20:22:24 +0800</pubDate><description><![CDATA[先在一个高温状态下，逐渐退火，在每个温度下慢慢冷却，最终达到物理基态(相当于算法找到最优解）退火过程由一组初始参数，即冷却进度表控制，即冷却进度表控制。模拟退火算法属于贪心算法，在其过程中引入随机因素，以一定概率接收一个比当前解要差的解(避免进入局部最优的情况）在解空间中随机寻找目标函数的全局最优解。即在局部最优解的空间内能概率性地跳出并趋于全局最优。模拟退火在某一初温下，伴随温度的不断下降，结合。马尔可夫链的长度Lk:任意温度的迭代次数。2、控制温度T的衰减函数(温度的更新）1、控制温度参数的初值T0。]]></description><category></category></item><item><title><![CDATA[经典排序算法JAVA实现]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/127948319</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/127948319</guid><author>WC949464367</author><pubDate>Sun, 20 Nov 2022 14:26:52 +0800</pubDate><description><![CDATA[进行交换，然后，在剩余未排序元素中继续找出最小元素，将其与已排序数列的末尾位置元素交换。以此类推，直至所有元素均排序完毕.复杂度为n2，复杂度还是相当高的。快速排序的时间复杂度在最坏情况下是O(N2)，平均的时间复杂度是O(N*lgN)。选择排序即是采用交换次数最少的方针进行排序，选择排序的交换次数要远远少于冒泡排序。选择排序算法是不稳定的，值相同的元素的相对位置可能会发生改变，这一点需要特别注意。逐层排序二叉树所需的最少操作数目用到了选择排序算法。首先在未排序数列中找到。]]></description><category></category></item><item><title><![CDATA[指令重排序的原理]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/127090977</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/127090977</guid><author>WC949464367</author><pubDate>Wed, 28 Sep 2022 15:53:55 +0800</pubDate><description><![CDATA[这就存在一个问题，CPU的运算速度要远快于对内存的操作，将工作内存数据写入主内存即物理内存时，如果两个CPU同时需要写入同一块内存区域，这就需要一个CPU等待另一个CPU写入完成后再写，这就造成了CPU的浪费，而这种情况在单核CPU是不存在的，所以需要指令重排序。在并发程序中，程序员会特别关注不同进程或线程之间的数据同步，特别是多个线程同时修改同一变量时，必须采取可靠的同步或其它措施保障数据被正确地修改，这里的一条重要原则是：不要假设指令执行的顺序，你无法预知不同线程之间的指令会以何种顺序执行。]]></description><category></category></item><item><title><![CDATA[JVM基础学习]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/126558137</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/126558137</guid><author>WC949464367</author><pubDate>Fri, 23 Sep 2022 16:05:18 +0800</pubDate><description><![CDATA[1、方法区JDK8以前，用永久代实现方法区，即选择把收集器的分代设计扩展至方法区，使得HOTSpot的垃圾收集器能够像管理JAVA堆一样管理这部分内存，省去专门为方法区编写内存够管理代码的工作，即将方法区放在虚拟机中，由JVM来统一管理，弊端便是容易内存溢出。JDK8后，废弃永久代概念，用本地内存(非常大，不容易溢出）管理进程和元空间（存放常量池、静态变量等），字符串常量池移至JAVA堆中。所以限制方法区的容量对其毫无影响。二进制字节码的组成：类的基本信息、常量池、类的方法定义（包含了虚拟机指令）]]></description><category></category></item><item><title><![CDATA[JAVA集合源码]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/126855073</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/126855073</guid><author>WC949464367</author><pubDate>Wed, 14 Sep 2022 21:09:36 +0800</pubDate><description><![CDATA[数组的劣势，集合的优势集合的总体框架体系如下图。]]></description><category></category></item><item><title><![CDATA[动态规划（01背包，完全背包的应用）]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/126291020</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/126291020</guid><author>WC949464367</author><pubDate>Thu, 11 Aug 2022 18:40:30 +0800</pubDate><description><![CDATA[有约束条件，背包的元素不可以重复使用，值唯一，是01背包问题，可写成如下代码正序遍历物品元素，倒序遍历背包（约束条件）]]></description><category></category></item><item><title><![CDATA[仿牛客论坛项目]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/126087138</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/126087138</guid><author>WC949464367</author><pubDate>Sun, 31 Jul 2022 17:19:40 +0800</pubDate><description><![CDATA[仿牛客论坛项目]]></description><category></category></item><item><title><![CDATA[redis入门练习]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/125961504</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/125961504</guid><author>WC949464367</author><pubDate>Sun, 24 Jul 2022 17:41:17 +0800</pubDate><description><![CDATA[springboot整合redis的基本操作]]></description><category></category></item><item><title><![CDATA[SQL基本语句练习]]></title><link>https://blog.youkuaiyun.com/WC949464367/article/details/125831959</link><guid>https://blog.youkuaiyun.com/WC949464367/article/details/125831959</guid><author>WC949464367</author><pubDate>Mon, 18 Jul 2022 20:50:02 +0800</pubDate><description><![CDATA[SQL基本语句练习]]></description><category></category></item></channel></rss>