酱油瓶啤酒杯
码龄6年
关注
提问 私信
  • 博客:106,943
    106,943
    总访问量
  • 135
    原创
  • 1,755,090
    排名
  • 35
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2019-04-01
博客简介:

CodeDabaicai的博客

查看详细资料
个人成就
  • 获得53次点赞
  • 内容获得54次评论
  • 获得143次收藏
  • 代码片获得680次分享
创作历程
  • 79篇
    2021年
  • 56篇
    2020年
成就勋章
TA的专栏
  • Mybatis
    2篇
  • MEC
    1篇
  • 算法
    34篇
  • 中间件
    1篇
  • JAVA语言
    20篇
  • Netty
    13篇
  • Redis
    11篇
  • 源码
    10篇
  • MySQL
    37篇
  • JVM
    4篇
  • 操作系统
    3篇
  • 计算机网络
    3篇
  • Spring
    2篇
  • Spring Boot
    2篇
  • 设计模式
    4篇
兴趣领域 设置
  • 大数据
    redis
  • 后端
    架构
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

178人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

EdgeCloudSim-windows端通过intellij打开-方便快捷

1、下载开源的EdgeCloudSim到本地https://github.com/CagataySonmez/EdgeCloudSim复制以上地址打开github链接,可以使用git指令clone也可以直接下载压缩包解压2、通过intellij打开左上角点击File->open->已经解压好的EdgeCloudSim-master文件夹打开之后配置相关环境运行:1)在src文件夹右键可以mark directory as你想要的格式2)记得切换对应的JDK版本新建一个文件
原创
发布博客 2021.04.21 ·
1108 阅读 ·
1 点赞 ·
2 评论 ·
12 收藏

Intellij-对Matlab的支持-开源插件使用

1、开源地址https://github.com/kornilova203/matlab-IntelliJ-plugin2、如何使用1、先在Maven或者别的方法将本插件下载到自己的intellij过程中2、直接运行,会出现报错,因为这个插件是辅助Matlab融合到Java开发环境中的,但并没有自带matlab编译器3、右键自己的matlab程序(一般是画图用的),找到Edit…4、导入自己本地的Matlab.exe路径,.m文件就能直接在intellij上运行了3、作用辅助m
原创
发布博客 2021.04.21 ·
2083 阅读 ·
1 点赞 ·
2 评论 ·
7 收藏

Error:Cannot determine path to ‘tools.jar‘ library for 16 (C:/Users/PC/.jdks/openjdk-16)解决方案

git下来一个新的工程文件,导入intellij之后,找到含main函数的文件运行报错-Error:Cannot determine path to 'tools.jar' library for 16 (C:/Users/PC/.jdks/openjdk-16)点击左上角file-project structure在project将Project SDK等修改为需要的版本,这里我改为1.8...
原创
发布博客 2021.04.21 ·
24154 阅读 ·
12 点赞 ·
14 评论 ·
16 收藏

算法-Stone Game V-石子游戏/阿里笔试0322

几块石子 排成一行 ,每块石子都有一个关联值,关联值为整数,由数组 stoneValue 给出。游戏中的每一轮:Alice 会将这行石子分成两个 非空行(即,左侧行和右侧行);Bob 负责计算每一行的值,即此行中所有石子的值的总和。Bob 会丢弃值最大的行,Alice 的得分为剩下那行的值(每轮累加)。如果两行的值相等,Bob 让 Alice 决定丢弃哪一行。下一轮从剩下的那一行开始。只 剩下一块石子 时,游戏结束。Alice 的分数最初为 0 。返回 Alice 能够获得的最大分数 。
原创
发布博客 2021.03.26 ·
321 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

论文-EdgeCloudSim: An environment for performance evaluation of edge computing systems-笔记

1、论文题目EdgeCloudSim: An environment for performance evaluation of edge computing systems :边缘计算系统性能评估的环境2、内容摘要EdgeCloudSim的模拟器工具作为仿真工具来支持计算资源和网络资源的建模以处理边缘计算方案EdgeCloudSim建立在CloudSim之上,可满足边缘计算研究的特定需求并支持必要的功能。本文模拟了不同边缘架构的实验设置,还研究了边缘服务器容量和移动性对整体系统性能的影响
原创
发布博客 2021.03.26 ·
2400 阅读 ·
5 点赞 ·
0 评论 ·
37 收藏

