自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(160)
  • 收藏
  • 关注

原创 记录一下线上卡夫卡rebalanced的原因

【代码】记录一下线上卡夫卡rebalanced的原因。

2024-04-25 16:23:04 240 1

原创 Java springmvc 参数名用is开头导致为null

因为这里为null了,所以就不会invoke参数,所以你的boolean参数,会一直是false,因为java机制,你这里不设置的话,默认false,如果是Boolean,那么就会一直是null。后面继续省略,直接看核心逻辑,直接定位到这里,找他什么时候用反射把数据填进去的,嵌套了一堆,烦死了,找了半天,而且版本也不一样了,之前我都是直接搜coll方法就有,现在还得从新跟源码。一直到这里其实都是有的,但是后面有个remove,给删了,就是这个方法,没有匹配的数据,给删了。

2024-04-10 12:21:51 736

原创 记录个人学习golang路线(如何学习golang,如何转golang)

让数学来教你每天进步一点点,你的进步有多大(

2024-03-25 20:26:35 396

原创 golang 一个完整的简易应用程序demo

【代码】golang 一个完整的简易应用程序demo。

2024-03-11 20:13:46 270

原创 golang 协程 (goroutine) 与通道 (channel)

(3)如何通过一个通道让主程序等待直到协程完成(信号量模式):如果希望程序一直阻塞,在匿名函数中省略 ch <- 1 即可。实践经验表明,为了使并行运算获得高于串行运算的效率,在协程内部完成的工作量,必须远远高于协程的创建和相互来回通信的开销。(1)如何使用 for 或者 for-range 遍历一个通道:(尽量使用这种或者是跟select配合使用)(12)如何在通道中使用计时器和定时器:定时器 (Timer) 结构体和计时器 (Ticker) 结构体。(6)如何限制并发处理请求的数量。

2024-03-07 20:42:28 596

原创 golang 糟糕的错误处理

个人看法:golang的语言设计者,完全没考虑实际业务场景和开发人员会遇到什么样的开发场景,遇到什么样的产品,遇到什么样的开发周期,当需求来了要你今天开发,明天就上线,就只能这样写代码,语言的设计者就设定了代码中不得不出现很多的err的判断,又说这个很混乱,简直是自取其辱!

2024-03-06 17:42:12 385 2

原创 golang 闭包和协程的使用 && 因此带来的一些问题

【代码】golang 闭包和协程的使用 && 因此带来的一些问题。

2024-03-06 17:33:01 129

原创 golang 用 rpc 实现远程过程调用

【代码】golang 用 rpc 实现远程过程调用。

2024-03-05 20:27:07 141

原创 golang web后端接口服务demo

【代码】golang web后端接口服务demo。

2024-03-05 19:22:24 180

原创 golang 检测函数是否异常&&保证服务不会挂掉

【代码】golang 检测函数是否异常&&保证服务不会挂掉。

2024-03-04 17:47:14 119

原创 golang 实现http请求的调用,访问并读取页面数据和内置的一些方法

比如在网页应用发送 html 字符串的时候,在输出之前执行 w.Header().Set(“Content-Type”, “text/html”):req.Method,这是一个包含 GET 或 POST 字符串,用来描述网页是以何种方式被请求的。:这个函数会让浏览器重定向到 url(可以是基于请求 url 的相对路径),同时指定状态码。:这个函数将返回网页没有找到,HTTP 404 错误。:这个函数返回特定的错误信息和 HTTP 代码。

2024-03-04 17:09:21 530

原创 golang 实现http请求调用

【代码】golang 实现http请求调用。

2024-03-04 16:31:16 188

原创 golang使用net包中的Dial,Listen做http请求响应

【代码】golang使用net包中的Dial,Listen做http请求响应。

2024-03-04 16:07:20 508

原创 golang Unresolved reference ‘EAGAIN‘

【代码】golang Unresolved reference ‘EAGAIN‘

2024-03-04 14:31:48 190

原创 golang 报错xxxx <literal value> xxxx expected

【代码】golang 报错xxxx <literal value> xxxx expected。

2024-02-28 20:07:46 158

原创 golang error panic

【代码】golang error panic。

2024-02-22 16:49:31 452

原创 golang JSON数据格式 XML数据格式 Gob(这玩意真的有人用吗?)

函数分别封装了 io.Reader 和 io.Writer 接口。初始化文件(或者任何实现 io.Writer 的类型),并调用。要想把 JSON 直接写入文件,可以使用。类型来支持常用 JSON 数据流读写。反过来与其对应的是使用。

2024-02-21 17:47:44 214

原创 golang 从命令行读取参数

【代码】golang 从命令行读取参数。

2024-02-21 17:15:29 305

原创 golang 读取压缩包文件 && 写文件

【代码】golang 读取压缩包文件 && 写文件。

2024-02-21 14:25:27 527

原创 golang文件流操作代码示例,只读

【代码】golang文件流操作代码示例,只读。

2024-02-20 21:02:46 178

原创 golang 读取用户输入的数据

【代码】golang 读取用户输入的数据。

2024-02-20 20:16:13 251

原创 go结构体、集合和高阶函数

【代码】go结构体、集合和高阶函数。

2024-02-19 18:11:36 381

原创 golang Cannot assign a value to the unexported field ‘xxxxx‘

最近学习golang,结果发现参考github的代码报错了。查了一下资料,这里记录加吐槽一下,这个设定真的让我感觉痛苦。

2024-02-02 09:51:54 529

原创 golang使用godoc生成本地文档

【代码】golang使用godoc生成本地文档。

2024-01-31 17:33:03 310

原创 docker可视化工具Portainer

第一次进去要注册,密码要8位以上。

2023-08-14 16:25:24 1269

原创 docker-compose常用模板指令

ports映射的端口,

2023-07-14 13:31:52 464

原创 安装使用docker-compose

Docker-Compose将所管理的容器分为三层,分别是工程(project),服务(service)以及容器(container)。Docker-Compose运行目录下的所有文件(docker-compose.yml,extends文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为当前目录名。Docker-Compose的工程配置文件默认为docker-compose.yml,可通过环境变量COMPOSE_FILE或-f参数自定义配置文件,其定义了多个有依赖关系的服务及每个服务运行的容器。

2023-07-12 14:01:15 292

原创 dockerfile常用指令

【代码】dockerfile常用指令。

2023-07-07 15:22:33 1047

原创 docker安装ES,IK分词器,Kibana

下载下来之后传输到linux服务器,然后cp文件到你创建的挂载分词器路劲,例如我的如下。

2023-07-04 14:01:24 813

原创 docker安装redis

【代码】docker安装redis。

2023-06-30 14:11:29 366

原创 docker安装tomcat

【代码】docker安装tomcat。

2023-06-30 13:32:36 166

原创 docker指令(未完待续)

老是忘记docker指令,网上看的一些有些找起来太麻烦,自己常用的一些挂这里,方便以后找。他的视频挺全的,但是文档收费,就几块钱,你们可以买,帮助学习,我是自学狗+白嫖党,我没买。指令整理除官网外,借鉴了以下。

2023-06-21 14:20:08 284

转载 CAP/BASE/2PC/3PC/SEATA/TCC/可靠消息最终一致性(CV的)

如果是回滚事务参与者"接受到abort请求后,利用日志中的undo信息来执行事务的回滚操作,并在完成回滚之后释放所有的事务资源。接受到PreCommit请求后,如果CanCommit阶段所有的事务参与者"都响应Yes,事务参与者执行事务操作,并将undo和redo信息记录到事务日志中,对资源进行加锁。三阶段提交协议(3PC):是二阶段提交的改进版,其将二阶段提交协议的“准备阶段”分为二步,形成了CanCommit,PreCommit,DoCommit三个阶段,并且加入了超时机制。

2023-05-22 17:19:52 376

转载 限流算法总结:计数器、滑动窗口、漏桶算法、令牌桶算法(抄的)

对比固定时间窗口限流算法,滑动时间窗口限流算法的时间窗口是持续滑动的,并且除了需要一个计数器来记录时间窗口内接口请求次数之外,还需要记录在时间窗口内每个接口请求到达的时间点,对内存的占用会比较多。那么我们可以这么做:在一开 始的时候,我们可以设置一个计数器counter,每当一个请求过来的时候,counter就加1,如果counter的值大于100并且该请求与第一个 请求的间隔时间还在1分钟之内,那么说明请求数过多;如上图,流入漏桶流量的流速是不恒定的,经过漏桶限速后,流出流量的速度是恒定的。

2023-05-22 13:48:19 278

转载 Mybatis面试题(转)

它的原理是,使用CGLIB创建目标对象的代理对象,当调用目标方法时,进入拦截器方法,比如调用a.getB.getName,拦截器invoke方法发现a.getB是值,那么就会单独发送事先保存好的查询关联B对象的sql,把B查询上来,然后调用a.setB(b),于是a的对象b属性就有值了,接着完成a.getB.getName方法的调用。这就是延迟加载的基本原理。1、基于SQL语句编程,相当灵活,不会对应用程序或者数据库的现有设计造成任何影响,SQL写在XML里,解除sql与程序代码的耦合,便于统一管理;

2023-05-15 16:47:53 123

转载 获取 /resources 目录资源文件的 9 种方法(抄的)

项目开发中,经常会有一些静态资源,被放置在resources目录下,随项目打包在一起,代码中要使用的时候,通过文件读取的方式,加载并使用;来源:https://blog.csdn.net/u011047968/article/details/107311462。本文中汇总整理了九种方式获取resources目录下文件的方法。

2023-05-12 14:43:31 2299

转载 jol报错NoClassDefFoundError

而在运行阶段,假定目标的容器(比如我们这里的tomcat容器)已经提供了这个jar包,app可以直接使用容器提供的jar,所以无需我们打包对应的jar包了。原文链接:https://blog.csdn.net/weixin_44730681/article/details/115015445。版权声明:本文为CSDN博主「架构师的小跟班」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。),也就是说这个项目在编译,测试,运行阶段都需要这个jar包在classpath中。

2023-05-11 17:27:20 225

原创 ConcurrentHashMap进阶面试题

【代码】ConcurrentHashMap进阶面试题。

2023-05-11 14:45:57 477

转载 优雅的使用反射-spring中的ReflectionUtil

原因很简单,InvocationTargetException是在method.invoke的时候抛出的,方法在执行的过程中,方法本身的执行可能抛出RuntimeException或者Error,其余方法本身抛出的Exception异常直接包装为UndeclaredThrowableException(RuntimeException)处理;可能有童鞋记得,在AopUtils中也有这几个isXXX方法,是的,其实AopUtils中的isXXX方法就是调用的ReflectionUtils的这几个方法的;

2023-05-10 14:46:26 1456

转载 编辑器查看内存使用情况(抄的)

使用java代码也是可以查看jvm内存使用情况的,如果你经验比较丰富的话,应该是知道的,那就是使用Runtime,Runtime对java的运行环境进行的封装,可以得到jvm的状态信息,使用Runtime.getRuntime()就可以得到Runtime的引用,代码如图所示。注意,上面的运行得到的结果单位是字节,如果想转换为M的话,需要把得到的结果除以(1024*1024),因为1M = 1024K,1K = 1024byte。上面介绍了Runtime的几个参数,下面我们运行一下看看结果,如图所示。

2023-05-09 16:31:32 97

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除