首页
学习
活动
专区
工具
TVP
发布

Java技术栈

专栏作者
1441
文章
1850718
阅读量
146
订阅数
支付宝一面:多线程事务怎么回滚?说用 @Transactional 可以回去等通知了!
1,最近有一个大数据量插入的操作入库的业务场景,需要先做一些其他修改操作,然后在执行插入操作,由于插入数据可能会很多,用到多线程去拆分数据并行处理来提高响应时间,如果有一个线程执行失败,则全部回滚。
Java技术栈
2023-02-27
9220
MySQL 批量操作,一次插入多少行数据效率最高?
我们在操作大型数据表或者日志文件的时候经常会需要写入数据到数据库,那么最合适的方案就是数据库的批量插入。只是我们在执行批量操作的时候,一次插入多少数据才合适呢?
Java技术栈
2023-02-27
2K0
拼夕夕二面:说说布隆过滤器与布谷鸟过滤器?应用场景?我懵了。。
来源:www.cnblogs.com/Courage129/p/14337466.html
Java技术栈
2023-02-27
3450
京东一面:MySQL 中的 distinct 和 group by 哪个效率更高?太刁钻了吧!
带着这两个问题找答案。接下来,我们先来看一下distinct和group by的基础使用。另外,如果你近期准备面试跳槽,建议在Java面试库小程序在线刷题,涵盖 2000+ 道 Java、MySQL 面试题,几乎覆盖了所有主流技术面试题。
Java技术栈
2023-02-27
1.9K0
Spring Boot + Gzip 压缩超大 JSON 对象,传输大小减少一半!
是这样的,业务背景是公司的内部系统有一个广告保存接口,需要 ADX 那边将投放的广告数据进行保存供后续使用。广告数据大概长这样:
Java技术栈
2023-02-27
6420
换上 HikariCP 连接池,太快了!
比如像线程资源、数据库连接资源或者 TCP 连接等,这类对象的初始化通常要花费比较长的时间,如果频繁地申请和销毁,就会耗费大量的系统资源,造成不必要的性能损失。
Java技术栈
2023-02-27
3060
数据库设计的 10 个最佳实践!
点击关注公众号,Java干货及时送达 数据库是应用及计算机的核心元素,负责存储运行软件应用所需的一切重要数据。为了保障应用正常运行,总有一个甚至多个数据库在默默运作。我们可以把数据库视为信息仓库,以结构化的方式存储了大量的相关信息,并合理分类,方便搜索及使用。 因此,数据库设计成为软件开发中的重要一环,对于开发者来说,设计一个高效的数据库至关重要。那么,为什么数据库设计很重要,“好”的标准又是什么?本文将做以介绍。 为什么数据库设计很重要? 用我们订购衬衫的在线商城网站举例。如今,从网站上订购衬衫的过程似
Java技术栈
2022-09-14
4800
Oracle 惨不忍睹!
点击关注公众号,Java干货及时送达 出品 | OSC开源社区(ID:oschina2013) DB-Engines 数据库流行度排行榜发布了 9 月份的更新。 可以看到,Oracle 较 8 月减少了 22.54 分,是分数下降最多的数据库,并且连续三个月出现了迅猛下滑。分数上涨较多的则是 MySQL 和 MongoDB。另外,最新数据库系列面试题整理好了,大家可以在Java面试库小程序在线刷题。 主流数据库的分数趋势变化: 看看各类型数据库的排名情况。 关系数据库前 10 名 Key-Value
Java技术栈
2022-09-13
1790
美团二面:加密后的数据如何进行模糊查询??被问懵了。。
点击关注公众号,Java干货及时送达 我们知道加密后的数据对模糊查询不是很友好,本篇就针对加密数据模糊查询这个问题来展开讲一讲实现的思路,希望对大家有所启发。 为了数据安全我们在开发过程中经常会对重要的数据进行加密存储,常见的有:密码、手机号、电话号码、详细地址、银行卡号、信用卡验证码等信息,这些信息对加解密的要求也不一样,比如说密码我们需要加密存储,一般使用的都是不可逆的慢hash算法,慢hash算法可以避免暴力破解(典型的用时间换安全性)。 在检索时我们既不需要解密也不需要模糊查找,直接使用密文完全匹
Java技术栈
2022-09-01
1.7K0
求求你们了,MyBatis 批量插入别再乱用 foreach 了,5000 条数据花了 14 分钟。。
点击关注公众号,Java干货及时送达 近日,项目中有一个耗时较长的Job存在CPU占用过高的问题,经排查发现,主要时间消耗在往MyBatis中批量插入数据。 mapper configuration是用foreach循环做的,差不多是这样。(由于项目保密,以下代码均为自己手写的demo代码) <insert id="batchInsert" parameterType="java.util.List">     insert into USER (id, name) values     <foreach
Java技术栈
2022-08-25
8480
扔掉工具类!MyBatis 一个简单配置搞定加密、解密,不能太方便了~!
点击关注公众号,Java干货及时送达 来源:juejin.cn/post/6963811586184052767 前言:介绍一个简单的MyBatis加解密方式,日常学习工作中提及这种方法的比较少,所以拿来说说,如果已经知道这种方法的忽略本文! 一、背景 在我们数据库中有些时候会保存一些用户的敏感信息,比如:手机号、银行卡等信息,如果这些信息以明文的方式保存,那么是不安全的。 假如:黑客黑进了数据库,或者离职人员导出了数据,那么就可能导致这些敏感数据的泄漏。因此我们就需要找到一种方法来解决这个问题。 二、
Java技术栈
2022-08-25
8680
面试官:Java 多线程怎么做事务控制?一半人答不上来。。
点击关注公众号,Java干货及时送达 推荐阅读:Spring Cloud Alibaba 杀疯了。。 项目代码基于:MySql 数据,开发框架为:SpringBoot、Mybatis 开发语言为:Java8 前言 公司业务中遇到一个需求,需要同时修改最多约5万条数据,而且还不支持批量或异步修改操作。于是只能写个for循环操作,但操作耗时太长,只能一步一步寻找其他解决方案。 具体操作如下: 一、循环操作的代码 先写一个最简单的for循环代码,看看耗时情况怎么样。 /***  * 一条一条依次对50000条
Java技术栈
2022-07-26
5.3K2
SQL 优化这么做就对了!
点击关注公众号,Java干货及时送达 作者:狼爷 来源:www.cnblogs.com/powercto/p/14410128.html 一、前言 在应用开发的早期,数据量少,开发人员开发功能时更重视功能上的实现,随着生产数据的增长,很多SQL语句开始暴露出性能问题,对生产的影响也越来越大,有时可能这些有问题的SQL就是整个系统性能的瓶颈。 二、SQL优化一般步骤 1、通过慢查日志等定位那些执行效率较低的SQL语句 2、explain 分析SQL的执行计划 需要重点关注type、rows、filtere
Java技术栈
2022-07-12
2390
京东一面:Redis 如何实现库存扣减操作?如何防止商品被超卖?
点击关注公众号,Java干货及时送达 来源:my.oschina.net/xiaolyuh/blog/1615639 在日常开发中有很多地方都有类似扣减库存的操作,比如电商系统中的商品库存,抽奖系统中的奖品库存等。 解决方案 使用mysql数据库,使用一个字段来存储库存,每次扣减库存去更新这个字段。 还是使用数据库,但是将库存分层多份存到多条记录里面,扣减库存的时候路由一下,这样子增大了并发量,但是还是避免不了大量的去访问数据库来更新库存。 将库存放到redis使用redis的incrby特性来扣减库
Java技术栈
2022-06-24
8240
使用 Elasticsearch 搭建自己的搜索系统,真心强大!
点击关注公众号,Java干货及时送达 作者:Hai Xiang 来源:www.cnblogs.com/haixiang/p/12867160.html 什么是elasticsearch Elasticsearch 是一个开源的高度可扩展的全文搜索和分析引擎,拥有查询近实时的超强性能。 大名鼎鼎的Lucene 搜索引擎被广泛用于搜索领域,但是操作复杂繁琐,总是让开发者敬而远之。而 Elasticsearch将 Lucene 作为其核心来实现所有索引和搜索的功能,通过简单的 RESTful 语法来隐藏掉 L
Java技术栈
2022-06-14
9910
6000 字+,帮你搞懂互联网架构演变历程!
点击关注公众号,Java干货及时送达 作者:小M 来源:https://cnblogs.com/xiaoMzjm/p/5223799.html 前言 我们以javaweb为例,来搭建一个简单的电商系统,看看这个系统可以如何一步步演变。 该系统具备的功能: 用户模块:用户注册和管理 商品模块:商品展示和管理 交易模块:创建交易和管理 阶段一、单机构建网站 网站的初期,我们经常会在单机上跑我们所有的程序和软件。此时我们使用一个容器,如tomcat、jetty、jboos,然后直接使用JSP/servlet技术
Java技术栈
2022-06-08
2360
面试官:大量请求 Redis 不存在的数据,从而打倒数据库,你有什么方案?
点击关注公众号,Java干货及时送达 作者:等不到的口琴 链接:www.cnblogs.com/Courage129/p/14337466.html 大家都知道,在计算机中,IO一直是一个瓶颈,很多框架以及技术甚至硬件都是为了降低IO操作而生,今天聊一聊过滤器,先说一个场景: 我们业务后端涉及数据库,当请求消息查询某些信息时,可能先检查缓存中是否有相关信息,有的话返回,如果没有的话可能就要去数据库里面查询,这时候有一个问题,如果很多请求是在请求数据库根本不存在的数据,那么数据库就要频繁响应这种不必要的IO
Java技术栈
2022-06-06
2590
MySQL 暴跌!
点击关注公众号,Java干货及时送达 文 | 局长 出品 | OSC开源社区(ID:oschina2013) DB-Engines 数据库流行度排行榜发布了 5 月份的更新。 与上个月的数据相比,各数据库的分数波动不大。Oracle 是本月分数增加最多的数据库,但也只是比上月多了 8 分,而且与去年同期相比,下降了 7.12 分。紧跟其后的 MySQL 和 SQL Server 跟去年同期相比,分数可谓是暴跌,分别下降了 34.28 和 51.46 分。 PostgreSQL 和 Redis 的分
Java技术栈
2022-05-12
3890
如何写出一手好 SQL ?很有必要!
点击关注公众号,Java干货及时送达 来源:编码砖家   链接:cnblogs.com/xiaoyangjia/p/11267191.html 背景 最近频繁出现慢SQL告警,执行时间最长的竟然高达5分钟。导出日志后分析,主要原因竟然是没有命中索引和没有分页处理 。 其实这是非常低级的错误,我不禁后背一凉,团队成员的技术水平亟待提高啊。改造这些SQL的过程中,总结了一些经验分享给大家,如果有错误欢迎批评指正。 MySQL性能 最大数据量 抛开数据量和并发数,谈性能都是耍流氓 。MySQL没有限制单表最大记
Java技术栈
2022-05-12
4710
亿级流量架构,服务器如何扩容?写得太好了!
点击关注公众号,Java干货及时送达 📷 为什么要扩容 说人话就是, 无论如何优化性能,能达到的最大值是一定的,对于一个用户量大的应用,可以对服务器进行各种优化,诸如限流、资源隔离,但是上限还是在那里
Java技术栈
2022-04-24
1K0
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
【玩转EdgeOne】征文进行中
限时免费体验,发文即有奖~
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品·最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档