<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[笔记小屋]]></title><description><![CDATA[新奇的事物总是吸引着爱冒险的人们！Good Luck!]]></description><link>https://blog.youkuaiyun.com/randompeople</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; randompeople]]></copyright><item><title><![CDATA[领域模型的代码结构梳理]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/119852857</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/119852857</guid><author>randompeople</author><pubDate>Tue, 23 Aug 2022 20:36:32 +0800</pubDate><description><![CDATA[工程结构介绍
模块依赖关系
                                  --------------
                                  |            |
                                  |   common   |
                                  |            |
                                  ------------]]></description><category></category></item><item><title><![CDATA[系统设计注意事项]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/125831335</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/125831335</guid><author>randompeople</author><pubDate>Sun, 17 Jul 2022 14:12:09 +0800</pubDate><description><![CDATA[系统设计]]></description><category></category></item><item><title><![CDATA[互联网技术同学如何写PPT]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/121888467</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/121888467</guid><author>randompeople</author><pubDate>Sat, 16 Jul 2022 11:06:21 +0800</pubDate><description><![CDATA[每天都在写材料]]></description><category></category></item><item><title><![CDATA[kafka与消息队列]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/122634521</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/122634521</guid><author>randompeople</author><pubDate>Sat, 22 Jan 2022 16:15:39 +0800</pubDate><description><![CDATA[kafka定义
Apache kafka is a distributed streaming platform，即官方定义 kafka 是一个分布式流式计算平台。而在大部分企业开发人员中，都是把 kafka 当成消息系统使用，即它是一个分布式消息队列，很少会使用 kafka 的流式计算。
消息队列的特点
模式
这个模式主要是针对消费者来讲的，生产者是无模式概念说法的，生产者生产消息都是主动的。

点对点
pull模式，消费者主动拉取消息，消费者根据自身性能，消费的快就多拉消息，消费的慢就少消费，同时pul]]></description><category></category></item><item><title><![CDATA[背包问题九讲的总结]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/120169822</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/120169822</guid><author>randompeople</author><pubDate>Sun, 16 Jan 2022 18:06:44 +0800</pubDate><description><![CDATA[背包问题的奇妙设计]]></description><category></category></item><item><title><![CDATA[线程池submit方法如何获取执行结果]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/120659073</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/120659073</guid><author>randompeople</author><pubDate>Sat, 15 Jan 2022 21:22:20 +0800</pubDate><description><![CDATA[FutureTask 来获取线程结果]]></description><category></category></item><item><title><![CDATA[DDD领域驱动设计：概念解析]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/121676955</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/121676955</guid><author>randompeople</author><pubDate>Sat, 15 Jan 2022 20:09:49 +0800</pubDate><description><![CDATA[高内聚、低耦合]]></description><category></category></item><item><title><![CDATA[mysql一些刁难的查询问题]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/122180598</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/122180598</guid><author>randompeople</author><pubDate>Sun, 02 Jan 2022 17:26:30 +0800</pubDate><description><![CDATA[1、SQL18 获取当前薪水第二多的员工的emp_no以及其对应的薪水salary
select e.emp_no, s.salary, e.last_name, e.first_name
from salaries as s
join employees as e on e.emp_no = s.emp_no

where s.salary = 
(select s1.salary from salaries as s1 join salaries as s2 
 on s1.salary &lt;= s]]></description><category></category></item><item><title><![CDATA[秒杀场景设计核心：热点数据]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/121886371</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/121886371</guid><author>randompeople</author><pubDate>Sun, 12 Dec 2021 15:35:35 +0800</pubDate><description><![CDATA[秒杀场景遇到的问题]]></description><category></category></item><item><title><![CDATA[mysql事务提交前，索引会更新吗]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/120921979</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/120921979</guid><author>randompeople</author><pubDate>Sun, 12 Dec 2021 12:23:45 +0800</pubDate><description><![CDATA[前言
今天突然奇想，想着如果开启了一个事务，这个事务是修改一条数据记录的索引字段数据，那么这个事情索引会不会立马更新掉，还是等事务提交后再更新
我的理解
我理解是会立马更新的，因为一般来说除了串行化这种隔离级别，其他隔离级别都是支持并行的，某种程度上是可以读取到其他事务的东西，只不过RC这个隔离级别采取了MVCC，但其实还是会更新数据，只不过通过版本链来控制数据透出，所以这里还是会更新索引的，这样就存在下面两个情况

本事务内还可以根据索引字段搜索到数据
其他事务根据索引查不到数据

另一个问题
索引更新这]]></description><category></category></item><item><title><![CDATA[selenium爬虫]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/121588744</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/121588744</guid><author>randompeople</author><pubDate>Tue, 30 Nov 2021 00:13:16 +0800</pubDate><description><![CDATA[selenium
调取浏览器来访问网站，获取网站的相关信息，除了淘宝、京东这类爬取数据难搞，其他都还好，今天我们看下如何实现这类代码逻辑，
安装库包
// 利用安装pip安装
pip install jupyter

// 打开 jupyter
jupyter notebook 

1、下载selenium模块：
　　　　pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple selenium
　　　　或者在pycharm中下载
2、安装浏览器驱动
]]></description><category></category></item><item><title><![CDATA[分布式架构关于数据分页问题]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/116724374</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/116724374</guid><author>randompeople</author><pubDate>Sun, 14 Nov 2021 15:56:13 +0800</pubDate><description><![CDATA[分布式数据库的分页方案
业界难题-“跨库分页”的四种方案
ES分页看这篇就够了

]]></description><category></category></item><item><title><![CDATA[CurrentHashMap设计]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/117396498</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/117396498</guid><author>randompeople</author><pubDate>Sun, 07 Nov 2021 23:57:58 +0800</pubDate><description><![CDATA[1.7 VS 1.8
JDK1.7中，采取的是 Segment分段锁（继承ReentrantLock分段锁锁来实现的，1.8采取的是Node+CAS+Synchronized实现线程安全，
为什么这么设计


锁粒度降低了
不采用 segment 而采用 node，锁住 node 来实现减小锁粒度。


官方对synchronized进行了优化和升级，使得synchronized不那么“重”了
如果是线程并发量不大的情况下,那么Synchronized因为自旋锁,偏向锁,轻量级锁的原因,不用将等待线程挂起,]]></description><category></category></item><item><title><![CDATA[领域模型的模型结构]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/119852575</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/119852575</guid><author>randompeople</author><pubDate>Sun, 22 Aug 2021 15:11:16 +0800</pubDate><description><![CDATA[common层
通用工具层
domain层
定义抽象的领域模型，抽象领域的能力和entity，
resource层
提供具体的领域层的实现类，外部接口、表操作相关的各类Repository类，


Adaptor层
适配domain层与外部层的处理逻辑


Repository
外部接口、表操作相关接口，dao、mapper等，


静态变量、常量


biz业务层


flow层
业务工作流，里面操作各类domain


Handler层
外部的消息处理层


schedule
定时任务层


api
d]]></description><category></category></item><item><title><![CDATA[设计模式的区别]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/111191685</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/111191685</guid><author>randompeople</author><pubDate>Sun, 15 Aug 2021 17:05:01 +0800</pubDate><description><![CDATA[适配器与装饰器模式的区别
装饰器与适配器都有一个别名叫做 包装模式(Wrapper)，它们看似都是起到包装一个类或对象的作用，但是使用它们的目的很不一一样。

适配器模式的意义是要将一个接口转变成另一个接口，它的目的是通过改变接口来达到重复使用的目的。
装饰器模式不是要改变被装饰对象的接口，而是恰恰要保持原有的接口，但是增强原有对象的功能，或者改变原有对象的处理方式而提升性能。所以这两个模式设计的目的是不同的。

适配器模式：一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起，做法是将类自己的接口]]></description><category></category></item><item><title><![CDATA[Comparable与Comparator排序对比]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/118651824</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/118651824</guid><author>randompeople</author><pubDate>Sun, 11 Jul 2021 16:29:36 +0800</pubDate><description><![CDATA[Comparable
接口，一般是采取实现类接口compareTo方法的方式来达到内部排序的目的。也就这一个方法，一般也叫做自然排序，也就是实现了就只能按照这个排序规则，不能随意更改排序规则。
例子：
public class Book implements Comparable&lt;Object&gt; { // 定义名为Book的类，默认继承自Object类  
        public int id;// 编号    
      
        public int compareTo(Ob]]></description><category></category></item><item><title><![CDATA[mysql为什么使用索引、什么时候不使用索引]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/116025263</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/116025263</guid><author>randompeople</author><pubDate>Mon, 14 Jun 2021 14:39:16 +0800</pubDate><description><![CDATA[不加索引
没有索引，整张表读取数据，然后利用数据来比较条件，捞出符合条件的数据，表有很多数据，这些数据都会通过磁盘IO来读取，很耗时。
加索引
加索引后 ，通过索引可以找到主键，根据主键id去聚簇索引里读取数据，更准确的找到数据所在的页，减少磁盘IO。
总结
手段是加索引，目的是减少磁盘IO。

...]]></description><category></category></item><item><title><![CDATA[mysql锁事]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/117223356</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/117223356</guid><author>randompeople</author><pubDate>Wed, 26 May 2021 18:55:07 +0800</pubDate><description><![CDATA[select 语句 需要加锁的只有2种场景：

加排他锁可以使用select …for update语句
加共享锁可以使用select … lock in share mode语句


]]></description><category></category></item><item><title><![CDATA[mysql MVCC不能避免幻读]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/115721073</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/115721073</guid><author>randompeople</author><pubDate>Mon, 17 May 2021 09:52:14 +0800</pubDate><description><![CDATA[幻读
并发情况下，A事务读取了一条记录，此时B事务插入一条记录，A事务又读取，读到了两条数据，此时就造成了读取数据不一致，一般到这幻读通常说的是事务提交了，而且是指删除、插入带来的问题。
问题
mysql MVCC 多版本并发控制中我们介绍了什么是MVCC，MVCC会为每个事务生成一个某个时间点的快照数据，保证事务内可以避免每次读数据不一致的问题，是RC、RR隔离级别下用于提高数据库性能，避免频繁锁，读写分离实现的一种方式，既然读快照信息，那么是不是MVCC就可以避免幻读，因为事务已经有了快照数据，如果这样]]></description><category></category></item><item><title><![CDATA[区块链是什么]]></title><link>https://blog.youkuaiyun.com/randompeople/article/details/116889226</link><guid>https://blog.youkuaiyun.com/randompeople/article/details/116889226</guid><author>randompeople</author><pubDate>Sun, 16 May 2021 15:34:44 +0800</pubDate><description><![CDATA[区块链
区块链本质上是一个去中心化的分布式账本数据库。
区块链解决什么问题
区块链解决信任问题，就是一旦写进去的数据，不能随意篡改，或者说没法篡改，也就保证数据一定是本人操作的，里面的数据也都是正确的，因为没人可以篡改，但中心化的账本会有一个管理员，管理员可以篡改数据，比如银行给你多转了100元，银行会把100元收回去，所以管理员如果天抽风，账号清零多恐怖。
区块链构成
只要了解区块链，才能知道为什么它解决了信任问题，首先它是一个数据库，也就是里面可以存储数据，数据格式是什么呢？难道跟我们的表结构一样，需要]]></description><category></category></item></channel></rss>