- 博客(21)
- 资源 (9)
- 收藏
- 关注
原创 掌握 @Cacheable、@CachePut 和 @CacheEvict 注解
从入门到精通:掌握 @Cacheable、@CachePut 和 @CacheEvict 注解
2024-01-30 10:10:03 1270
原创 Docker部署Java项目
关于是否应该将Java项目部署在Docker中的思考。传统方式:直接在服务器上运行jar包,依赖于服务器的环境配置,可能会遇到环境不一致的问题。Docker方式:通过容器化,你的应用和所有依赖都封装在一个Docker镜像中。部署时只需要在有Docker环境的机器上运行容器即可,环境一致性得到保障。
2024-01-24 09:00:28 472 1
原创 分布式ID解决方案
在分布式系统中,生成全局唯一ID是非常重要的,因为在分布式系统中,多个节点同时生成ID可能会导致ID冲突。下面介绍几种常用的分布式ID解决方案。
2024-01-22 09:27:34 1097
原创 使用redis秒杀的demo
模拟了一个商品秒杀过程。首先,它检查用户是否已经秒杀过,如果秒杀成功,会减少库存并记录秒杀用户。该示例中使用了Redis的事务机制,确保在多个命令之间的原子性操作。在实际生产环境中,你需要更多的优化和安全性措施,包括用户鉴权、分布式锁、防止超卖等。实现一个秒杀系统是一个复杂的任务,需要考虑诸多因素,如并发控制、库存管理、用户鉴权等。以下是一个简单的Redis秒杀Demo,用于演示基本的秒杀流程。请注意,这个示例仅用于核心库存demo演示,实际的生产环境中需要更多的安全性和性能优化。
2023-11-23 09:39:10 78
原创 Explain命令在优化查询说明
EXPLAIN命令可以帮助我们理解 MySQL 的查询执行过程,从而进行优化。通过选择合适的索引、减少数据访问、减少排序和分组、避免隐式类型转换、减少查询次数等方法,我们可以提高查询效率,并优化数据库性能。在使用EXPLAIN命令时,我们需要关注的字段包括idtabletypekeykey_lenrefrowsExtra等。通过分析这些字段,我们可以了解查询的执行计划、数据访问方式、索引使用情况、数据过滤情况、排序和分组操作、查询次数等信息,从而进行优化。
2023-11-20 08:49:24 52 1
原创 Spring Boot 常用注解大全:每个程序员必备
Spring Boot 中有许多常用的注解,这些注解用于配置、管理和定义 Spring Boot 应用程序的各个方面。以下是这些注解按大类和小类的方式分类,并附有解释和示例。
2023-11-16 09:19:12 82 1
原创 Redisson分布式锁
Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。Redisson提供了使用Redis的最简单和最便捷的方法。Redisson的宗旨是促进使用者对Redis的关注分离,从而让使用者能够将精力更集中地放在处理业务逻辑上。Redisson底层采用的是Netty 框架。支持Redis 2.8以上版本,支持Java1.6+以上版本。
2023-11-07 15:06:49 136
原创 零拷贝(Zero-copy)详解
零拷贝(Zero-copy)是一种高效的数据传输机制,在追求低延迟的传输场景中十分常用。本文先通过传统方案引出零拷贝机制,然后分析其细节,最后介绍它的部分应用。文中涉及到的操作系统理论知识都可以参考英文维基或者相关书籍,如Abraham Silberschatz著《操作系统概念》、Andrew S. Tanenbaum著《现代操作系统》等。
2023-10-10 09:24:29 185 1
原创 Nginx常用配置及和基本功能讲解
Ngnix是一款高性能反向代理服务器,学习它非常有必要,本文讲解了Ngnix核心配置,介绍了反向代理,负载均衡,动静分离三大功能,最后扩展了一些常用的指令。本文介绍了Ngnix的基础用法,后续的Ngnix内核以及原理部分有待研究。
2023-10-10 08:43:24 39 1
原创 Redisson分布式锁详细介绍
官方网站 & 高性能版官方描述:Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。Redisson提供了使用Redis的最简单和最便捷的方法。Redisson的宗旨是促进使用者对Redis的关注分离,从而让使用者能够将精力更集中地放在处理业务逻辑上。Redisson底层采用的是Netty 框架。支持Redis 2.8以上版本,支持Java1.6+以上版本。
2023-10-09 08:47:04 121 1
原创 BigDecimal不可触碰的6个坑
因为double类型只能表示有限的小数,而BigDecimal可以表示任意精度的小数,当一个BigDecimal对象的小数部分超过了double类型的精度范围时,使用doubleValue方法将会丢失精度。如果需要将BigDecimal转换为double类型,应该使用BigDecimal的toBigInteger方法来获取一个BigInteger类型的值,再使用doubleValue方法进行转换。需要注意的是,setScale方法返回的是一个新的BigDecimal对象,原对象并没有被修改。
2023-10-08 09:02:33 48 1
原创 Linux CentOS下删除.swp文件
出现这种问题的原因往往是因为网络断了或者开关vpn造成与阿里云断开连接,为了保护文件防止丢失自动生成.swp文件,解决方法如下。用ls -a 可查看遗留的.swp文件。rm -rf +文件名删除.swp文件。
2023-05-04 16:08:43 476
原创 Docker数据目录迁移
采用yum或者rpm方式安装的docker,在安装好以后,默认的数据目录是/var/lib/docker。很多人在安装好docker以后,会忽略对这个目录的修改,并开始使用docker。这就会导致系统根目录被过大的占用,下面就简单讲一下如何对该目录进行迁移。在数据迁移和备份完成以后,有通过建设软连接和修改配置文件两种方式来应用新数据目录。修改daemon.json配置文件,增加"data-root"配置信息。将新的数据目录软连接到默认目录,重启docker即可。3、 应用新数据目录。3.2 修改配置文件。
2023-05-04 16:04:40 190
原创 shell脚本中根据端口号kill对应的应用进程
在Jenkins的自动部署中,每次重新部署我们都需要先关闭原先的应用进程,然后重新部署启动。在使用tomcat时,我们可以通过startup.sh和shutdown.sh进行对应操作。但是在使用springboot的Jar包时,却无从下手了(有知道的告诉兄弟一声),所以采取的办法是直接kill掉应用的pid,然后重新部署启动。每次启动的pid都是不一样的,而已知的是应用的端口号,那么如果能通过端口号查询到应用的pid不就行了吗。
2023-05-04 16:00:10 438
原创 MongoDB为什么比Mysql高效
在分片集群中,有一个特定的MongoDB节点充当分片协调器(mongos),负责接收客户端的请求,将请求路由到对应的分片节点上,并将结果返回给客户端。总的来说,MySQL的数据存储方式是传统的关系型数据库方式,适用于结构化数据的存储和查询。具体来说,MongoDB中的数据是以BSON(Binary JSON)文档的形式组织的,每个文档都是一个键值对的集合,可以包含任何类型的数据。在MongoDB中,数据的读写操作都是基于内存的,MongoDB会将频繁访问的数据缓存在内存中,以提高查询和更新的速度。
2023-04-13 08:56:34 984
原创 Docker数据目录迁移
采用yum或者rpm方式安装的docker,在安装好以后,默认的数据目录是/var/lib/docker。很多人在安装好docker以后,会忽略对这个目录的修改,并开始使用docker。这就会导致系统根目录被过大的占用,下面就简单讲一下如何对该目录进行迁移。在数据迁移和备份完成以后,有通过建设软连接和修改配置文件两种方式来应用新数据目录。修改daemon.json配置文件,增加"data-root"配置信息。将新的数据目录软连接到默认目录,重启docker即可。3、 应用新数据目录。3.2 修改配置文件。
2023-04-13 08:54:58 278 1
原创 在技术界遗憾中生存!
出来工作也一年的了,感觉什么都需要学习和需要掌握,新手出场,难免会有很多不合适的地方,看见CSDN各技术人员写的文章,我真的很遗憾,不能把自己的作品给共享出来,因为自己写的东西实在是太差了,所以只能想大家学习,在此向大家致敬,学习程序还不到一年,感觉真的自己很渺小,做的很多东西不成熟,就学习C#NET和一个数据库,学习好的!那也很花自己的时间,学习技术没有什么界限,感觉学习会了一样,又会追求别的新
2007-11-28 00:54:00 445
iText中文帮助文档
2018-08-15
mysql sql 百万级数据库优化方案
2018-08-14
vlc播放器,播放m3u8
2018-07-27
opencv安装包V3.4.2
2018-07-27
CMMI中22个KPA
2010-01-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人