分析-MQ消息队列中间件-在IM即时通讯系统的用途

MQ消息队列在IM即时通讯的用途1)用户聊天消息的离线存储环节:因为IM消息的发送属于高吞吐场景,直接操作DB可能会让DB崩溃,所有离线消息在落地入库前,可以先扔到MQ消息队列中,再由单独部署的消费者来有节奏地存储到DB中;2)用户的行为数据收集环节:因为用户的聊天消息和指令等,可以用于大数据分析,而且基于国家监管要求也是必须要存储一段时间的,所以此类数据的收集同样可以用于MQ消息队列,再由单独部署的消费者存储到DB中;用户的操作日志收集环节:log这种数据价值不高,但关键时刻又非常有用,而且数
原创
发布博客 2021.03.21 ·
2220 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

2019百度之星开发者大赛-复盘

进决赛时是前十名,之后因为队员的安排没有去北京参加路演答辩1、比赛介绍面向AI爱好者的深度学习算法竞赛——百度之星-开发者大赛,总之是为有创新力、专业性、团队合作精神和极客精神的顶级开发者团队提供真实的数据集+深度学习飞桨平台+一站式深度学习开发平台AI Studio模型小型化技术成为最近几年学术界和工业界研究的热点,模型小型化技术也从最开始的网络剪枝、知识蒸馏、参数量化等发展为最新的神经网络架构搜索(NAS)和自动模型压缩等技术。目标检测任务要找出图像中所有感兴趣的目标,确定它..
原创
发布博客 2021.03.16 ·
608 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

算法-堆排序-原理与Java代码实现

以大顶堆举例:1、首先用构造一个初始的大顶堆2、然后将堆顶和堆尾的一个元素交换,交换后的队尾元素加入排序队列尾3,重新构建堆4,重复步骤2-3理解上就是每次选取堆的最大值,之后将最大值删除,重构堆再重复以上操作在Java中我们常用优先队列构建大顶堆和小顶堆PriorityQueue<Integer> pq = new PriorityQueue<>();在后边的括号中使用Lamba表达式调整大顶堆和小顶堆使用代码实现一个堆排序如下package so
原创
发布博客 2021.03.10 ·
129 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java-HashMap的put()方法-源码详解

1、HashMap是什么?HashMap继承自Map接口,是键值对存储的一种集合。JDK1.7之前底层使用数组+链表实现;JDK1.8之后当链表长度大于默认值8的时候,链表转换为红黑树一般的put()方法就是将key-value添加到HashMap当中,通过key的hashCode经过扰动函数后得到hash值就是在数组中的位置,之后判断数组中是否已经存在了当前的value,存在则覆盖,不存在通过拉链法解决Map<Object,Obkect> hashmap = new HashMap
原创
发布博客 2021.02.27 ·
2311 阅读 ·
0 点赞 ·
0 评论 ·
7 收藏

Netty-ChannelInitializer-实现原理

在之前的文章中解读了Netty对于一条连接的各个状态的生命周期进行了解读1、ChannelInitializer的实现原理在定义handler的时候通过childHandler()方法设置了一个handle/也就是ChannelInitializer在ChannelInitializer的initChannel()方法中,通过获取channel对应的管道,在里面加入各种方法//xxxxxxxxxxxxxx省略代码```.childHandler(new ChannelInitializer&l
原创
发布博客 2021.02.17 ·
913 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty-ChannelHandler-生命周期/顺序解读

继承关系ChannelHandler---------->ChannelInboundHandler----------->ChannelInboundHandlerAdapter自定义一个handler继承ChannelInboundHandlerAdapter,来查看ChannelInboundHandlerAdapter中各个方法的执行顺序LifeCyCleTestHandler.javapublic class LifeCyCleTestHandler extends Cha.
原创
发布博客 2021.02.17 ·
789 阅读 ·
2 点赞 ·
1 评论 ·
1 收藏

算法-尽可能使字符串相等-滑动窗口

1、题目描述给你两个长度相同的字符串,s 和 t。将 s 中的第 i 个字符变到 t 中的第 i 个字符需要 |s[i] - t[i]| 的开销(开销可能为 0),也就是两个字符的 ASCII 码值的差的绝对值。用于变更字符串的最大预算是 maxCost。在转化字符串时,总开销应当小于等于该预算,这也意味着字符串的转化可能是不完全的。如果你可以将 s 的子字符串转化为它在 t 中对应的子字符串,则返回可以转化的最大长度。如果 s 中没有子字符串可以转化成 t 中对应的子字符串,则返回 0。-
原创
发布博客 2021.02.05 ·
175 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty-基于Netty实现RPC-仿Dubbo

