自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

十年呵护的专栏

专注于程序员技术突破

  • 博客(344)
  • 资源 (4)
  • 论坛 (1)
  • 收藏
  • 关注

原创 Java性能调优:课程大纲

专栏主题本专栏将介绍Java应用程序的优化方法,分别从设计模式、JVM虚拟机、代码层面、架构设计等多方面结合实用样例技巧帮助学员理解理论知识,快速掌握优化技巧适用人群A 有技术语法基础,缺少完整项目开发经验,为找工作增加经验而学习B 工作1-2年的开发者C 工作2-5年开发者D 5年以上高级开发者课程规划章节规划 编号 章 节 预估字数 详细说明 1 性能优化概念-普及版 开篇前导论-性能问题的现状 性能的概述以及..

2020-07-15 23:38:30 164

原创 limp-cloud:API接口码表转换功能设计

1. 业务场景介绍功能描述:数据接口如何实现字典表的快速转换举例:如一张人员表的性别(SEX)字段这样定义 1代表男 2代表女返回人员接口信息如下{"SEX":1,"NAME":"张三"}但是业务需要转换为如下信息(字段1转化为了男){"SEX":"男","NAME":"张三"}2. 开发实战这里快速梳理下集成步骤1)定义相关字典表规则:1代...

2020-04-08 23:44:36 269

原创 数据采集 | 分布式日志采集-ELK方案设计
原力计划

前言分布式日志采集在比较大型的项目中经常用到,用来采集分析用户/系统产生的海量日志但是在微服务架构下每个提供者(provider)都要收集其日志,需要安装采集组件,无疑是对系统部署以及正常运行压力带来不小的挑战,那什么场景下选用该组件比较合适呢?其实ELK架构设计可应用于该日志采集场景的技术栈选型,个人觉得首先要从业务场景考虑,要有助于推动产品的发展近期项目发展需要主要基于以...

2020-04-04 17:59:30 488

原创 OpenResty代理转发UDP、TCP样例详解

前言nginx从1.9.0开始,新增加了一个stream模块,用来实现四层协议的转发、代理或者负载均衡等。这完全就是抢HAproxy份额的节奏,鉴于nginx在7层负载均衡和web service上的成功,和nginx良好的框架,stream模块前景一片光明用法stream模块用法和http模块差不多,关键的是语法几乎一致。熟悉http模块配置语法的上手更快以下是一个配置了tcp负...

2019-08-01 16:37:18 2154

原创 基于Docker部署Mysql主从复制-实战详解篇

一、前言MySQL的主从复制详细讲解,根据网上教程也踩了很多坑,浪费了一些时间 ,特地全面的梳理下基于docker构建的mysql主从复制构建过程、遇到的问题以及提供安装包样例等希望一篇文章足以解决搭建环境:一主(192.168.26.148) 一从(192.168.26.123)Centos 7.2 64位MySQL 5.7.24Docker 18.06.1-cedocker安装包共享:mysql主从 复制共享:二、MySql主从复制实战2.1 dock...

2020-09-14 22:24:58 222

原创 Java性能优化:架构设计-分布式架构设计

分布式架构设计一、前言随着微服务的流行,“分布式架构”作为高频词时常出现在开发者面前,我们是否理解分布式架构?它和微服务有什么区别呢?这一小节我们将讲解微服务和分布式架构那些事。二、概念1、分布式: 将一个大的系统划分为多个业务模块,业务模块分别部署到不同的机器上,各个业务模块之间通过接口进行数据交互。区别分布式的方式是根据不同机器不同业务。上面:service A、B、C、D 分别是业务组件,通过API Geteway进行业务访问。(注:分布式需要做好事务管理)..

2020-09-05 17:20:58 1106 9

原创 Java性能优化:架构设计-分库分表设计

