- 博客(59)
- 收藏
- 关注
原创 docker 部署elk 设置账号密码
执行 ./elasticsearch-setup-passwords interactive。如果有不明白欢迎留言询问,或者加个我的微信 luoye-xiaocao。全部设置一样的密码 ,不一样自己要记住,设置成功会输出如下内容。5.把三个容器全部重启一遍 ,先重启 es 容器,其他两个随意。最后登录 kibana 验证,是否收集到日志。找到 kibana.yml 配置文件 添加如下。找到配置文件 logstash.conf。1. 先把 kibana 停掉。3.设置 kibana。
2025-03-19 10:08:08
417
原创 公司内网和外网直接的访问
公司所有接口的访问都通过ESB进行转发与审核记录。需要发起网络访问流程,等待网络管理员配置与审核。需要配置ESB访问地址,公司访问内网访问外网。
2025-02-17 16:36:20
154
原创 ELK 日志收集框架搭建
ELK日志采集方案是一种强大的日志管理工具,它结合了Elasticsearch、Logstash和Kibana三个开源软件,能够有效地收集、处理和展示日志数据。Logstash:是一个灵活的数据收集、处理和转发工具,可以轻松地收集、解析和转换各种来源的日志数据。链接: https://pan.baidu.com/s/1KCavjuwZLZAI0gXMUp-fiQ?支持多种数据源和日志格式:ELK日志采集方案能够支持多种数据源和日志格式,可以轻松地集成到现有的系统中。
2025-02-17 16:35:26
640
原创 DeepSeek 从入门到精通
链接: https://pan.baidu.com/s/1NHpM2E3m6bvLMoEfa-HAgg?pwd=h3if 提取码: h3if。链接:https://pan.quark.cn/s/8a4654b23504。DeepSeek 火了,资料分享给大家。我用夸克网盘分享了「DeepSeek」通过网盘分享的文件:DeepSeek。
2025-02-13 11:15:37
1251
原创 DeepSeek 15天指导手册——从入门到精通
我用夸克网盘分享了「DeepSeek 15天指导手册——从入门到精通 (2)(3)(1).pdf」,点击链接即可保存。链接: https://pan.baidu.com/s/14DPm0k5vRvFx2sNUEiF4fg?通过网盘分享的文件:DeepSeek 15天指导手册——从入门到精通 (2)(3)(1).pdf。DeepSeek 15天指导手册——从入门到精通,里面包含基本的使用,保姆级教程。链接:https://pan.quark.cn/s/139e300efe3e。
2025-02-11 14:42:22
807
原创 清华出的DeepSeek使用手册,太厉害了!
最近清华大学新闻与传播学院的新媒体研究中心的宇宙文化实验,出了一个DeepSeek从入门到精通的PDF文档,可以帮助大家快速认识和学习DeepSeek。手册的内容,从入门到使用都有,非常时候新手,非常值得一看。Deepseek能够做什么?如何使用Deepseek?Deepseek是什么?文本可以免费找我领取。
2025-02-08 17:28:17
1657
原创 软考-软件架构师
pwd=bu3k 提取码: bu3k。记忆力好的可以背一篇论文( 有当年押题资料的话,就背押题的论文),没有的话就背一下自己感兴趣的或者自己觉得可能出的。本人通过以下软件架构师资料 顺利通过考试,分享给需要的小伙伴,我是跟着上面的资料全部过一遍就行,有详细的问题欢迎来扰。考试的时候直接把论文模板写在草稿纸上,规划每个部分,在电脑上写论文的时候对着论文模板写(不够字数自己凑)至少自己需要写一篇论文( 两个小时的时间总要抽出来的),按照论文模板的结构写。看看论文的范文怎么写,按照论文模板拆分一下,加深印象。
2025-02-08 09:57:24
842
8
原创 批量下载微信网页图片
各位LSP,经常看微信公众号吧,有时候看下喜欢的图片,只能一张张右键下载吧,很是麻烦。今天给我大家分享一下批量下载微信网页上的图片。不过笔者是学Java的,代码是用Java写的,其他语言的话请各位大佬按照思路自己转换哈。!
2025-01-21 10:33:41
760
原创 软考-软件架构设计师
链接: https://pan.baidu.com/s/1pk33Q_Mgdy4BX6I95vzw-A?pwd=5y73 提取码: 5y73。本人通过以下软件架构师资料 顺利通过考试,分享给需要的小伙伴,我是跟着上面的资料全部过一遍就行,有详细的问题欢迎来扰。通过网盘分享的文件:1.软考-系统架构设计师。
2025-01-16 09:20:34
993
2
原创 Java实习生(三) 分表之后还要按时间查询,这种问题又蠢又垃圾!
如果已经决定了,按照某个字段去分表,就意味着不可能不按照在这个字段去查询,光想着倒序表取少量的数据,还可以从从每个表里面去查出n条数据,然后在内存里面去聚合排序数据,例如ES,Mongodb,这种分布式数据库都是这么做的。但是啊,MySQL它不是分布式的,单机会成为它的性能瓶颈,表太多的话,你这么做性能直线下降,但是呢,技术往往是结合来做的,我们场景里面呢,有三套表,分别是按照用户维度,按照文章维度。去分的表还有一套,是不分表的全量表后台审核,我们就用全量表,因为有分页的限制,面试官:(尴尬)十多万吧。
2024-11-29 15:42:01
192
原创 Java实习生(二) HashMap线程不安全?你没事吧?
你所说的高并发下使用HashMap是否会有线程安全问题,其实对应到服务器上是应用程序所能承受在最大业务线程,既然是业务线程,也就是单线程执行,不存在所谓的多线程环境,高并发情况,按照我上面所说的,不涉及第三点,那么HashMap也不会有线程安全问题。2. 在方法内部创建HashMap,并且作为返回值,但是在其他方法里面只是对这个HashMap进行访问(不论多线程还是单线程下),而不涉及修改(插入删除)操作,那么这个HashMap也是此时在多线程环境下也是安全的。在高并发情况下不会有问题吗?
2024-11-28 15:40:11
288
原创 Java实习生(一) EXCEL处理几百万数据?你没事吧?
就算把它们分开放在几个Sheet页,我要问的是,你这500万条数据是什么样的数据?我可不喜欢听你吹牛逼,你都还没毕业,就想面试架构师,而且你说自己精通高并发解决方案,这么多高并发场景难道都是你在经历吗?我只是想考察一下他解决问题的能力,问了个超级简单的问题,他居然答不上来,还骂了我。(其实我也不知道,那天我去面试别的公司的时候,别人问我,我也不会,所以才问他,但我又不能吃亏)我看他的简历,写满了牛逼的经历,曾在大厂实习过,还搞过京东那些高并发和分布式解决方案。(这小伙子,等我说完,眨巴着眼睛看了我一眼)
2024-11-28 15:39:27
258
原创 Java 重新认识String类
通过深入解析String类的源码,我们可以更好地理解其设计理念和实现细节。String类的不可变性、丰富的构造方法和常用方法,以及字符串池和性能优化策略,都是我们在使用和优化Java程序时需要考虑的重要因素。掌握这些知识,有助于我们编写更加高效和健壮的Java代码。
2024-11-08 14:26:08
544
原创 用责任链模式改造 if else
责任链模式是一种行为设计模式,它允许请求沿着处理者链传递,直到其中一个处理者处理它。每个处理者都可以决定是否处理请求或者将其传递给链中的下一个处理者。入参需要三个价格,那么可以将这个价格放到一个类里面, 这里执行结果有四种,那么可以创建一个枚举类存放,可以在初始化入参的时候设置为默认枚举。首先分析需要代码,这里的每一个 if else 都有机会执行,一个执行了,其他的 if else 就不会执行了。降低耦合度:请求发送者不需要知道请求的最终处理者是谁,只需要知道请求会被某个处理者处理。
2024-09-30 15:26:43
921
原创 代码写着写着,if else if 逻辑忘记了,哎。。。
这段是我拿过来测试的,发现下面这个条件成立,但是代码没有进去,自己捣鼓很久都不知道为啥,后面问了一下 一个大佬,说上面那个else if 执行了,下面这个是不执行,把括号和 else if 分开,调试会直接跳过这个else if ,此时想找个地缝溜进去,真是服了我自己啊。今天又被坑了,前人写的代码,我只在上面改,但是我也有责任,没有发现问题,测试也没有发现,不多说,直接上代码。
2024-09-25 19:26:04
284
原创 同步数据分页踩坑
商城系统需要同步另一个系统的经销商过来,当时写完测试的时候都没有问题,测试数据也能正常全部同步过来,昨晚上线之后就开始同步全量数据,早上过来发现数据少了,于是把两个系统的数据导出来核对,发现少了45条和,开始对比 唯一ID ,发现代码逻辑确实没有问题。这里走不通,换另一个办法,查看日志,发现了大坑,另一系统的小伙伴 在分页参数上 ,给第几页加了 1 ,哎,这里要么我改,要么他改。原因是他那边的系统设置默认分页从 0 开始。
2024-09-14 14:23:45
194
原创 MySQL 字符集踩坑
在这个例子中,我们首先将`email`字段重命名为`old_email`,然后将其编码更改为`utf8mb4`,最后将`old_email`重命名为`email`。我在做一个同步数据的功能,就是通过接口获取上游系统数据,然后同步到本商城系统,同步人员的时候,人员昵称包含特殊字符,表情,这一下我测试数据的表炸了,居然不支持,好嘛,让我看看咋回事。在去生产环境看下这个表也是一样,这下好了,要修改表结构了[捂脸],还要挑时间,生产有200万数据,修改可能会锁表。请注意,你需要确保新字段的类型与旧字段兼容。
2024-09-04 10:55:46
770
原创 Spring TransactionTemplate 深入解析与高级用法
TransactionTemplate` 是 Spring 框架中一个强大的工具,它允许开发者以编程方式控制事务。通过本文的详细解析和示例代码,我们可以看到如何使用 `TransactionTemplate` 来执行事务性操作,并处理高级事务场景。在实际开发中,合理使用事务管理对于确保数据一致性和系统稳定性至关重要。
2024-09-02 10:14:27
3724
原创 AOP自定义注解防重
重复提交问题通常出现在用户在短时间内多次点击提交按钮的场景,比如在提交表单或进行支付操作时。这种情况可能会导致数据错误或产生额外的费用。为了解决这个问题,我们可以使用分布式锁或基于Redis的防重机制。通过自定义注解和AOP技术,我们可以在Spring Boot应用中轻松实现防重提交功能。这种方法不仅代码简洁,而且易于维护和扩展。以上就是一个完整的Spring Boot防重提交注解的实现过程。希望这个示例能够帮助您在实际项目中解决重复提交的问题。八、有兴趣的同学可以下载代码玩一下。
2024-08-27 15:17:57
507
原创 售后更新出现问题分析-幂等和防重
即使在代码对售后状态进行了校验也是无用,因为并发请求时,上一个售后代码没有执行完成,事务没有提交,新来的请求读取的售后状态也是未完结的,可以继续往下执行代码,流程是这样的: 测试模拟用户下单,提交订单后付款,然后用户又进行退款操作,需要商家审核售后,商家审核通过的话,进行退款操作,售后单更新状态售后完结。那么我现在要做的就是在在售后接口进行防重,先说一下方案,就是在入口处添加一把分布式锁,获取到锁就往下执行,代码执行完成,删除锁,防止并发重复请求。4. 删除操作:删除一个文件或数据库记录的操作也是幂等的。
2024-08-27 10:39:26
859
原创 ThreadLocal 使用和详解避坑
线程栈用于存储方法调用的信息,而线程本地存储则是每个线程私有的存储空间,用于存储线程的局部变量。ThreadLocal类提供了一种简单的方式来实现线程本地存储,它允许将线程特定的值与每个线程关联起来。线程池中的线程重用:在使用线程池的情况下,线程会被重用。如果线程在使用ThreadLocal之后没有进行清理操作,可能会导致后续使用该线程时,获取到之前线程的ThreadLocal变量值。通过将对象存储在ThreadLocal变量中,可以保证每个线程都有自己的私有对象,从而避免竞争条件的发生。
2024-08-02 11:42:35
528
原创 数据隔离级别查询一致导致重复退款
虽然没有查询Mybatis一级缓存,但是因为MySql 默认的数据隔离级别是可重复读,更新语句还没提交,所以查询出来依然状态 还是200。@Transactional 设置 PROPAGATION_REQUIRES_NEW .1.加上分布式锁,在第一次查询数据前加锁。然后更新数据,没有使用来的的对象。第二次查询打印状态也是 200。第一次查询打印状态 200。2.在另一个类进行更新,有兴趣的同学可以试试。
2024-07-20 13:57:28
536
原创 @JsonProperty 踩坑
是 Jackson 库中的一个注解,它用于在 Java 对象和 JSON 之间进行序列化(将 Java 对象转换为 JSON)和反序列化(将 JSON 转换为 Java 对象)时指定字段的 JSON 属性名。如果你正在使用 fastjson 进行 JSON 的序列化和反序列化,并且想要改变字段的 JSON 属性名,你应该使用 @JSONField 注解,而不是 @JsonProperty。总之,只要你的项目中包含了 Jackson 库的依赖,并且你正确地使用了。注解,那么它就应该能够生效。
2024-07-19 11:27:13
1447
原创 Collectors.toMap 分组踩坑
上面代码对 list 根据 id 分组,运行直接报错 Duplicate key User{id=1, age=2},说的是 Map key 重复了,list 里面确实User 确实有相同的key.merge()或toMap(),它总是抛出IllegalStateException。这可用于强制假设所收集的元素是不同的。今天在使用下面 Collectors.toMap 是遇到了错误,业务场景类似下面,直接看代码。那么这边根据业务情况,当User id 相同,留下 age 最大的就行。
2024-07-18 11:19:00
407
原创 字符串和正则表达式踩坑
将 equals 改成 matchers 也是false。将matchers 两个参数换了位置 就输出 true。matchers 方法需要将字符串应该是调用方。上面代码输出 false。
2024-07-04 11:09:37
478
原创 访问网络 测试没有问题,正式有问题
检查 地址 账号密码等是否正确,如果正确,那么就要ping 一下网络。首先检查一下网络,在正式服务器ping 一下要访问的地址。笔者因为这个问题浪费了半天时间,一开始都以为是代码问题。如果不行,联系网络管理员开通。
2024-06-19 08:43:54
232
原创 20240612生产环境表数据被全部删除复盘
2024-06-13 10:00:00 叫DBA 恢复数据,只能恢复到 2024-06-11 23:00:00 前的数据,DBA 将数据恢复到另外一台机器上,然后我链接上临时库进行数据整理。2024-06-13 18:00:00 停机,进行数据恢复,将 backup 文件导入正式环境,然后通过SQL 恢复数据,重启生产环境,历时一个小时。2024-06-13 14:00:00 从外部系统导出11 12 13 的调用接口的数据,进行手动导入到生产环境。时间是 2024-06-12 19:53:12。
2024-06-14 09:45:04
430
原创 MySQL 分页优化
这意味着,如果你有 1 亿个用户,OFFSET 是 5 千万,那么它需要获取所有这些记录 (包括那么多根本不需要的数据),将它们放入内存,然后获取 LIMIT 指定的 20 条结果。要使用这种基于游标的分页,需要有一个惟一的序列字段 (或多个),比如惟一的整数 ID 或时间戳,但在某些特定情况下可能无法满足这个条件。如果我们的表没有主键,比如是具有多对多关系的表,那么就使用传统的 OFFSET/LIMIT 方式,只是这样做存在潜在的慢查询问题。只需单击顶部的 Run,就可以比较它们的执行时间。
2024-06-12 10:27:08
668
原创 spring 启动顺序
可以在Bean中得到它在IOC容器中的Bean的实例的名字。在Spring Bean实例化完成后,执行start 方法。配置类 通过@Bean注解 注册Bean到Spring。在Bean的初始化前后,植入扩展点!整个项目启动完毕后,自动执行。方法,用于Bean实例初始化。注解,用于Bean实例初始化。接口,用于Bean实例初始化。可在Bean 中获取。可在Bean 中获取。创建后植入 扩展点!
2024-06-05 10:39:04
627
原创 Mysql 插入或者更新 踩坑
使用INSERT INTO ON DUPLICATE KEY UPDATE语句可以有效提升数据库操作效率,减少数据库操作次数,简化操作逻辑,避免数据冲突。在实际开发中,我们可以根据具体的业务需求,合理运用这个语句,提高数据库操作的效率和准确性。
2024-05-29 10:37:58
669
原创 2024年5月软考架构题目回忆分享
1.需求分析和架构设计面临这两个不同对象,一个是问题空间,一个是解空间。1.数据库的分布式锁 和 redis的分布式锁,是否还有其他分布式锁。3.质量效用树分析,刺激源 刺激 制品 响应 响应度量。2.mongoDB的矢量分析,优缺点,数据冷热分析分离。夜来幽梦忽还乡 , 大数据, Lambda。十年架构两茫茫 ,Redis , UML。这是英文题,总共五个题目,只记得这么多。1.大数据 Lambda架构。
2024-05-25 22:38:46
773
原创 软考架构风格总结一张图
数据流-批处理数据流-管道-过滤器。调用/返回-主程序/子程序。调用/返回-面向对象。调用/返回-层次结构。独立构件-进程通信独立构件-事件驱动(隐式调用)虚拟机-解释器虚拟机-规则系统。仓库-数据库仓库-超文本仓库-黑板闭环-过程控制C2 风格
2024-05-24 17:30:39
843
原创 数据库-第一范式、第二范式、第三范式、BC范式、第四范式简析
例如,在选课关系表(学号,课程号,成绩,学分),关键字为组合关键字(学号,课程号),但由于非主属性学分仅依赖于课程号,对关键字(学号,课程号)只是部分依赖,而不是完全依赖,因此此种方式会导致数据冗余以及更新异常等问题,解决办法是将其分为两个关系模式:学生表(学号,课程号,分数)和课程表(课程号,学分),新关系通过学生表中的外关键字课程号联系,在需要时进行连接。所以,(仓库号,存储物品号)和(管理员号,存储物品号)都是仓库管理关系表的候选码,表中唯一非关键字段为数量,它是符合第三范式的。
2024-05-23 08:56:53
1280
原创 软考-高级架构师冲刺精华 二 数据库
基本概念:三级模式-两级映像、数据库设计数据库模型:E-R模型、关系模型、关系代数(结合SQL语言)规范化:函数依赖、键与约束、范式、模式分解事务并发:并发三种问题、三级封锁协议数据库新技术:数据库安全与备份、反规范化、分布式数据库、缓存数据库、数据库集群,
2024-05-18 23:00:37
817
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人