近期,数据中心系统负荷大,mysql服务器的CPU动辄高达90%以上。代码和数据表存在很大优化空间。 这里分享一个定时任务批量处理数据的优化过程。 先介绍定时任务先介绍下面2张数据表 字段数据量platform_order平台交易订单表包括主键自增id、客户id、客户名称(冗余字段)、服务商id(levy_id)、服务商名称(levy_name,冗余字段)、付款方式、付款状态、收款人、收款人收款账号(卡号/支付宝/微信)、项目id、付款金额、渠道商、销售代表、创建时间、最近更新时间、付款完成时间,等等。550w,每天增量3w宽表,有多达54个字段。levy_info服务商信息表字段包括服务商
近期,数据中心系统负荷大,mysql服务器的CPU动辄高达90%以上。代码和数据表存在很大优化空间。 这里分享一个定时任务批量处理数据的优化过程。 先介绍定时任务先介绍下面2张数据表 字段数据量platform_order平台交易订单表包括主键自增id、客户id、客户名称(冗余字段)、服务商id(levy_id)、服务商名称(levy_name,冗余字段)、付款方式、付款状态、收款人、收款人收款账号(卡号/支付宝/微信)、项目id、付款金额、渠道商、销售代表、创建时间、最近更新时间、付款完成时间,等等。550w,每天增量3w宽表,有多达54个字段。levy_info服务商信息表字段包括服务商
能对比测试为了直观地感受Disruptor有多快,设计了一个性能对比测试:Producer发布1亿次事件,从发布第一个事件开始计时,捕捉Consumer处理完所有事件的耗时。测试用例在Producer如何将事件通知到Consumer的实现方式上,设计了两种不同的实现:Producer的事件发布和Consumer的事件处理在不同的线程,通过ArrayBlockingQueue传递给Consumer进行处理;Producer的事件发布和Consumer的事件处理在不同的线程,通过Disruptor传递给Consumer进行处理;3.1代码实现3.1.1计算代码进行CAS累加运算publicclas
能对比测试为了直观地感受Disruptor有多快,设计了一个性能对比测试:Producer发布1亿次事件,从发布第一个事件开始计时,捕捉Consumer处理完所有事件的耗时。测试用例在Producer如何将事件通知到Consumer的实现方式上,设计了两种不同的实现:Producer的事件发布和Consumer的事件处理在不同的线程,通过ArrayBlockingQueue传递给Consumer进行处理;Producer的事件发布和Consumer的事件处理在不同的线程,通过Disruptor传递给Consumer进行处理;3.1代码实现3.1.1计算代码进行CAS累加运算publicclas
简介GraalVM是高性能的JDK,支持Java/Python/JavaScript等语言。它可以让Java变成二进制文件来执行,让程序在任何地方运行更快。这或许是Java与Go的一场战争?下载安装GraalVM安装GraalVM首先到官网下载,我是直接到GitHubReleasePage下载的,请下载对应的系统包,我下载如下:graalvm-ce-java11-darwin-amd64-22.3.0.tar.gz下载后解压到某个目录,我的如下:/Users/larry/Software/graalvm-ce-java11-22.3.0接着测试对应的程序是否可以正常执行,如java--vers
简介GraalVM是高性能的JDK,支持Java/Python/JavaScript等语言。它可以让Java变成二进制文件来执行,让程序在任何地方运行更快。这或许是Java与Go的一场战争?下载安装GraalVM安装GraalVM首先到官网下载,我是直接到GitHubReleasePage下载的,请下载对应的系统包,我下载如下:graalvm-ce-java11-darwin-amd64-22.3.0.tar.gz下载后解压到某个目录,我的如下:/Users/larry/Software/graalvm-ce-java11-22.3.0接着测试对应的程序是否可以正常执行,如java--vers
简介Quarkus是类似于SpringBoot的框架,可以方便大家进行Java开发。利用GraalVM的魔力,能更好的适应云原生的场景,极快的启动速度。创建项目在IDEA就直接有创建Quarkus项目的初始化工具,直接根据自己需要填好即可,非常方便:选择自己需要的一些组件和依赖,我这里只选择WebReactive。这跟SpringBoot挺像的。生成的Java代码就一个文件,很简单小巧:编译运行创建成功后,把编译目标改为11,因为我用的是JDK11。通过mvncleanpackage尝试打包,下载依赖包。编译成功后,IDEA支持直接跑Quarkus程序,如下:启动成功如下:Quarkus在首页
简介Quarkus是类似于SpringBoot的框架,可以方便大家进行Java开发。利用GraalVM的魔力,能更好的适应云原生的场景,极快的启动速度。创建项目在IDEA就直接有创建Quarkus项目的初始化工具,直接根据自己需要填好即可,非常方便:选择自己需要的一些组件和依赖,我这里只选择WebReactive。这跟SpringBoot挺像的。生成的Java代码就一个文件,很简单小巧:编译运行创建成功后,把编译目标改为11,因为我用的是JDK11。通过mvncleanpackage尝试打包,下载依赖包。编译成功后,IDEA支持直接跑Quarkus程序,如下:启动成功如下:Quarkus在首页
文章目录git报错Failedtoconnecttogithub.comport443after21224ms:Timedout解决办法报错情况报错前提解决办法一:配置http代理解决方法二:配置SSH代理Windows平台Linux或MacOSgit报错Failedtoconnecttogithub.comport443after21224ms:Timedout解决办法报错情况在gitclone或者gitpush时,一直报错Failedtoconnecttogithub.comport443afterxxxms:Timedout报错前提网页可以正常打开github电脑连接VPN解决办法一:配
文章目录git报错Failedtoconnecttogithub.comport443after21224ms:Timedout解决办法报错情况报错前提解决办法一:配置http代理解决方法二:配置SSH代理Windows平台Linux或MacOSgit报错Failedtoconnecttogithub.comport443after21224ms:Timedout解决办法报错情况在gitclone或者gitpush时,一直报错Failedtoconnecttogithub.comport443afterxxxms:Timedout报错前提网页可以正常打开github电脑连接VPN解决办法一:配