分库分表设计一、前言美团外卖,每天都是几千万的订单,淘宝的历史订单总量应该百亿,甚至千亿级别,这些海量数据远不是一张表能Hold住的。事实上MySQL单表可以存储10亿级数据,只是这时候性能比较差,业界公认MySQL单表容量在1KW量级是最佳状态,因为这时它的BTREE索引树高在3~5之间。那如何解决这一问题呢?分库分表中间件有哪些以及各自的优缺点等,本小节将简单介绍下。二、问题答疑2.1、为什么要分库分表?如前言中的例子,公司业务发展越好,用户就越多,数据量越大,请求量越大,.

2020-09-05 17:17:14 217 1

原创 Java性能优化:架构设计-搜索引擎设计

搜索引擎设计一、前言所谓搜索引擎,就是根据用户需求与一定算法,运用特定策略从互联网检索出信息反馈给用户的一门检索技术。搜索引擎应用场景在全文检索、加快检索效率方面应用广泛,而本小节主要介绍我们工作中用的比较多的两个中间件Solr和ElasticSearch二、搜索引擎组件介绍2.1 常用场景项目开发中,遇到全文检索和加快检索效率业务场景,经常会选用Solr或ES(ElasticSearch)组件来解决,那我们来简单了解下相关设计全文搜索:一般网络用户适用于全文搜索引擎。这种.

2020-09-05 17:13:49 147

原创 Java性能优化:架构设计-缓存常见问题汇总

缓存常见问题汇总系统在高并发、高性能场景下正常运行,此时架构设计中缓存技术是起着至关重要的作用。缓存不仅仅是key-value的简单存取,它在具体的业务场景中,还是很复杂的,需要很强的架构设计能力。缓存架构设计不当,可能导致了系统崩溃。本下节将从缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等概念的讲解到缓存应用介绍下缓存那些事。一、常见的缓存中间件谈到缓存,当下常用的组件有redis、memcache、EhCache、mongodb等,缓存的使用主要解决以下几类问题第一,加快用.

2020-09-05 17:09:34 156

原创 Java性能优化:架构设计-流量控制设计

一、前言随着用户量日益增多,当达到一定峰值时,数以万计的流量来临,项目即时响应和顺利运行至关重要,如何设计架构才能够抗住这千万级的流量?架构设计的时候需要哪些"原则"?本章将从架构各个组件设计来剖析软件设计那些事。二、常用的架构设计"原则"我们经常听到项目需要支持高并发、高可用、自动扩容等词这些也是开发过程需要根据项目场景以及未来发展趋势首先考虑的。那这些设计原则可从不同的维度进行归纳总结,如下1.高并发:**服务拆分:**将整个项目拆分成多个子项目或者模块,分而治之,将项目进..

2020-09-05 17:05:21 174

原创 Java性能优化:案例实践

一、前言之前章节对JVM性能的监控和调优都有所介绍,本小节将汇总Web应用程序开发和部署过程中经常遇到的业务场景,结合工作实战案例从数据压缩、内容缓存、会话持久、静态文件分发等多维度探索Web应用调优。二、Web应用案例汇总Web应用涉及的优化方面非常多,以下将从多个维度介绍Web应用优化的注意事项2.1前后端分离在前后端不分离架构中,所有的静态资源和业务代码统一部署在同一台服务器上。服务器接收到浏览器的请求后,进行处理得到数据,然后将数据填充到静态页面中,最终返回给浏览器。实...

2020-09-05 17:00:29 170

原创 Java性能优化:数据传输优化

数据传输优化一、前言客户端与服务端经常进行着频繁的数据传输,数据传输又影响着用户体验,本小节就传输速率的优化,整理了部分注意事项。二、数据传输优化2.1 减少数据字节数:在开始的时候,采用的是xml传输,这就要使用到Serializable/Parcelable序列化以及反序列化,其传输速度之慢,基本已经被遗弃,后来又出现了JSON序列化传输,其常用工具就是GSON和fastjson,但随着时代的进步,json也体现出了局限性json的局限性主要体现在其是基于字符串的传输,在

2020-09-05 16:58:16 177

原创 6.1Java性能优化:数据交换技术简介

