
工具
WillliveWillWork
这个作者很懒,什么都没留下…
展开
-
优化10
你好,我是刘超。今天我将带你了解下服务间的网络通信优化。上一讲中,我提到了微服务框架,其中 SpringCloud 和 Dubbo 的使用最为广泛,行业内也一直存在着对两者的比较,很多技术人会为这两个框架哪个更好而争辩。我记得我们部门在搭建微服务框架时,也在技术选型上纠结良久,还曾一度有过激烈的讨论。当前 SpringCloud 炙手可热,具备完整的微服务生态,得到了很多同事的票选,但我们最终的选...原创 2020-04-01 11:54:26 · 247 阅读 · 0 评论 -
优化09
你好,我是刘超。当前大部分后端服务都是基于微服务架构实现的。服务按照业务划分被拆分,实现了服务的解耦,但同时也带来了新的问题,不同业务之间通信需要通过接口实现调用。两个服务之间要共享一个数据对象,就需要从对象转换成二进制流,通过网络传输,传送到对方服务,再转换回对象,供服务方法调用。这个编码和解码过程我们称之为序列化与反序列化。在大量并发请求的情况下,如果序列化的速度慢,会导致请求响应时间增加;而...原创 2020-04-01 11:53:55 · 223 阅读 · 0 评论 -
优化08
你好,我是刘超。提到 Java I/O,相信你一定不陌生。你可能使用 I/O 操作读写文件,也可能使用它实现 Socket 的信息传输…这些都是我们在系统中最常遇到的和 I/O 有关的操作。我们都知道,I/O 的速度要比内存速度慢,尤其是在现在这个大数据时代背景下,I/O 的性能问题更是尤为突出,I/O 读写已经成为很多应用场景下的系统性能瓶颈,不容我们忽视。今天,我们就来深入了解下 Java I...原创 2020-04-01 11:53:20 · 203 阅读 · 0 评论 -
优化06
你好,我是刘超。在上一讲中我提到过 Collection 接口,那么在 Java 容器类中,除了这个接口之外,还定义了一个很重要的 Map 接口,主要用来存储键值对数据。HashMap 作为我们日常使用最频繁的容器之一,相信你一定不陌生了。今天我们就从 HashMap 的底层实现讲起,深度了解下它的设计与优化。常用的数据结构我在 05 讲分享 List 集合类的时候,讲过 ArrayList 是基...原创 2020-04-01 11:52:32 · 132 阅读 · 0 评论 -
优化06
你好,我是刘超。上一讲中,我在讲 List 集合类,那我想你一定也知道集合的顶端接口 Collection。在 Java8 中,Collection 新增了两个流方法,分别是 Stream() 和 parallelStream()。通过英文名不难猜测,这两个方法肯定和 Stream 有关,那进一步猜测,是不是和我们熟悉的 InputStream 和 OutputStream 也有关系呢?集合类中新...原创 2020-04-01 11:51:53 · 190 阅读 · 0 评论 -
优化05-补充
你好,我是刘超。很多同学给我留言想让我讲讲工具,所以我的第一篇加餐就光速来了~熟练掌握一款性能测试工具,是我们必备的一项技能。他不仅可以帮助我们模拟测试场景(包括并发、复杂的组合场景),还能将测试结果转化成数据或图形,帮助我们更直观地了解系统性能。常用的性能测试工具常用的性能测试工具有很多,在这里我将列举几个比较实用的。对于开发人员来说,首选是一些开源免费的性能(压力)测试软件,例如 ab(Apa...原创 2020-04-01 11:50:54 · 379 阅读 · 0 评论 -
优化05
你好,我是刘超。集合作为一种存储数据的容器,是我们日常开发中使用最频繁的对象类型之一。JDK 为开发者提供了一系列的集合类型,这些集合类型使用不同的数据结构来实现。因此,不同的集合类型,使用场景也不同。很多同学在面试的时候,经常会被问到集合的相关问题,比较常见的有 ArrayList 和 LinkedList 的区别。相信大部分同学都能回答上:“ArrayList 是基于数组实现,LinkedLi...原创 2020-04-01 11:49:44 · 152 阅读 · 0 评论 -
优化04
你好,我是刘超。上一讲,我在讲 String 对象优化时,提到了 Split() 方法,该方法使用的正则表达式可能引起回溯问题,今天我们就来深入了解下,这究竟是怎么回事?开始之前,我们先来看一个案例,可以帮助你更好地理解内容。在一次小型项目开发中,我遇到过这样一个问题。为了宣传新品,我们开发了一个小程序,按照之前评估的访问量,这次活动预计参与用户量 30W+,TPS(每秒事务处理量)最高 3000...原创 2020-04-01 11:48:36 · 255 阅读 · 0 评论 -
优化03
你好,我是刘超。从第二个模块开始,我将带你学习 Java 编程的性能优化。今天我们就从最基础的 String 字符串优化讲起。String 对象是我们使用最频繁的一个对象类型,但它的性能问题却是最容易被忽略的。String 对象作为 Java 语言中重要的数据类型,是内存中占据空间最大的一个对象。高效地使用字符串,可以提升系统的整体性能。接下来我们就从 String 对象的实现、特性以及实际使用中...原创 2020-04-01 11:44:38 · 193 阅读 · 0 评论 -
性能调优02
你好,我是刘超。上一讲,我在介绍性能调优重要性的时候,提到了性能测试。面对日渐复杂的系统,制定合理的性能测试,可以提前发现性能瓶颈,然后有针对性地制定调优策略。总结一下就是“测试 - 分析 - 调优”三步走。今天,我们就在这个基础上,好好聊一聊“如何制定系统的性能调优策略”。性能测试攻略性能测试是提前发现性能瓶颈,保障系统性能稳定的必要措施。下面我先给你介绍两种常用的测试方法,帮助你从点到面地测试...原创 2020-04-01 11:43:47 · 400 阅读 · 0 评论 -
ElasticSearch
jdk1.8 安装 yum install java-1.8.0-openjdk* -y可能会报这个错误Caused by: java.lang.RuntimeException: can not run elasticsearch as root解决方法:adduser *** //添加用户su 用户名./elasticsearch后台运行 ./elastics...原创 2019-10-17 15:49:53 · 312 阅读 · 0 评论