1、什么是RPCRPC,英文全称是Remote Procedure Call,翻译过来就是远程过程调用。作为一个计算机通信协议,运行在计算机A的程序调用另一台计算机B上的子程序就像调用本地方法一样方便,而这两个程序是分布在不同的服务器上的RPC远程过程调用图示:其中Client就是RPC服务的消费者,Server就是服务提供者,通过上图可以看到完整的调用关系RPC就是将以上的步骤全部封装起来,用户直接使用,而不用关心使用细节,部署后直接能像使用本地方法一样使用远程程序2、设计一个RPC
原创
发布博客 2021.02.05 ·
256 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java错误解决-incompatible types: cannot infer type arguments for PriorityQueue<>

在以下代码运行时出错PriorityQueue<Long> pq1 = new PriorityQueue<>((o1,o2) -> (o2 - o1));//大顶堆查看报错原因Line 6: error: incompatible types: cannot infer type arguments for PriorityQueue<>reason: cannot infer type-variable(s) E(argument mismat.
原创
发布博客 2021.02.03 ·
6781 阅读 ·
1 点赞 ·
1 评论 ·
1 收藏

Netty-使用netty实现群聊-代码实现

使用Netty实现一个简单的群聊功能
原创
发布博客 2021.02.02 ·
468 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty-Unpooled类-细节使用

1、是缓冲区工具类作为Netty具体的缓冲区/数据容器,提供的常用方法如下区别于NIO的ByteBuffer通过给定的数据和字符返回一个Bytebuf对象public static ByteBuf copiedBuffer(CharSequence string,Charset charset)2、内部细节ByteBuf内部维持了三个变量,一个是readerIndex/读数据的指针,一个是writerIndex/写数据的指针,一个是capacity/容量大小3、实战分析代码1pack
原创
发布博客 2021.02.02 ·
979 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty-EventLoopGroup/NioEventLoopGroup-自动向下

1、NioEventLoopGroup是EventLoopGroup的实现类EventLoopGroup接口直接继承JDK中的EventExecutorGroup接口。Netty中的NioEventLoopGroup是继承了MultithreadEventLoopGroup抽象类,而MultithreadEventLoopGroup继承MultithreadEventExecutorGroup抽象类。MultithreadEventExecutorGroup抽象类实现了Netty中的EventLoo.
原创
发布博客 2021.02.02 ·
204 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

IntelliJ IDEA 2021.1.EAP发布-新特性介绍-附下载链接

1、Java16支持最新发布的IntelliJ IDEA 2021.1.EAP版本,增加了对JDK16的基本支持1)内部类可以声明显式或隐式的成员tream.collect(toUnmodifiableList())被转换成stream.toList()当前toList()函数显示在stream的code completion list中2、WSL 2支持当用户的 IDE 在 Windows 上运行时,该 EAP 将包括对 WSL 2 内的 Java 项目的初步支持。Inte
原创
发布博客 2021.02.02 ·
2894 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Netty-Future/ChannelFuture-核心组件II

1、在Netty中的作用Netty中的IO操作都是异步进行的,并不能和同步一样立即知道消息是否被正确处理Netty为IO操作注册一个监听,当IO操作成功或者不成功的时候都会自动触发注册的监听事件Future和ChannelFuture就是为监听IO事件服务的,不敢IO操作成功不成功都会返回一个ChannelFuture2、FutureNetty的Future接口继承了JDK的Future接口,同时提供了更多的方法public interface Future<V> exten
原创
发布博客 2021.02.01 ·
264 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Netty-Bootstrap/ServerBootstrap-核心组件I

1、BootstrapBootstrap的字面意思是引导,通常情况下,一个Netty应用由一个Bootstrap开始,配置整个Netty程序和串联各个组件在Netty中,Bootstrap是客户端程序的启动引导类2、ServerBootstrap在Netty中,ServerBootstrap是服务端启动引导类3、二者相关的常用方法//该方法用于配置两个服务器端的EventLooppublic ServerBootstrap group(EventLoopGroup parentGrou
原创
发布博客 2021.02.01 ·
223 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多