数据交换技术简介一、前言数据交换共享在企业系统交互时应用广泛,本小节将介绍数据交换的常用方式、XML和JSON两种数据交换格式的特点,在数据交换过程中根据各自特点合理选择对应技术栈。二、数据交换方式异构数据交换指异构数据处理环境下不同数据源的互操作。随着企业之间联系日趋紧密,业务系统不断增加,不同系统之间的信息交流日益增多,异构数据交换技术的应用在企业中也非常的广泛,常用的交换技术可以汇总如下:2.1电子数据交换(EDI)方式:EDI通过统一的格式来交换企业信息,企业通过专用的数据网络来交换数据,

2020-09-05 16:47:18 121

原创 5.8样例讲解(下)

样例讲解(下)一、前言承接上小节,我们将从Web应用运行的现状和调优过程继续进行样例的讲解,通过初步调优,可通过测试工具JMeter测试系统的指标提升(如吞吐量、响应时间、并发量等)二、调优前web应用运行状况上小节我们简单了解了Tomcat的调优参数,可通过简单参数设置提升系统性能。这小节我们用SpringBoot的一个项目deme为例,测试下项目性能指标。将应用程序通过java -jar…不设置任何JVM参数的情况启动,并启动JMeter,对Tomcat进行压力测试JMeter参数设置:

2020-09-05 14:59:21 137

原创 5.7样例讲解(上)

实战JVM调优一、前言本小节会将结合案例,较为系统的介绍JVM调优的过程,本模块共涉及以下内容,将用两小节实战剖析整个流程:Tomcat服务器基本状况和调优方法JMeter的使用方法(性能测试工具)Web应用程序调优过程和思路二、Tomcat简介和调优Tomcat是一个免费开源的Web应用服务器,应用很广泛的Servlet容器之一,官网下载安装后下图(8.0为例)bin目录主要是用来存放该目录下存放二进制的可执行文件。这些文件主要有两大类,一类是以.sh结尾的(linux命令),另

2020-09-05 14:53:29 119

原创 5.6JVM性能调优方法简介

JVM性能调优方法简介一、前言为了提升系统的性能,开发人员可以从系统的各个角度和层次对系统进行优化。除了开篇讲到的代码层面优化外,在软件架构上、JVM虚拟机层、数据库以及操作系统层面都可以通过各种方法进行调优,从而在整体上提升系统的性能。那本小计结将着重讲解下JVM虚拟机层面调优的一些方法。二、JVM调优介绍Java软件运行在JVM虚拟机上,软件开发后期对JVM调优一定程度提升了Java程序性能。作为Java软件的运行平台,JVM的各项参数将会直接影响Java程序的性能,如JVM的堆大小、垃圾回收

2020-09-05 14:49:02 130

原创 5.5JVM性能监控常用方法

JVM性能监控一、前言本小节会介绍JVM性能监控,掌握几种常用的监控工具辅助我们更好的了解JVM的性能状态。生产环境中监控JVM性能,分析监控数据,可以知道何时需要JVM调优,可见监控是非常重要的。JVM的监控范围包括垃圾收集、JIT编译以及类加载。那其中具体都包含哪些?如何监控呢?我们开始探索下吧二、垃圾收集监控JVM的垃圾收集非常的重要,因为它对应用的吞吐量和延迟有着深刻的影响。重要的垃圾收集数据包括:当前使用的垃圾收集器Java堆的大小新生代和老年代的大小永久代的大小Minor

2020-09-05 14:46:47 121

原创 5.4JVM垃圾收集机制

JVM垃圾收集机制一、前言上小节我们了解了常见的垃圾收集器,本小节将从内存回收、常用垃圾算法、常见面试题等维度拓展垃圾收集机制知识为什么学这些(来自刚接触者的疑惑):我们仅知道GC垃圾收集器,那何时回收内存、回收哪些内存、垃圾回收算法有哪些等等…这些问题对于想深入探索的小伙伴是不是很有“吸引力”,因为可以让我们更好的理解JVM工作原理好了,我们开始正文知识的探索吧!二、正文2.1 内存回收JVM的内存结构包括五大区域:程序计数器、虚拟机栈、本地方法栈、堆区、方法区。垃圾收集器所需关注主要

