
Java开发
文章平均质量分 88
贺佬湿
原名贺敏,互联网昵称贺佬湿,一个10年+资深IT互联网老司机,终身学习者。从0到1负责过百亿GMV电商平台的整体架构设计,月GMV从1亿到10亿+,轻松玩转亿级用户流量。Github开源社区的优秀贡献者,开源项目数超过6个,Star数2k+。大到待过国内上市公司、世界500强外企公司,小到创过业,做过物联网、互联网广告、电商等行业赛道。有经历公司在一年内,从100人+,发展到1300人+的团队规模扩展,产研团队近300人,史上最年轻的高级技术总监、首席架构师。目前以技术合伙人在创业ING,做全球广告变现+跨境电商方向,欢迎交流~
展开
-
【总结】Java 高效处理千万级数据:核心技巧与最佳实践分享
这篇文章主要为大家介绍: Java 如何处理千万级数据。原创 2023-07-05 00:30:00 · 2452 阅读 · 0 评论 -
【总结】JVM 垃圾收集器全面剖析:算法、实现和优化
这篇文章将对JVM 垃圾收集器进行全面剖析,涉及算法、实现和优化,帮你全面了解JVM。原创 2023-06-02 23:30:00 · 670 阅读 · 0 评论 -
【总结】Java 性能优化的具体方法及实践策略
关于Java 性能优化实践与策略,你知晓多少?本文帮你梳理。原创 2023-05-29 23:15:00 · 897 阅读 · 0 评论 -
【总结】SQL性能优化技巧整理汇总
背景一开始会用SQL时,我们都以为使用 MySQL 是非常的简单的,无非都是照着 【select from where group by order by】 这个格式套来套去;从来不会关注 SQL 的耗费时长,更不会关注查询的性能。但是当用户量上来了,表数据不断暴增,导致我们以前写的 SQL 的查询时间越来越长,最后还被 DBA 和领导疯狂吐槽一波。那么,此时我们是不是应该学习一下如何去优化我们的烂 SQL 呢?这篇文章,将从多方面去深入讲解如何优化 SQL索引优化索引的数据结构是 B.原创 2020-06-30 14:26:23 · 3000 阅读 · 0 评论 -
对一致性Hash算法,Java代码实现的深入研究
对一致性Hash算法,Java代码实现的深入研究原创 2017-05-09 18:03:50 · 1066 阅读 · 2 评论 -
CAS详解
CAS详解原创 2017-06-18 00:51:18 · 1701 阅读 · 0 评论 -
对Java意义重大的7个性能指标
对Java意义重大的7个性能指标原创 2016-11-23 11:39:33 · 465 阅读 · 0 评论 -
Java CAS和ABA问题
Java CAS和ABA问题原创 2017-06-26 14:45:36 · 623 阅读 · 0 评论 -
Java并发编程-主线程等待子线程解决方案
主线程等待所有子线程执行完成之后,再继续往下执行的解决方案public class TestThread extends Thread { public void run() { System.out.println(this.getName() + "子线程开始"); try { ...原创 2018-08-18 16:50:02 · 534 阅读 · 0 评论 -
到底什么是微服务?
到底什么是微服务?原创 2017-07-05 13:38:39 · 15897 阅读 · 1 评论 -
Java注解实战
Java注解教程:自定义注解示例,利用反射进行解析原创 2017-05-17 10:30:26 · 652 阅读 · 0 评论 -
java dump文件怎么生成和分析-JMAP用法
java dump文件怎么生成-JMAP用法原创 2017-05-08 17:10:34 · 67390 阅读 · 4 评论 -
如何用消息系统避免分布式事务?
如何用消息系统避免分布式事务?原创 2017-04-14 22:41:34 · 487 阅读 · 0 评论 -
mysql的空值与NULL的区别
mysql的空值与NULL的区别原创 2017-04-10 23:37:17 · 561 阅读 · 0 评论 -
JAVA当中Error和Exception的区别浅谈
JAVA当中Error和Exception的区别浅谈原创 2017-04-12 23:44:57 · 432 阅读 · 0 评论 -
一道据说是Google的面试题:25匹马的角逐
一道据说是Google的面试题:25匹马的角逐原创 2017-03-26 17:02:07 · 1365 阅读 · 0 评论 -
Java实现多重继承技巧
Java实现多重继承原创 2017-02-14 10:16:13 · 3634 阅读 · 1 评论 -
Java 中 Comparable 和 Comparator 比较
Java 中 Comparable 和 Comparator 比较原创 2017-02-14 11:09:29 · 333 阅读 · 0 评论 -
I/O 的五分钟法则(Five-Minute Rule)
I/O 的五分钟法则(Five-Minute Rule)转载 2017-08-02 09:10:42 · 4869 阅读 · 0 评论 -
如何使用java代码进行视频格式的转换(FLV)
如何使用java代码进行视频格式的转换(FLV)原创 2015-05-21 00:59:53 · 11918 阅读 · 5 评论 -
汇总一下2017年自己的开源项目
一、SpringBoot开发实战1.GitHub源码地址2. 涵盖内容:基本用法,Rest,Controller,事件监听,连接数据库MySQL,jpa,redis集成,mybatis集成(声明式与xml两种方式~对应的添删查改功能),日志处理,devtools配置,拦截器用法,资源配置读取,测试集成,Web层实现请求映射,security安全验证,rabbitMq集成,kafka集成等...原创 2017-11-17 12:10:24 · 7133 阅读 · 3 评论 -
【总结】亿级数据的访问和储存,实现和优化
是否你也遇到了类似的问题:如何处理海量数据比如订单数据越来越多(亿级),查询越来越慢,如何处理?分库分表会带来哪些副作用?可能的解决方式有哪些?问题目前经常使用的关系型数据库如MySQL、SQL Server等,都是以“行”为单位进行存储,为了快速检索,也都采用了B树或其他索引技术。从原理上来讲,表中的数据越多,索引树的范围越大,磁盘读取也越多,性能也就越低。实践从实...原创 2019-04-22 14:50:33 · 3984 阅读 · 0 评论 -
推荐一些阿里的JAVA开源项目
经常有些小伙伴问到,在研发过程中,我使用了哪些工具或者开源组件,其实有很多,有来自阿里的、美团等,这里整理一下阿里相关的,希望对你有用。虽然我不是阿里人,但对阿里的技术还是很认可的,阿里在IT行业里开源的项目数也是数一数二了。开源项目列表:1.分布式应用服务开发的一站式解决方案 Spring Cloud AlibabaSpring Cloud Alibaba 致力于提供分布式应...原创 2019-03-21 09:52:43 · 952 阅读 · 0 评论 -
【总结】Maven用阿里云作为中央仓库/国内镜像用法设置
背景:访问默认Maven中央仓库速度慢,故使用国内镜像,使用阿里云镜像仓库,加速开发效率。或者,搭建自己的Nexus私服,也可以实现同样的加速效果。核心配置编辑settings.xml文件<mirror> <!--This sends everything else to /public --> <id>nexus</id&g...原创 2018-11-22 17:51:53 · 6740 阅读 · 0 评论 -
【总结】Throwable/Error/Exception/RuntimeException区别
【总结】Throwable/Error/Exception/RuntimeException区别1.JAVA是将所有的错误封装为一个对象,其根本父类为Throwable,有两个子类:Error和Exception。2.Error是Throwable 的子类,用于指示合理的应用程序不应该试图捕获的严重问题。大多数这样的错误都是异常条件。虽然ThreadDeath错误是一个“正规”的条...原创 2018-11-06 09:28:38 · 986 阅读 · 0 评论 -
为什么说 Java 程序员必须掌握 Spring Boot ?
Spring Boot 2.0 的推出又激起了一阵学习 Spring Boot 热,那么, Spring Boot 诞生的背景是什么?Spring 企业又是基于什么样的考虑创建 Spring Boot? 传统企业使用 Spring Boot 会给我们带来什么样变革? 带着这些问题,我们一起来了解下 Spring Boot 到底是什么? Spring 历...原创 2018-10-10 08:58:27 · 2915 阅读 · 0 评论 -
【总结】高并发-幂等实现方案
一、背景 我们实际系统中有很多操作,是不管做多少次,都应该产生一样的效果或返回一样的结果。 例如: 1. 前端重复提交选中的数据,应该后台只产生对应这个数据的一个反应结果。 2. 我们发起一笔付款请求,应该只扣用户账户一次钱,当遇到网络重发或系统bug重发,也应该只扣一次钱; 3. 发送消息,也应该只发一次,同样的短信发给用户,用户会哭的; 4. 创建业务订单,一次业务请求只能创建一个...转载 2018-09-28 14:30:38 · 1843 阅读 · 0 评论 -
【总结】40个JAVA集合面试题
1.Java集合框架是什么?说出一些集合框架的优点?每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。它还包括在Java并发包中,阻塞接口以及它们的实现。集合框架的部分优点如下:...转载 2018-09-23 01:26:10 · 470 阅读 · 0 评论 -
【总结】53道JAVA线程面试题
1) 什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。Java在语言层面对多线程提供了卓越的支持,它也是一个很好的卖点。欲了解更多详细信息请点击这里。2) 线程和进程有什么区别?线程是...转载 2018-09-23 01:21:05 · 443 阅读 · 0 评论 -
【应用算法】信息流-推荐系统的去重策略
聊两个问题,它们看似和推荐系统没有必然关系,但实际上,在你构建自己的推荐系统的时候,不可避免地会遇到这两个问题。去重是刚需在推荐系统中,有一个刚需就是去重,那么说在哪些地方有去重的需求呢?主要是在两个地方:一个是内容源去重,另一个是不重复给用户推荐。先说说内容源的去重,这部分以前几年的图文信息流推荐为典型的例子。如果一个平台自己不生产内容,只是做内容搬运和聚合分发,那么...原创 2018-09-23 01:09:53 · 7904 阅读 · 0 评论 -
介绍两个性能压力测试工具ab/siege
介绍两个性能压力测试工具1. ABApache服务器自带有一个叫ab(ApacheBench)的工具,在bin目录下。ab专门用于HTTP Server的benchmark testing,可以同时模拟多个并发请求,使用这个轻巧的工具我们可以对服务器进行负载测试.安装下载:http://httpd.apache.org/download.cgi,详情安装可自行网上查找测试例...原创 2018-09-08 17:33:04 · 2142 阅读 · 0 评论 -
SpringCloud从入门到精通教程/SpringCloud Alibaba从入门到精通教程
对于SpringCloud,很多小伙伴问到了我的研究学习资料来源,除官方文档外,特例完整整理一下自己的平时参考学习其他资料,以及分享实战项目源码和代码资源,供大家参考学习主要教程:SpringCloud教程Spring Cloud Greenwich,基于Spring Boot 2.1.7,Github源码仓库案例下载一、我的教程(2019.11更新)SpringCloud...原创 2019-08-01 19:40:58 · 113573 阅读 · 31 评论 -
【踩坑】MySQL时间索引失效
项目中查时间数据段数据时,发现查询时间很长,RDS查了一下执行计划:各列解析说明:id:表示执行的顺序,id的值相同时,执行顺序是从上到下,id的值不同时,id的值越大,优先级越高,越先执行select_type:1、SIMPLE表示不包含子查询和union2、查询中若包含子查询,最外层查询则标记为:PRIMARY3、在select或者where列表中包含了子查询,则...原创 2018-08-18 17:52:04 · 35836 阅读 · 2 评论 -
高并发分布式系统中生成全局唯一Id汇总
这个功能应该是做分布式系统都会遇到的问题,故简单记录一下。点击查看,我的Github实现源码(Snowflake方式),目前已投入在生产中使用当中,每日ID生产数在亿级别以上其他方式,比如UUID方式,点击查看我的Github实现2源码以下是转载内容:数据在分片时,典型的是分库分表,就有一个全局ID生成的问题。单纯的生成全局ID并不是什么难题,但是生成的ID通常要满...原创 2018-07-05 09:23:37 · 2742 阅读 · 0 评论 -
数据库设计的重要性和设计原则
数据库设计的重要性和设计原则原创 2017-02-22 11:47:42 · 2789 阅读 · 0 评论 -
数据库索引的实现原理和分析用法
数据库索引的实现原理和分析用法原创 2017-02-21 13:56:46 · 1032 阅读 · 0 评论 -
Java死锁范例以及如何分析死锁
Java死锁范例以及如何分析死锁原创 2017-03-01 08:48:10 · 2122 阅读 · 0 评论 -
java 视频处理 mencoder
本系列文章导航Windows下FFmpeg快速入门ffmpeg参数解释mencoder和ffmpeg参数详解(Java处理视频)Java 生成视频缩略图(ffmpeg)使用ffmpeg进行视频文件转换成FLV整理java 视频处理 mencoderjava 视频处理 ffmped+mencoder Mencoder是Mplay转载 2015-05-21 00:59:52 · 3014 阅读 · 0 评论 -
FlexPaper+SWFTools 实现仿百度文库及一些小问题
最近要实现类似百度文库在线查看文档的功能,查阅了很多资料,最终觉得FlexPaper+SWFTools 实现比较好,FlexPaper是一个开源轻量级的在浏览器上显示各种文档的组件,被设计用来与PDF2SWF一起使用, 使在Flex中显示PDF成为可能,而这个过程并无需PDF软件环境的支持。它可以被当做Flex的库来使用。另外你也可以通过将一些例如Word、PPT等文档转成转载 2015-05-21 00:59:14 · 608 阅读 · 0 评论 -
Java+FlexPaper+swfTools仿百度文库文档在线预览系统设计与实现
笔者最近在给客户开发文档管理系统时,客户要求上传到管理系统的文档(包括ppt,word,excel,txt)只能预览不允许下载。笔者想到了百度文库和豆丁网,百度文库和豆丁网的在线预览都是利用flash来播放文档的,在网上查阅了大量资料,终于实现了该项功能,现将自己的设计和实现整理如下。一、如何将文档转成flash支持的swf文件实现在线播放?1.先用openOffice把ppt、wor转载 2015-05-21 00:57:21 · 1800 阅读 · 0 评论