- 博客(21)
- 收藏
- 关注
原创 【进阶篇】Java 项目使用 Redis 实现分布式缓存的思考全过程
在笔者近 3 年的 Java 一线开发经历中,尤其是一些移动端、用户量大的互联网项目,经常会使用到 Redis 分布式缓存作为解决高并发的基本工具。但在使用过程中也有一些潜在的问题是必须要考虑的,比如:数据一致性、缓存穿透和雪崩、高可用集群等等。
2025-03-11 09:12:41
759
原创 【深度思考】一线开发大头兵对于工作的感悟分享
笔者目前有两段工作经历,都是在一线当开发大头兵,职级倒是随着跳槽而有所上升。做过从 0-1 的 SaaS、PaaS 自研项目,也做过基于多租户的标准化服务开发,还有过半年的 PM 的经历...这些都让我有了一些关于工作上的感悟。现在简单总结一下,拿出来和大家做分享交流。
2025-01-22 14:12:58
911
原创 【解决方案】项目重构之如何使用 MySQL 替换原来的 MongoDB
笔者今天要分享的是一个项目重构过程中如何将数据库选型使用 MySQL 替换原来的 MongoDB 的思考,涉及到业务当前的痛点、选型分析、解决的核心思路,最后会给出简单的 demo。
2024-12-23 14:27:28
801
原创 【解决方案】MySQL5.7 百万数据迁移到 ElasticSearch7.x 的思考
在日常项目开发中,可能会遇到使用 ES 做关键词搜索的场景,但是一般来说业务数据是不会直接通过 CRUD 写进 ES 的。因为这可能违背了 ES 是用来查询的初衷,数据持久化的事情可以交给数据库来做。那么,这里就有一个显而易见的问题:ES 里的数据从哪里来?本文介绍的就是如何将 MySQL 的表数据迁移到 ES 的全过程。
2024-12-09 15:52:10
963
原创 【解决方案】聊一聊动态定时任务之 ScheduledTaskRegistrar 类
在做 SpringBoot 项目的过程中,有时客户会提出按照指定时间执行一次业务的需求。在单一使用 ScheduledTaskRegistrar 类解决定时任务问题的时候,可能会达不到预期的动态调整定时任务的效果。
2024-11-26 14:39:10
1477
原创 【进阶篇】使用 Stream 流和 Lambda 组装复杂父子树形结构
在最近的开发中,遇到了两个类似的需求:都是基于 Stream 的父子树形结构操作,返回 List 集合对象给前端。于是在经过需求分析和探索实践后有了新的认识,现在拿出来和大家作分享交流。
2024-11-12 10:08:02
709
原创 【解决方案】如何使用 Http API 代替 OpenFeign 进行远程服务调用
看到标题大家可能会有点疑惑吧:OpenFeign 不是挺好用的吗?尤其是微服务之间的远程调用,平时用的也挺习惯的,为啥要替换呢?
2024-10-21 14:57:18
1044
原创 【进阶篇】Java 实际开发中积累的几个小技巧(一)
笔者目前从事一线 Java 开发今年是第 3 个年头了,从 0-1的 SaaS、PaaS 的项目做过,基于多租户架构的通用服务项目也做过,软件交付项目的 PM 也做过...在实际的开发中积累了一些技巧和经验,包括线上 bug 处理、日常业务开发、团队开发规范等等。现在在这里分享出来,作为成长的记录和知识的更新,希望与大家共勉。
2024-10-08 14:21:58
811
原创 【项目管理】聊一聊敏捷项目每日站会中的四大“坑”
每日站会(Daily Standup)是团队统一节奏的、在固定时间发生的、帮助团队内部快速同步进展的敏捷实践活动。
2024-09-23 08:26:57
957
原创 【主流技术】聊一聊 RedisTemplate 在 SpringBooot 里的简单应用
Redis 是目前互联网后端的热门中间件之一,在许多方面都有深度的应用,作为后端开发熟练掌握该技术是十分有必要的。Redis 的五种数据类型是:1、String(字符串);2、Hash(哈希);3、List(列表);4、Set(集合);5、Sort Set (有序集合)。其余的用的比较少,本文暂不涉及。
2024-09-02 08:18:37
790
原创 【团队建设】如何做好团队开发中的 CodeReview(代码评审)?
你是否曾写过一个很简单的需求或者优化?而且你认为不需要审查,就可以直接合并到主分支。可能过了几天或者几周,你突然意识到你犯了一个明显的或是不应该犯的错误,如果有其他人来审查代码,那这个问题可能就会被发现并及时处理。
2024-08-19 08:17:20
941
原创 【主流技术】MongoTemplate 与 Spring Boot 项目集成(附CURD技巧)
MongoTemplate 是Spring Data MongoDB 中的一个核心类,为 Spring 与 MongoDB 数据库的交互提供了丰富的功能集,包括创建、更新、删除和查询 MongoDB 文档的便利操作,并提供了编程语言的领域对象(POJO)和 MongoDB 文档之间的映射。
2024-08-05 10:01:57
706
1
原创 【云原生】为什么要虚拟化,为什么要容器,为什么要Docker,为什么要K8S?
如标题中的问题所提到的虚拟化,容器,Docker 和 K8s 那样,我们不妨这样问:这些技术到底适用于哪些场景,有没有别的技术可以替代?这些技术的优劣在哪里?
2023-01-16 15:10:45
493
原创 【进阶篇】如何理解并掌握 Java 中的注解与反射
注解(Annotation)不是程序,但可以对程序作出解释,也可以被其它程序(如编译器)读取。注解的格式:以@注释名在代码中存在,还可以添加一些参数值例如@SuppressWarnings(value="unchecked")。注解可在package、class、method、field等上面使用,作用是为它们添加了额外的辅助信息,从而可以通过反射机制实现对这些元数据的访问。...
2022-06-07 20:29:26
760
原创 【进阶篇】聊一聊关于 Java8 新特性的理解与应用
Java 8是Java的一个重大版本,是目前企业中使用最广泛的一个版本。它支持函数式编程,新的Stream API 、新的日期 API等一系列新特性。掌握Java8的新特性已经是java程序员的标配,掌握了它,就可以看懂公司里的代码、高效率地处理大量集合数据以及消灭“嵌套地狱”等等。
2022-05-30 11:50:46
1483
1
原创 【进阶篇】IDEA 使用之 Debug 技巧分享(附高级玩法)
debug作为程序员的基础技能之一,在实际项目开发的排错中非常好用。debug不仅可以让我们更快定位到问题所在,而且debug模式的使用,也让程序员更清楚地了解到代码运行背后的逻辑。这篇文章为大家介绍一下IntelliJ IDEA中,debug在各种场景下的使用方法,主要分为基本使用和高级bebug两部分。
2022-05-23 15:34:31
816
1
原创 【解决方案】Spring Boot 中集成微信支付完整步骤(小程序)
微信支付是企业级项目中经常使用到的功能,作为后端开发人员,完整地掌握该技术是十分有必要的。
2022-05-23 09:49:27
6048
1
原创 【主流技术】关于 Mybatis Plus 的理解与应用
mybatis plus 是一个 mybatis 的增强工具,在其基础上只做增强不做改变。作为开发中常见的第三方组件,学习并应用在项目中可以节省开发时间,提高开发效率。
2022-05-22 23:56:17
1582
1
原创 【入门篇】NSQ 安装配置全步骤(Windows 环境)
zadig在本地启动aslan的过程中,使用到了nsq。下面是nsq在windows环境下的安装配置过程。
2021-09-20 15:51:24
1873
原创 【入门篇】关于 JFrog Artifactory 环境安装的步骤详解
何为JFrog?相信大家第一次听到JFrog这个词会有点陌生,按照官网的介绍,它是一个完全支持所有主要格式程序包的存储器管理器。作为一个二进制包管理工具,可以用于管理构建产物:即把生成的jar包存放到JFrog,当在生产环境进行部署时,Jenkins直接从JFrog中拉取对应的jar包即可。
2021-09-07 15:53:31
6386
1
原创 【技术调研】探究 JFrog 镜像管理—以 Docker 为例
在之前的调研中我发现,JFrog 的 jcr 版本是支持建立 Docker 仓库的,那么对镜像的管理(如增删改查)就成为了本次云原生项目不可或缺的部分,接下来我将以 JFrog Artifactory的 jcr 版本为基础,介绍如何对 Docker 镜像进行管理的。
2021-09-07 15:31:56
3897
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人