2020-09-05 14:39:16 132

原创 5.3HotSpot VM 的垃圾收集器

HotSpot VM 垃圾收集器一、前言垃圾收集器是垃圾回收算法(标记-清除算法、复制算法、标记-整理算法、火车算法)的具体实现,不同商家、不同版本的JVM所提供的垃圾收集器可能会有很在差别,本文主要介绍HotSpot虚拟机中的垃圾收集器。二、HotSpot VM介绍JDK7/8后,HotSpot虚拟机所有收集器及组合(连线),如下图(A)图中展示了7种不同分代的收集器:​ Serial、ParNew、Parallel Scavenge、Serial Old、Parallel

2020-09-05 14:36:50 118

原创 5.2JVM生命周期以及类加载

JVM生命周期以及类加载一、前言上小节我们对HotSpot VM做了下介绍,有了初步认识。本节介绍HotSpot VM运行时环境,让我们更好地理解运行时环境在VM中的职责和角色,也有助于了解VM运行时提供了哪些服务,在某些情况下我们只需要调节VM运行时环境的选项参数就能显著改善Java应用性能。如下图所示:VM运行时环境包含命令行选项解析、VM生命周期、类加载、字节码解释器、异常处理、同步、线程管理…本下节主要介绍下VM生命周期和类加载。二、VM生命周期谈VM生命周期不由想到人的整个过程1.

2020-09-05 14:26:55 160

原创 5.1HotSpot VM 介绍

HotSpot VM 介绍一、前言对于多数开发者Java虚拟机(JVM)是个**“黑盒”**,不去过多关注它的基本架构、内存管理机制以及优化方案。因为目前来讲JVM有了很多改进,Java应用的性能基本都能达到性能要求,开发者更多精力放在业务方面。但是若要提高整个项目的性能,就需要对JVM有个基本认识。本章将围绕JVM相关知识进行讲解:如JVM内存模结构内存分配相关的参数垃圾回收器的种类以及使用方法JVM调优实例讲解…说这么多,有的小伙伴觉得"鸭梨山大"了,刚从前两章“渡劫”升迁,所以

2020-09-05 14:25:19 145

原创 4.3问题总结和答疑

问题总结和答疑一个人怎样才能认识自己呢?决不是通过思考,而是通过实践。——德国剧作家、诗人、思想家歌德一、开篇前两章我们从设计模式和并发设计两方面介绍了优化方案,本小节我们汇总学习过程中遇到的问题,及时总结交流,如果您对这方面有疑惑,可以留言进行交流,好了,我们先总结下常见问题。二、问题汇总1.设计模式的学习是否必须?需要掌握到什么程度?小伙伴在工作之初就开始接触设计模式,随着工作年限增多,设计模式掌握越发重要,汇总一句:如果我们想成为一个高级软件工程师或者架构师那么设计模式学习以及掌握是

2020-09-05 14:23:51 149

原创 4.2并发常用技术点汇总

并发常用技术点汇总开篇前上篇对多线程设计模式做了简单讲解,本篇我们将从:JDK多任务执行框架、JDK并发数据结构、JDK并发控制方法、锁的性能和优化、无锁的并行计算、协程等6方面汇总并发编程技术点,让小伙伴学习有个总体脉络。学习小提示:并发编程在某些高并发场景下能显著提升程序性能,本章带大家了解下并发编程方面的知识,但本小节涵盖知识点比较多,学习过程中遇到不明白知识点要及时讨论汇总。一、JDK多任务执行框架为了给并行程序开发提供更好的支持,Java提供了Thread类、Runnable接口

2020-09-05 14:12:30 118

原创 4.1并发应用场景

并发应用场景思索:两个工人在砌一堵墙.有人过来问:“你们在干什么?”第一个没好气地说“没看见吗?砌墙!”第二个人笑了笑说:“我们在盖一幢高楼.”这个故事不新鲜了,小伙伴基本都听过,其实编码常被比喻成“搬砖”,和上面例子也有类似之处。枯燥的重复编码工作让我们提升受限,如何让传统重复的CRUD工作“量变产生质变”,提高代码质量,高性能运行服务整个系统?通过上章节的设计模式以及本章并发编程学习,都是从软件代码层面讲解编程需要简洁、高效、设计合理。学以致用、温故知新,希望小伙伴能够应用到项目实战当中。并

