<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SDAUguo的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/SDAUguo</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; SDAUguo]]></copyright><item><title><![CDATA[关于多线程订阅redis的消息]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/121929381</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/121929381</guid><author>SDAUguo</author><pubDate>Tue, 14 Dec 2021 16:13:02 +0800</pubDate><description><![CDATA[公司项目原来的一个心跳功能是用的redis发布订阅，发现处理速度远远跟不上，然后我试了上多线程，直接重复消费还有数量都对不上了（开了10个线程，每个线程10条数据，但是消费了100多条），redis可以搞一些简单的发布订阅，如果你的某个频道订阅逻辑复杂，尝试拆分为几个频道或者干脆点直接上MQ吧，专业的事情专业的来。
...]]></description><category></category></item><item><title><![CDATA[深入理解JAVA中的观察者模式的实现及原理]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/121748019</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/121748019</guid><author>SDAUguo</author><pubDate>Mon, 06 Dec 2021 15:54:53 +0800</pubDate><description><![CDATA[我们想这样一个业务场景，在一站到底的舞台上，有两名学霸在进行终极battle，每一轮都是主持人提出一个问题，这个时候舞台（勉强这么理解吧）就是被观察者，两名选手就是观察者，观察面前的显示屏状态得到题目，然后进行作答，代码实现如下：


/**
 * 问题实体类
 * Created by guo on 2021/12/6 11:08
 */
@Data
public class Question {
    // 提问人名字
    private String username;
    // 问题内容
]]></description><category></category></item><item><title><![CDATA[手写JDK动态代理]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/121726570</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/121726570</guid><author>SDAUguo</author><pubDate>Sun, 05 Dec 2021 11:01:31 +0800</pubDate><description><![CDATA[在手写JDK动态代理实现之前，我们先看一下我们平时是怎么用的。

举个例子，你想找对象，但是没有时间，只能委托媒婆去帮你找，代码实现如下：


// 一个统一接口
public interface Person {
    // 找对象接口
     void findLove();
}


// 客户类
public class Customer implements Person{

    @Override
    public void findLove() {
        System.ou]]></description><category></category></item><item><title><![CDATA[ERROR 220624 --- [ntainer#2-2-C-1] o.s.k.l.KafkaMessageListenerContainer : Failed to set initial]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/121701651</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/121701651</guid><author>SDAUguo</author><pubDate>Fri, 03 Dec 2021 16:45:16 +0800</pubDate><description><![CDATA[完整报错：


org.apache.kafka.common.errors.TimeoutException: Timeout of 60000ms expired before the position for partition heartbeatMessage1-2 could be determined

2021-12-03 16:17:44.253 ERROR 220624 --- [ntainer#2-1-C-1] o.s.k.l.KafkaMessageListenerContainer ]]></description><category></category></item><item><title><![CDATA[SpringbootKaka批量消费报Listener method could not be invoked with the incoming message]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/121691578</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/121691578</guid><author>SDAUguo</author><pubDate>Fri, 03 Dec 2021 09:59:45 +0800</pubDate><description><![CDATA[结论：在配置文件中加上spring.kafka.listener.type=batch 。

完整报错信息如下：


org.springframework.kafka.listener.ListenerExecutionFailedException: Listener method could not be invoked with the incoming message
Endpoint handler details:
Method [public void com.kafka.gateway.c]]></description><category></category></item><item><title><![CDATA[redisTemplate批量新增hash]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/121660098</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/121660098</guid><author>SDAUguo</author><pubDate>Wed, 01 Dec 2021 17:28:18 +0800</pubDate><description><![CDATA[需求：工作中使用kafka接收数据，需要批量对redis中的hash操作，而redisTemplate并没有提供相应的方法，里面对于批量插入操作，只有一个


public void putAll(K key, Map&lt;? extends HK, ? extends HV&gt; m) {
        if (!m.isEmpty()) {
            byte[] rawKey = this.rawKey(key);
            Map&lt;byte[], byte[]]]></description><category></category></item><item><title><![CDATA[influxdb插入数据报错]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/121637755</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/121637755</guid><author>SDAUguo</author><pubDate>Tue, 30 Nov 2021 17:14:22 +0800</pubDate><description><![CDATA[org.influxdb.InfluxDBException$PointsBeyondRetentionPolicyException: partial write: points beyond retention policy dropped=1

使用influxdb时报了这个错，全网检索没有找到答案，后来发现是因为时间太远，超过了保存策略。

因为我这个是在测试，那组测试数据的时间都是好几天前的时间了，今天一跑报错，把测试数据的时间更新一下就好了。
...]]></description><category></category></item><item><title><![CDATA[排序感想]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/73380607</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/73380607</guid><author>SDAUguo</author><pubDate>Sat, 17 Jun 2017 15:30:07 +0800</pubDate><description><![CDATA[提交记录：




感想：经过这次排序我是经历了runtime error的绝望，不过也是对它了解更深了，估计不会再忘记这个error是什么意思了，再者就是我感觉排序题真的挺难。]]></description><category></category></item><item><title><![CDATA[合并区间]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/73380573</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/73380573</guid><author>SDAUguo</author><pubDate>Sat, 17 Jun 2017 15:23:09 +0800</pubDate><description><![CDATA[题目：



给出若干闭合区间，合并所有重叠的部分。


您在真实的面试中是否遇到过这个题？ 

Yes




样例

给出的区间列表 => 合并后的区间列表：
[                     [
  [1, 3],               [1, 6],
  [2, 6],      =>       [8, 10],
  [8, 10],  ]]></description><category></category></item><item><title><![CDATA[整数排序二]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/73380526</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/73380526</guid><author>SDAUguo</author><pubDate>Sat, 17 Jun 2017 15:12:47 +0800</pubDate><description><![CDATA[题目：



给一组整数，按照升序排序。使用归并排序，快速排序，堆排序或者任何其他 O(n log n) 的排序算法。


您在真实的面试中是否遇到过这个题？ 

Yes




样例

给出 [3, 2, 1, 4, 5],
 排序后的结果为 [1, 2, 3, 4, 5]。


思路：

简单的递归，每次分一半归并算法。
代码：
public c]]></description><category></category></item><item><title><![CDATA[哈希表感想]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72598291</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72598291</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 14:33:04 +0800</pubDate><description><![CDATA[提交记录：


感想：这里面包括那两个二叉查找树的题，让我归到二叉树里了，我感觉哈希表给我的是一种思想，而没有确切的解决问题的方法，比如我做的这些题，基本都是大一的都能做出来，并没有什么实质性的新内容。]]></description><category></category></item><item><title><![CDATA[在二叉查找树中插入节点]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72598261</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72598261</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 14:26:10 +0800</pubDate><description><![CDATA[题目：



给定一棵二叉查找树和一个新的树节点，将节点插入到树中。
你需要保证该树仍然是一棵二叉查找树。


 注意事项

You can assume there is no duplicate values in this tree + node.




您在真实的面试中是否遇到过这个题？ 

Yes




样例

给出如下一棵二叉查找树，]]></description><category></category></item><item><title><![CDATA[Convert BST to Greater Tree]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72598241</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72598241</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 14:22:32 +0800</pubDate><description><![CDATA[题目：



Given a Binary Search Tree (BST), convert it to a Greater Tree such that every key of the original BST is changed to the original key plus sum of all keys greater than the original key in B]]></description><category></category></item><item><title><![CDATA[哈希函数]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72598231</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72598231</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 14:16:51 +0800</pubDate><description><![CDATA[题目：



在数据结构中，哈希函数是用来将一个字符串（或任何其他类型）转化为小于哈希表大小且大于等于零的整数。一个好的哈希函数可以尽可能少地产生冲突。一种广泛使用的哈希函数算法是使用数值33，假设任何字符串都是基于33的一个大整数，比如：
hashcode("abcd") = (ascii(a) * 333 + ascii(b)
 * 332 + ascii(c) *33 + asc]]></description><category></category></item><item><title><![CDATA[两数之和]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72598226</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72598226</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 14:14:53 +0800</pubDate><description><![CDATA[题目：



给一个整数数组，找到两个数使得他们的和等于一个给定的数 target。
你需要实现的函数twoSum需要返回这两个数的下标,
 并且第一个下标小于第二个下标。注意这里下标的范围是 1 到 n，不是以 0 开头。


 注意事项

你可以假设只有一组答案。




您在真实的面试中是否遇到过这个题？ 

Yes




样例

给出 n]]></description><category></category></item><item><title><![CDATA[两数组的交二]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72598217</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72598217</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 14:12:27 +0800</pubDate><description><![CDATA[题目：



计算两个数组的交


 注意事项

每个元素出现次数得和在数组里一样
答案可以以任意顺序给出




您在真实的面试中是否遇到过这个题？ 

Yes




样例

nums1 = [1, 2, 2, 1],
 nums2 = [2, 2], 返回 [2,
 2].


思路：

和第一题一样，只不过这个是把map映射中的]]></description><category></category></item><item><title><![CDATA[两数组的交]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72598201</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72598201</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 14:09:46 +0800</pubDate><description><![CDATA[题目：



返回两个数组的交


 注意事项


Each element in the result must be unique.The result can be in any order.




您在真实的面试中是否遇到过这个题？ 

Yes




样例

nums1 = [1, 2, 2, 1],
 nums2 = [2, 2], ]]></description><category></category></item><item><title><![CDATA[子数组之和]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72594088</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72594088</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 09:50:17 +0800</pubDate><description><![CDATA[题目：



给定一个整数数组，找到和为零的子数组。你的代码应该返回满足要求的子数组的起始位置和结束位置


 注意事项

There is at least one subarray that it's sum equals to zero.




您在真实的面试中是否遇到过这个题？ 

Yes




样例

给出 [-3, 1, 2, -3, ]]></description><category></category></item><item><title><![CDATA[快乐树]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72594068</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72594068</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 09:49:40 +0800</pubDate><description><![CDATA[题目：



写一个算法来判断一个数是不是"快乐数"。
一个数是不是快乐是这么定义的：对于一个正整数，每一次将该数替换为他每个位置上的数字的平方和，然后重复这个过程直到这个数变为1，或是无限循环但始终变不到1。如果可以变为1，那么这个数就是快乐数。


您在真实的面试中是否遇到过这个题？ 

Yes




样例

19 就是一个快乐数。
1^2 + 9^2 =]]></description><category></category></item><item><title><![CDATA[Strings Homomorphism]]></title><link>https://blog.youkuaiyun.com/SDAUguo/article/details/72594060</link><guid>https://blog.youkuaiyun.com/SDAUguo/article/details/72594060</guid><author>SDAUguo</author><pubDate>Sun, 21 May 2017 09:45:28 +0800</pubDate><description><![CDATA[题目：



Given two strings s and t, determine if they are isomorphic.
Two strings are isomorphic if the characters in s can be replaced to get t.
All occurrences of a character must be replaced wi]]></description><category></category></item></channel></rss>