- 博客(90)
- 收藏
- 关注
原创 若依前后端分离版本开发环境下发生cannot find module ‘./user_to_content/info/index‘ at webpackContextResolve问题解决
如果是在开发环境下发生的问题,很大一部分是因为你前端和后端同时在idea中打开,建议前端换成vscode,后端继续使用idea,避免一个idea既运行后端又运行前端;
2024-12-04 15:18:26
445
原创 计数服务怎么设计?
● 非产品的绝对强依赖:与用户钱包账户余额不同,在极端情况下允许部分数据丢失● 对数据的精确性要求与数值的增加成反比:999->1000,10000->20000,不在显示个位数了。
2024-09-17 22:14:42
643
转载 美团技术博客-Java线程池实现原理及其在美团业务中的实践(转载)
增加线程是通过线程池中的addWorker方法,该方法的功能就是增加一个线程,该方法不考虑线程池是在哪个阶段增加的该线程,这个分配线程的策略是在上个步骤完成的,该步骤仅仅完成增加线程,并使它运行,最后返回是否成功这个结果。线程池中线程的销毁依赖JVM自动的回收,线程池做的工作是根据当前线程池的状态维护一定数量的线程引用,防止这部分线程被JVM回收,当线程池决定哪些线程需要回收时,只需要将其引用消除即可。线程池运行的状态,并不是用户显式设置的,而是伴随着线程池的运行,由内部来维护。
2024-07-29 17:07:33
280
原创 视频播放器的问题
<template> <div class="app-container"> <el-form :model="queryParam" ref="queryForm" :inline="true"> <el-form-item label="题目ID:"> <el-input v-model="queryParam.id" clearable></el-input> </el-f
2024-07-13 21:43:04
1063
4
原创 还不会使用多线程优化代码执行效率?codefun教你在业务场景中使用CompletableFuture进行优化!
大家晚上好,我是coderfun,阅读完本文你可以学到使用CompletableFuture进行性能优化,以及什么场景下可以用多线程对代码进行优化的方法和理论知识.,我是coderfun祝您生活顺利,天天开心!
2024-06-01 20:57:42
476
原创 半年不在csdn写博客,总结一下这半年的学习经历,coderfun的一些碎碎念.
端午节后离职回学校准备考试新做一个项目,学习在场景中使用MQ,延伸自己的思想每天准备背各种八股文每隔两三天就进行一次模拟面试寻找暑假的实习机会每天刷算法,Python或者Java都可以加油吧骚年,未来是你的!!!
2024-05-26 21:20:05
1470
2
原创 Kitex踩坑 [Error] KITEX: processing request error,i/o timeout
Kitex超时控制,导致无法调用服务
2023-10-28 17:30:33
740
原创 介绍grpc
它基于HTTP/2协议传输,使用Protocol Buffers(ProtoBuf)作为默认的序列化机制,支持多种编程语言,并提供了强大的功能和特性。单向通道(Unary Channel):也称为普通通道,它是最常用的gRPC通道类型。这种通道适用于一次性请求和响应的情况。双向通道(Bidirectional Channel):双向通道是一种全双工通信方式,客户端和服务端可以同时发送和接收多个请求和响应。通过使用这两种通道,gRPC可以满足不同的通信需求,从简单的一次性请求和响应到复杂的双向流式处理。
2023-10-19 13:15:08
296
原创 Java基础面试,ArrayList和LinkedList的区别
ArrayList因为其内存空间的限制和查询效率的优势,更适合于存储大量数据且不需要频繁增删改查的场景;而LinkedList则更适合于需要频繁增删改查的场景。
2023-10-08 18:33:51
333
原创 MVC架构和DDD架构的区别?
MVC是一种用于构建用户界面和应用程序逻辑分离的架构模式,而DDD是一种软件开发方法论,强调通过领域驱动设计来解决业务问题。MVC关注于将应用程序分解为模型、视图和控制器,以实现关注点分离和代码组织。DDD关注于深入理解业务领域,通过领域模型和领域专家的协作来解决复杂业务问题。MVC是一种通用的架构模式,适用于各种类型的应用程序,而DDD更加专注于解决复杂的业务领域问题。MVC将应用程序划分为模型、视图和控制器,而DDD将重点放在领域模型、领域驱动设计和领域专家的参与上。
2023-10-03 17:10:08
2739
原创 如果使用pprof来进行性能的观测和优化
在优化后的代码中,我们引入了 Goroutine 和 sync.WaitGroup 来实现并发处理。在优化过程中,始终进行压力测试和基准测试,以确保你的优化没有引入新的问题并且确实提升了程序性能。在将代码部署到生产环境之后,持续监控程序的性能,并进行必要的调优。选择正确的数据结构和算法是优化程序性能的关键。根据你的需求,选择最适合的数据结构来提高代码的执行效率。通过逐步优化,每次只专注于一个问题,以确保你的优化是有效的,同时避免引入新的错误。在开始优化之前,首先需要确定你的程序的性能瓶颈在哪里。
2023-10-02 23:02:08
881
原创 设计模式之代理模式
做一个简单的形象的例子吧,就好比师傅想要化缘,但是师傅心高气傲又怎么肯?于是师傅把碗给了二师兄,于是二师兄就成了一个代理对象,由代理对象来执行化缘的过程。**方法实际上就是执行的业务逻辑。细心的大师兄肯定会发现很多地方有冗余,所以完全可以创建一个代理对象然后然后代理对象去统计耗时的问题,这样代码就会简洁多了。以经济公司代理歌手来实现,歌手不会参与卖票,租场地之类的活,只会进行表演,所以累活全部由经济公司承担。这样业务明显就被简化了,很大程度上减少了代码的冗余,这不就是Spring的AOP思想么?
2023-10-01 22:48:57
803
原创 Java基础面试,什么是面向对象,谈谈你对面向对象的理解
谈到面向对象,那就不得不谈到面向过程。面向过程更加注重的是完成一个任务的过程,而面向对象更加注重的是完成任务需要哪些对象来参与。封装内部细节相对于外部的调用更加透明,外部调用者无需关心内部的实现,差不多就是把公共模块,或者需要复用的模块抽成一个工具类封装的思想就是为了代码的复用性更强继承子类共性的方法或者属性都是直接调用父类的,而不是自己定义,只需扩展自己的个性化。通俗一点来说,继承就是为了更容扩展多态多态的三个条件?继承,方法重写,父类的引用指向子类的对象。
2023-10-01 15:12:37
281
原创 参加第十二届中国软件杯比赛感想以及经验
今年我作为参赛选手参加了中国软件杯南京线下赛,参加了总决赛答辩环节,下面总结一些参加比赛的经验以及感受。
2023-09-27 10:10:23
2026
3
原创 Git的正确使用姿势与最佳事件:团队协作开发和版本控制的最佳实践
大家在合作开发的时候会用到git,本文详细讲述git如果使用以及日常的报错处理。
2023-09-27 10:08:06
348
1
原创 计算机类软件方向适合参加的比赛
博主是一名计算机专业的大三学生,在校时候参加了很多比赛和训练营,现在给大家博主参加过的几个的比赛,希望能给大一大二的学生提供一点建议。
2023-09-26 12:49:33
8551
1
原创 ElasticSearch自学笔记
要求名字包含如家,价格不高于400的,在坐标31.21.121.5周围10km范围内的酒店。multi_match:与match查询相似,只不过允许同时擦汗寻多个字段。对酒店数据按照用户评价降序排序,评价相同的按照价格升序排列。推荐使用match字段来查询。order指定聚合的排序方式。size指定聚合结果的数量。实际上是一种相关度的匹配。aggs代表数据的聚合。field指定聚合字段。
2023-09-26 12:14:15
325
原创 golang并发编程基础
默认情况下,channel是双向的,但是我们经常一个channel作为参数进行传递,希望对象也是单向使用。开启两个gorountine对total进行相同此时的加减,但是这一段程序的运行结果每一次都不一样。锁实际上是将并行的代码串行化了,使用lock肯定影响性能,即使是设计所,也应该尽量保证并行。这是一道经典题目,在Java中也有提到,交替打印这个序列。有缓冲channel适用于生产者和消费者之间的通讯。无缓冲的channel也容易出现deadlock。更加优雅的方式,使用golang的原子包。
2023-09-13 14:42:45
287
原创 go并发编程基础
默认情况下,channel是双向的,但是我们经常一个channel作为参数进行传递,希望对象也是单向使用。开启两个gorountine对total进行相同此时的加减,但是这一段程序的运行结果每一次都不一样。锁实际上是将并行的代码串行化了,使用lock肯定影响性能,即使是设计所,也应该尽量保证并行。这是一道经典题目,在Java中也有提到,交替打印这个序列。有缓冲channel适用于生产者和消费者之间的通讯。无缓冲的channel也容易出现deadlock。更加优雅的方式,使用golang的原子包。
2023-08-25 11:29:51
330
原创 Protobuf类型
这些是原始的基本数据类型,用于存储数值和字符串。doublefloatint32int64uint32uint64sint32sint64fixed32fixed64sfixed32sfixed64boolstringbytes枚举类型用于定义一组可能的取值。每个枚举字段都有一个与之关联的整数值。你可以为每个枚举值指定一个名称和一个整数值。消息类型是 Protocol Buffers 中最重要的类型之一。它们用于定义复杂的数据结构,可以包含其他字段和消息类型。你可以嵌套消息类型以创建更复杂的数据结构。
2023-08-09 12:32:13
2732
原创 浅谈设计原则
什么是单一职责原则,在我理解看来就是一个东西如果发生问题那么就有且仅有一个原因导致它发生问题。它的准确解释就是,就一个类而言,应该仅有一个引起它变化的原因。如果一个类承担的职责过多,就等于耦合度加大,当变化发生时,设计会受到破坏。最好的例子就是将界面和业务进行分离。做设计应该让类只有一个职责。
2023-08-03 23:35:56
104
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人