2020-09-05 14:07:26 214

原创 3.4 在合适的场景选择合适的设计模式(下)

在合适的场景选择合适的设计模式(下)一、前言行为模式:关注系统中对象之间的相互交互,研究系统在运行时对象之间的相互通信和协作,进一步明确对象的职责,共11种模式。本小节会结合案例简单介绍行为型模式(11种):Chain of Responsibility ( 责任链模式 ) 、Command ( 命令模式 ) 、Command ( 命令模式 ) 、Interpreter ( 解释器模式 ) 、Iterator ( 迭代器模式 ) 、Mediator ( 中介者模式 ) 、Memento ( 备忘录模式

2020-09-05 10:19:18 70

原创 3.3 在合适的场景选择合适的设计模式(中)

在合适的场景选择合适的设计模式(中)一、前言设计模式大体上分为三大类创建型模式、结构型模式、行为型模式。本小节会结合案例简单介绍结构型模式(7种)中比较重要的几种:Adapter ( 适配器模式 ) ,Bridge ( 桥接模式 ) ,Composite ( 组合模式 ) ,Decorator ( 装饰模式 ) ,Facade ( 外观模式 ) ,Flyweight ( 享元模式 ) ,Proxy ( 代理模式 ) 。学习过程是艰难的,但是每坚持迈一步,我们都在进步二、结构型模式结构型模式

2020-09-05 10:11:50 60

原创 3.2 在合适的场景选择合适的设计模式(上)

在合适的场景选择合适的设计模式(上)一 、前言上个小节中我们讲到 JAVA 中的设计模式大体上分为三类:创建型模式、结构型模式、行为型模式。这个小节我会带着大家结合案例简单介绍下工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式这 5 种创建型模式下的设计模式以及在什么样的情况下要运用这些设计模式。设计模式是对设计原则的具体化。用江湖话说就是武林秘籍,总结出来的一些固定套路,可以帮助有根基的程序员迅速打通任督二脉,从此做什么都特别快。下面我们就一起来看看吧:二、创建型模式介绍2.1 单例

2020-09-05 10:07:28 71

原创 ElasticSearch实战教程:docker快速安装Kibana(2)

一、前言本小节介绍docker安装kibana过程,快速上手:强调一些:Elasticsearch和Kibana必须用相同版本,这个可以避免很多坑二、Docker安装kibana实战1.下载镜像docker pull docker.elastic.co/kibana/kibana:7.9.02.启动镜像docker run -d --name kibana --network host -p 5601:5601 docker.elastic.co/kibana/ki...

2020-08-23 18:51:06 113

原创 ElasticSearch实战教程:ElasticSearch快速安装(1)

一、前言本小节介绍docker安装es过程,快速上手二、Docker安装ElasticSearch实战1.下载镜像docker pull docker.elastic.co/elasticsearch/elasticsearch:7.9.02.启动Elasticsearchdocker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch...

2020-08-23 14:05:12 123

原创 ApiSix全动态能力

一、前言:热更新和热插件: 无需重启服务,就可以持续更新配置和插件。 代理请求重写: 支持重写请求上游的host、uri、schema、enable_websocket、headers信息。 输出内容重写: 支持自定义修改返回内容的status code、body、headers。 Serverless: 在 APISIX 的每一个阶段,你都可以添加并调用自己编写的函数。 动态负载均衡:动态支持有权重的 round-robin 负载平衡。 支持一致性 hash 的负载均衡:动态支持一致性 h.

2020-08-16 12:40:35 273

原创 ApiSix基础入门:协议解析-样例详解

一 、http协议配置1、反向代理测试①启动一个正常的web服务器也可以使用已经安装的openresty#启动web服务器 默认80端口/usr/local/openresty/bin/opennresty#检测服务是否开启 80端口netstat -lntp |grep 80②配置指向后端服务到这里还暂时不能使用。需要配置具体路由信息进行转发测试③配置路由规则信息④测试查看通过上图,可以查看到已经转发...

2020-08-16 11:46:04 511 1

原创 性能优化:简明扼要设计模式

简明扼要设计模式一、简介设计模式是对面向对象设计中反复出现的问题的解决方案。这个术语是在1990年代由Erich Gamma等人从建筑设计领域引入到计算机科学中来的。这个术语的含义还存有争议。算法不是设计模式,因为算法致力于解决问题而非设计问题。设计模式通常描述了一组相互紧密作用的类与对象。设计模式提供一种讨论软件设计的公共语言,使得熟练设计者的设计经验可以被初学者和其他设计者掌握。设计模式还为软件重构提供了目标软件编程过程中根据场景选择合适的设计模式可以产出更好的产品,而不当的设计则会影响

2020-08-08 13:14:49 93

原创 搭建蓝破云构建思路

stream { upstream cloudsocket { hash $remote_addr consistent; # $binary_remote_addr; server 192.168.28.209:3389 weight=5 max_fails=3 fail_timeout=30s; } upstream ftpsocket { hash $remote_addr consistent; ...

2020-07-30 16:55:22 198

原创 Java性能调优:问题总结和答疑

问题总结和答疑一、开篇这篇文章以问答的方式归纳了一些关于性能优化的常见问题,希望有助于理解性能优化技能点为后续章节学习做好铺垫。如果你对这方面有什么疑惑,本篇文章可以给你一个粗略的答案,也可下方留言,共同讨论。二、问题汇总1.性能优化需要学习多长时间才能熟练掌握?学完该专栏能达到什么水平?举个例子:刚毕业大学生报名培训机构之前最关心的问题是:培训多长时间(一般4个月),能达到什么样的水平,培训完能找到工作吗?同理该专栏学习周期很短,会让小伙伴有个整体优化思想,出现性能问题知道从哪方面着手优化,

2020-07-18 10:23:09 151

原创 Java性能优化:不容忽视的性能优化小技巧(下)

Java性能优化的常见细节(下)一、前言承接上一小节,我们将继续细节优化总结,这小节我们列下其分类注意事项。学习建议:对每个小细节优化方案建议“深挖剖析”原理,这样可加深印象二、正文总结我们在整理下其它常见优化样例,如下所示2.1 数据类型1.尽量使用基本数据类型代替对象String str = "hello";上面这种方式会创建一个“hello”字符串,而且JVM的字符缓存池还会缓存这个字符串;String str = new String("hello");此时程序除创建

2020-07-18 10:21:17 127

原创 Java性能调优:不容忽视的性能优化小技巧(上)

Java性能优化的常见细节(上)一、开篇前上小节我们接触了一些简单的Demo优化样例,合理的优化程序会让我们的项目性能更高运行速度更快。 Java编程中需要注意细节众多,稍不留神就会"采坑",所以我们编码过程需要细心并时刻总结。之后两小节我们将会收集整理编程常见细节优化小技巧,样例不多,但是需要我们养成关注细节的态度。二、正文样例本篇将从Java程序方面汇总下常见细节问题:如线程问题、数据类型、设计模式、变量使用、对象创建、修饰符、异常使用等维度进行讲解。2.1线程问题:1.慎用synchr

2020-07-18 10:19:30 142

原创 Java性能调优:写一个更快的 Hello World

写一个更快的Hello world一 、前言第一章我们介绍了性能优化理论、常用优化方案以及相关性能指标等知识,第二章我们会结合比较容易入门的一些小demo开启我们性能优化之路。二、性能调优模块概览如何测试、分析和优化 Java 程序的性能是目前 Java 程序员最关心的技能,但要掌握这个技能,必须要深入到 Java虚拟机甚至操作系统层面的知识和实践经验,掌握一些监控 Java 程序的性能工具,了解一些性能优化方法等,从而快速的找到程序中的性能瓶颈,并有效改善程序的性能。性能调优最困难的是找出问题

2020-07-18 10:16:50 165

原创 Java性能优化小技巧
原力计划

Java 性能优化小技巧对软件系统进行优化,首先要明确软件的性能目标,清楚地指出优化的对象和目的。之后在借助软件进行测试,看是否达到相关目标,若没有达到则查找出当前的性能瓶颈。本小节将讲解调优分析步骤以及常见的优化方案,该小节的学习可辅助我们快速定位性能瓶颈,用合适方案解决系统性能问题。一、调优分析性能调优的步骤主要有:衡量系统现状、设定调优目标、寻找性能瓶颈、性能调优,验证是否达到调优目标。我们主要关注调优步骤中的 寻找性能瓶颈 和 性能调整(优化) 两个关键的阶段阶段,主要思路见下图: 寻找性

2020-07-15 23:51:04 207

原创 各种性能指标解读化指标
原力计划

各种性能指标解读性能调优可以从 硬件(计算机体系机构)、操作系统(OS\JVM)、文件系统、网络通信、数据库系统、中间件、应用程序本身等方面入手。那性能优化有哪些可以参考的指标呢?其实这些指标我们在开篇的时候就已经概述过了,这节课会带着大家一一来解读这些指标。一、性能优化指标下面我们详细解读下以下各个性能指标。执行时间:一段代码从开始运行到运行结束所使用的时间。CPU时间:(算法)函数或者线程占用CPU的时间。内存分配:程序在运行时占用的内存空间。吞吐量:单位时间内系统处理的客户端请

2020-07-15 23:49:07 164

原创 你需要了解的性能优化理论知识
原力计划

你需要了解的性能优化理论知识好的开始是成功的一半,好的习惯是成功的开端。从这个小节开始就踏上了性能优化的征程,是不是有点“激动”呢!这个小节我会给大家介绍下性能调优的两个重要理论。(有点偏理论,之后篇章会结合项目实践案例分析)同学们曾经有没有这样想过:卧槽我写的程序为什么那么慢?它为什么卡住不运行了?它们在做什么?程序哪个阶段用时比较长?如果你曾经写得代码遇见过这样的问题,说明你的代码很可能出现了性能方面问题。但是你肯定也这样想过:算了算了,不管了,反正功能已经实现了考虑什么性能,真的是浪费时

2020-07-15 23:46:09 120

TaskQuartz.zip

面试过程遇到的个技能提点,定时任务管理工具;个定时任务 的增删改查管理 介绍:StdSchedulerFactory 的调度器,所有的调度任务都会在这个工厂中,不容易控制,而DirectSchedulerFactory这个工厂是每个new生成一个实例,更容易控制

2020-05-07

年薪30万以上Java软件工程师简历模板下载(适用1-5年)

年薪30万以上个人简历参考:(3个word文档) 简历共包括11类细项目 1.基本信息 2.求职意向 3.项目经验 4.工作经历 5.教育背景 6.所获证书 7.掌握技能 8.自我评价 9.兴趣点 10.个人成果 (文档) 11.自荐信(文档)

2019-04-05

gcc离线安装(全部依赖包)

支持linux离线安装gcc运行环境;在安装rabbit或者 是nginx时我们需要gcc环境,此时需要各种依赖包 ,特定收集整理并形成文档,希望对其他人有帮助,解压 后看readme文档。操作步骤:1.将文件解压到指定目录 2.进入该目录执行 rpm -Uvh *.rpm --nodeps --force 即可 3.3. 都安装成功后,验证gcc -v

2018-09-29

RSA、DES混合加密解决方案、数字签名

RSA、DES混合加密解决方案、数字签名,该文件包含远吗和可直接使用的jar。功能包扩 0、程序自动生成公私钥。 1、客户端 公钥加密 2、服务端 私钥解密数据获取内容3、服务端私钥加密数据4、客户端公钥解密 5、私钥签名过程 6、公钥校验签名

2018-05-19

十年呵护的留言板

发表于 2020-01-02 最后回复 2020-02-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除