java技术圈 为您找到相关结果 31

IntelliJ IDEA 常用快捷键 之 Mac 版_开发工具_CG国斌的博客

IntelliJ IDEA设置代码补全快捷键 01-14 阅读数 4067 由于IDEA原本的代码自动提示快捷键可能会跟输入法的快捷键冲突,所以更改首先File->Settings再将设置代码自动提示的快捷键设置为alt+/即可... 博文 来自: a549654065的博客 idea补全代码快捷键 09-17 阅读数 1432 两种方案:一:newString().var;回车即可;二:newString();ctrl+alt+v即可; 博文 来自: 乔治大哥的博客 IntelliJ IDEA For Mac 快捷键 03-09 阅读数 384 建议将 Mac 系统中与 IntelliJ IDEA 冲突的快捷键取消或更改,不建议改 IntelliJ IDEA 的默认快捷键。http:...阅读全文

博文 2020-04-09 13:05:38 CSDN博客

长连接/websocket/SSE等主流服务器推送技术比较

最近做的某个项目有个需求,需要实时提醒client端有线上订单消息。所以保持客户端和服务器端的信息同步是关键要素,对此我们了解了可实现的方式。本文将介绍web常用的几种方式,希望给需要服务器端推送消息的同学在选型上有一点启发。一、推送技术常用的集中实现的实现方式1.1 短连接轮询:前端用定时器,每间隔一段时间发送请求来获取数据是否更新,这种方式可兼容ie和支持高级浏览器。通常采取setInterval或者setTimeout实现。(轮询示意图)通过递归的方法,在获取到数据后每隔一定时间再次发送请求,这样虽然无法保证两次请求间隔为指定时间,但是获取的数据顺序得到保证。 缺点:1、页面会出现‘假死’setTimeout在等到每次EventLoop时,都要判断是否到指定时间,直到时间到再执行函数,...阅读全文

博文 2020-05-15 07:26:05 知乎

查看堆外内存_运维_浅蓝浅蓝

Java堆外内存排查小结 06-29 阅读数 1万+ 简介JVM堆外内存难排查但经常会出现问题,这可能是目前最全的JVM堆外内存排查思路。通过本文,你应该了解:pmap命令gdb命令perf命令内存RSS、VSZ的区别javaNMT起因这几天遇到一个比较... 博文 来自: 小姐姐味道 阿里巴巴 Arthas 3.1.0版本:在线教程、内存编译器和强大的自动补全 02-14 阅读数 52 Arthas是Alibaba开源的Java诊断工具,深受开发者喜爱。从Arthas上个版本发布,已经过去两个多月了,Arthas 3.1.0版本不仅带来大家投票出来的新LOGO,还带来强大的新功能和更... 博文 来自: weixin_33975951的博客 JVM堆外内存问题排查 07-15 阅读数 75...阅读全文

博文 2020-04-22 10:34:46 CSDN博客

JDK动态代理为什么必须用接口_Java_秀才的专栏

jdk的动态代理及为什么需要接口 05-14 阅读数 3437 参考文章:https://blog.csdn.net/zxysshgood/article/details/78684229动态代理有关,无非是使用JDK动态代理,和cglib动态代理。一直不待明白的... 博文 来自: 可爱马莲花的博客 深入分析JDK动态代理为什么只能使用接口 11-02 阅读数 403 初学JDK代理时,我们只知道调用一段构造方法Proxy.newProxyInstance(ClassLoader loader, Class[] interfaces, Invoca... 博文 来自: u014301265的博客 Java 动态代理为啥需要接口??? 03-08 阅读数 845 我们通过查看源码new...阅读全文

博文 2020-04-21 02:36:36 CSDN博客

关于mysql中LOAD DATA LOCAL INFILE指定列_数据库_qq_31083701的博客

mysql load data部分字段的正确写法 05-30 阅读数 6321 在日常运维中,会经常遇到将文件中数据导入到数据库中,如果是.sql文件,直接采用source方式即可;如果是.csv、.txt文件,可以采用 load data 方式。这两种方式都十分熟悉,这里说一种... 博文 来自: MYSQL轻松学的专栏 mysql LOAD DATA INFILE 导入数据某一列为空 10-08 SQL 语句: LOAD DATA LOCAL INFILE 'data_info.txt' INTO TABLE t1 IGNORE 1 LINES (@date,@time,@name,@weight_lb,@state) SET dt = CONCAT(@date,' ',@time), ...阅读全文

博文 2020-04-24 08:11:28 CSDN博客

Mac下MySQL中LOAD DATA INFILE出现The used command is not allowed with this MySQL version问题_数据库_AeroZhou

解决“LOAD DATA local INFILE”时出现The used command is not allowed with this MySQL version问题 09-07 阅读数 6440 “LOAD DATA local INFILE”时出现The used command is not allowed with this MySQL version问题。第一是版本确实过低,低于5.0... 博文 来自: ziyou434的博客 使用HeidiSQL连接Mysql数据库:导入本地csv文件,报错解决方法 02-16 阅读数 1241 第一次使用HeidiSQL连接MySQL,数据库连接成功后,进行csv文件的导入。本地文件存储于:尝试在heidiSQL中采用导入csv加载本地...阅读全文

博文 2020-04-24 08:13:46 CSDN博客

【主板上各种接口和附属部件科普】

前言:下一篇文章我打算简单介绍如何挑选主板,那么在下一篇文章写出来之前,我们先简单了解一下主板上那些沟沟槽槽,点点块块,详细了解一下主板各个接口以及附属部件的功能。顺带让一些小白在装机的时候,知道主板上这些东西都是干啥的,不至于看着布满密密麻麻电容的主板一脸蒙蔽。正文部分:【选个用来举例的主板】如果想要把目前所有的主板各种附属功能都讲一遍,那么我们最好直接找一个功能最多的主板,那么这里我找到一个图片素材比较多,而且也是非常有特色的主板,华硕Asus ROG Maximus XI Formula(M11F)图片素材来自:这可能是最漂亮的Z390--ASUS ROG Maximus XI Formula评测首先看到这个主板的时候大家应该都发现了,这主板和普通主板还不一样,M11F整块主板的绝大多...阅读全文

博文 2020-07-11 04:32:29 知乎

从科学记数法到浮点数标准IEEE 754 - 微信公众号:二进制之路

很遗憾,由于这篇文章有大量的公式,如果直接发表内容公式会显示不了,因此只能发成图片。 如果想获得更好的阅读体验,请点击:从科学记数法到浮点数标准IEEE 754 参考 https://zh.wikipedia.org/wiki/IEEE_754 https://zh.wikipedia.org/zh-hans/%E6%B5%AE%E7%82%B9%E6%95%B0 https://zh.wikipedia.org/wiki/%E7%A7%91%E5%AD%A6%E8%AE%B0%E6%95%B0%E6%B3%95 https://zh.wikipedia.org/wiki/NaN 《Java虚拟机规范(Java SE 7)》 《深入理解计算机系统》第2版 《码出高效》Java开发手册 htt...阅读全文

博文 2019-07-29 10:15:02 ITeye博客

SSE和WebSocket的用法和比较 - like2372

在我们日常开发中,会遇到服务端和客户端的通讯,今天我们就来比较一下HTML5新特性SSE和WebSocket的用法。 一,SSE 简介 SSE(Server-Sent Events,服务器发送事件)是围绕只读Comet 交互推出的API 或者模式。 SSE API允许网页获得来自服务器的更新(HTML5),用于创建到服务器的单向连接,服务器通过这个连接可以发送任意数量的数据。服务器响应的MIME类型必须是text/event-stream,而且是浏览器中的JavaScript API 能解析格式输出。SSE 支持短轮询、长轮询和HTTP 流,而且能在断开连接时自动确定何时重新连接。 客户端 //判断是否支持SSE if('EventSource' in window){ //初始化SSE v...阅读全文

梯度提升树(GBDT)原理小结 - 刘建平Pinard

在集成学习之Adaboost算法原理小结中,我们对Boosting家族的Adaboost算法做了总结,本文就对Boosting家族中另一个重要的算法梯度提升树(Gradient Boosting Decison Tree, 以下简称GBDT)做一个总结。GBDT有很多简称,有GBT(Gradient Boosting Tree), GTB(Gradient Tree Boosting ), GBRT(Gradient Boosting Regression Tree), MART(Multiple Additive Regression Tree),其实都是指的同一种算法,本文统一简称GBDT。GBDT在BAT大厂中也有广泛的应用,假如要选择3个最重要的机器学习算法的话,个人认为GBDT应该...阅读全文

博文 2020-03-24 03:41:00 博客园

Golang - 调度剖析【第二部分】 - Golang 攻略

回顾本系列的第一部分,重点讲述了操作系统调度器的各个方面,这些知识对于理解和分析 Go 调度器的语义是非常重要的。在本文中,我将从语义层面解析 Go 调度器是如何工作的,并重点介绍其高级特性。Go 调度器是一个非常复杂的系统,我们不会过分关注一些细节,而是侧重于剖析它的设计模型和工作方式。我们通过学习它的优点以便够做出更好的工程决策。 开始 当 Go 程序启动时,它会为主机上标识的每个虚拟核心提供一个逻辑处理器(P)。如果处理器每个物理核心可以提供多个硬件线程(超线程),那么每个硬件线程都将作为虚拟核心呈现给 Go 程序。为了更好地理解这一点,下面实验都基于如下配置的 MacBook Pro 的系统。 可以看到它是一个 4 核 8 线程的处理器。这将告诉 Go 程序有 8 个虚拟核心可用于并...阅读全文

博文 2019-06-18 07:15:00 SegmentFault 思否

linux sort,uniq,cut,wc命令详解 - ggjucheng

sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出。如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序。 sort语法 [root@www ~]# sort [-fbMnrtuk] [file or stdin] 选项与参数: -f :忽略大小写的差异,例如 A 与 a 视为编码相同; -b :忽略最前面的空格符部分; -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法; -n :使用『纯数字』进行排序(默认是以文字型态来排序的); -r :反向排序; -u :就是 uniq ,相同的数据中,仅出现一行代表; -t :分隔符,默认是用 [tab] 键来分隔; -k :以那个区间 (field) 来...阅读全文

博文 2021-01-28 12:40:43 博客园

计算机浮点运算精度问题的一些探讨_薛梦冉

本篇博客要点如下: 浮点运算常见的一些精度问题 浮点运算精度问题产生的原因 浮点运算精度问题的几点疑问进制的相互转换 十进制和二进制整数转换十进制和二进制小数转换 浮点数据的存储 IEEE 754标准浮点数表示举例误差分析 浮点精度丢失问题的几种解决方案 转换成整型进行计算使用四舍五入计算使用Decimal函数计算 参考资料 浮点运算常见的一些精度问题 相信各位在进行浮点型数据运算的时候,出现过一些不符合常规认知,或者是我们不愿出现的结果, 比如下面这些示例(以MongoDB,Java,Python为例): mongoDB中对某种类型的交易金额聚合求和的时候: db.FACT_TRADE_POSP.aggregate([ {$match:{'AC_DT':'20200306','ETL_SO...阅读全文

博文 2020-09-29 03:44:41 CSDN博客

Hadoop中的Mapper和Reducer数量设定

在对Mapper调优的过程中,一个经验法则是: map任务最好拥有一分钟以上的运行时间。 因为如果任务运行时间过短,将导致在整个作业的执行过程中任务启动所花费的时间过大,从而降低了实际的任务执行效率。 对map任务的运行时间影响最大的是Mapper的个数,不过与Reducer不同,Mapper的个数是无法显示指定的。 调节Mapper数量的一种方式是设置参数mapred.jobtracker.maxtasks.per.job, 但其只能限制每个job中并发运行的map或reduce任务的上限,而当实际运行的map数低于该上限时,该参数将失效。 如果想要对Mapper个数进行更加直接有效的控制,需要指定输入数据的分片大小。 输入分片(input split)是MapReduce框架为使map任...阅读全文

博文 2020-08-31 02:33:58 Summer is Green

定位IO瓶颈的方法,iowait低,IO就没有到瓶颈? - timer_go

通过分析mpstat的iowait和iostat的util%,判断IO瓶颈 IO瓶颈往往是我们可能会忽略的地方(我们常会看top、free、netstat等等,但经常会忽略IO的负载情况),今天给大家详细分享一下如何确认一台服务器的IO负载是否到达了瓶颈,以及可能优化、定位的点。 mpstat中看CPU的iowait高了,难道IO就瓶颈了吗??? 先来看一台典型的IO密集型服务器的cpu统计图: 可以看到,CPU总使用率不高,平均1.3%,max到5.6%,虽然大部分都耗在了iowait上,但才百分之五左右,应该还没到瓶颈吧??? 错了!这里要特别注意:iowait≠IO负载,要看真实的IO负载情况,一般使用iostat –x 命令: 你会发现iowait虽然只有5%,但是iostat中看到...阅读全文

博文 2020-11-13 09:43:04 博客园

Java的BigDecimal如何解决浮点数精度问题_Just for Fun LA

如题,今天我们来看下java.math.BigDecimal是如何解决浮点数的精度问题的,在那之前当然得先了解下浮点数精度问题是什么问题了。下面我们先从IEEE 754说起。 IEEE 754 IEEE二进制浮点数算术标准(IEEE 754)是20世纪80年代以来最广泛使用的浮点数运算标准,为许多CPU与浮点运算器所采用。这个标准定义了表示浮点数的格式(包括负零-0)与反常值(denormal number)),一些特殊数值(无穷(Inf)与非数值(NaN)),以及这些数值的“浮点数运算符”;它也指明了四种数值舍入规则和五种异常状况(包括异常发生的时机与处理方式)。 下面我们就以双精度,也就是double类型,为例来看看浮点数的格式。 signexponentfraction1位11位52位...阅读全文

博文 2020-09-29 03:41:26 CSDN博客

背景 又是一年一度的秋季校招开始了,以往的校招各个公司都会在公司现场或者学校现场安排学生进行现场面试?但是今年由于疫情的原因,不允许让同学在现场进行一个面试,所以今年的面试形式就从线下转到了线上,面试形式的转变,但是我们考核学生的方式依旧没有转变。校招的同学和社招的同学有很大的不同,他们没有丰富的工作经验,没有太多的项目经历,那么我们如何去衡量一个校招的同学呢?那就是基础和潜力,怎么去理解基础呢?俗话说不积跬步,无以至千里,不积小流,无以成江海,如果没有一个好的基础那么怎么才能成为一个优秀的工程师呢。如何去考察一个学生基础的好坏呢?我觉得有三个方面比较重要,计算机网络,操作系统以及算法和数据结构,通常来说计网考察得特别多,常见的一些问题:网络模型分层TCP和UDP的区别TCP三次握手和四次挥...阅读全文

博文 2020-09-06 14:35:04 mp.weixin.qq.com

15. 浮点数算法:争议和限制 — Python tutorial 3.6.3 documentation

15. 浮点数算法:争议和限制¶ 浮点数在计算机中表达为二进制(binary)小数。例如:十进制小数: 0.125 是 1/10 + 2/100 + 5/1000 的值,同样二进制小数: 0.001 是 0/2 + 0/4 + 1/8。这两个数值相同。唯一的实质区别是第一个写为十进制小数记法,第二个是二进制。 不幸的是,大多数十进制小数不能完全用二进制小数表示。结果是,一般情况下,你输入的十进制浮点数仅由实际存储在计算机中的近似的二进制浮点数表示。 这个问题更早的时候首先在十进制中发现。考虑小数形式的 1/3 ,你可以来个十进制的近似值。 0.3 或者更进一步的, 0.33 或者更进一步的, 0.333 诸如此类。如果你写多少位,这个结果永远不是精确的 1/3 ,但是可以无限接近 1/3 。...阅读全文

博文 2020-09-29 03:14:22 www.pythondoc.com

利用转换流将GBK格式文件以UTF-8输出_Java_十里の清风

utf-8格式如何转化为gbk格式 02-27 阅读数 6225 utf-8格式如何转化为gbk格式 今天在编码的时候由于存储的数据和取得数据格式不一致,... 博文 来自: HY845638534的博客 解决中文字符乱码问题,如何将gbk格式转换utf-8格式 04-06 阅读数 2104 中文乱码的原因是因为编码格式是gbk的,而显示的时候是utf-8格式的,所以需要将其utf-8格式,才能正常显示出来。1.gbk生成utf8程序需要经过两次转化。 1.gbk->uni... 博文 来自: u012681014的专栏 Java练习>转换流>>将GBK编码的文本文件,转换为UTF-8编码的文本文件 08-13 阅读数 1312 练习:转换文件编码。题目:将GBK编码的文本文件,转换为...阅读全文

博文 2020-04-26 06:30:21 CSDN博客

为什么阿里巴巴禁止使用BigDecimal的equals方法做等值比较?

BigDecimal,相信对于很多人来说都不陌生,很多人都知道他的用法,这是一种java.math包中提供的一种可以用来进行精确运算的类型。 很多人都知道,在进行金额表示、金额计算等场景,不能使用double、float等类型,而是要使用对精度支持的更好的BigDecimal。 所以,很多支付、电商、金融等业务中,BigDecimal的使用非常频繁。而且不得不说这是一个非常好用的类,其内部自带了很多方法,如加,减,乘,除等运算方法都是可以直接调用的。 除了需要用BigDecimal表示数字和进行数字运算以外,代码中还经常需要对于数字进行相等判断。 关于这个知识点,在最新版的《阿里巴巴Java开发手册》中也有说明: 这背后的思考是什么呢? 我在之前的CodeReview中,看到过以下这样的低级...阅读全文

博文 2021-05-26 02:44:44 juejin.cn

如何理解BIO、NIO、AIO的区别?

很多文章在谈论到BIO、NIO、AIO的时候仅仅是抛出一堆定义,以及一些生动的例子。看似很好理解。但是并没有将最基础的本质原理显现出来,如果没有没有从IO的原理出发的话是很难理解这三者之间的区别的。所以本篇文章从Java是如何进行IO操作为开头进行分析。 Java中的IO原理 首先Java中的IO都是依赖操作系统内核进行的,我们程序中的IO读写其实调用的是操作系统内核中的read&write两大系统调用。 那内核是如何进行IO交互的呢? 网卡收到经过网线传来的网络数据,并将网络数据写到内存中。 当网卡把数据写入到内存后,网卡向cpu发出一个中断信号,操作系统便能得知有新数据到来,再通过网卡中断程序去处理数据。 将内存中的网络数据写入到对应socket的接收缓冲区中。 当接收缓冲区的数据写好之...阅读全文

博文 2021-08-16 03:05:31 juejin.cn

Netty 权威指南笔记(二):Java NIO 和 Netty 对比_albon arith

Netty 权威指南笔记二Java NIO 和 Netty 对比 Java NIO 开发Netty 开发 示例程序 Netty 权威指南笔记(二):Java NIO 和 Netty 对比 Netty 是业界流行的 NIO 框架之一,它的健壮性、功能、性能、可定制性和可扩展性在同类框架中都说首屈一指的,也已经得到了成百上千商用项目的验证。Netty 框架都有什么优点呢? API 使用简单,开发门槛低。功能强大,预置多种编解码功能,支持多种主流协议。定制能力强,可以通过 ChannelHandler 对通信框架灵活扩展。性能高。成熟稳定,社区活跃,已经修复了 Java NIO 所有的 Bug。经历了大规模商业应用的考验,质量有保证。 Java NIO 开发 我们看一看在 笔记(一)里面的 Jav...阅读全文

博文 2021-08-27 08:12:00 CSDN博客

prometheus的summary和histogram指标的简单理解_prometheus histogram_wtan825的博客

prometheus的客户端与服务端 客户端是提供监控指标数据的一端(如写的exporter)。prometheus提供了各种语言的客户端库,需要通过Prometheus客户端库把监控的代码放在被监控的服务代码中。当Prometheus获取客户端的HTTP端点时,客户端库发送所有跟踪的度量指标数据到服务器上。详情见客户库服务端是指prometheus server,拉取、存储和查询各种各种指标数据。 histogram histogram是柱状图,在Prometheus系统中的查询语言中,有三种作用: 对每个采样点进行统计(并不是一段时间的统计),打到各个桶(bucket)中对每个采样点值累计和(sum)对采样点的次数累计和(count) 度量指标名称: [basename]的柱状图, 上面...阅读全文

博文 2023-09-11 03:21:56 CSDN博客

Netty+Nacos+Disruptor自研企业级API网关

## download:[Netty+Nacos+Disruptor自研企业级API网关](https://www.51xuebc.com/thread-566-1-1.html) 数据类型、变量和常量的使用 在计算机编程中,数据类型、变量和常量是非常重要的概念。它们可以帮助程序员更好地理解和处理数据,从而实现更加复杂的功能。本文将详细介绍这些概念及其使用。 数据类型 数据类型是指计算机中可用的不同种类的数据。在编程语言中,通常有多种基本数据类型,如整数、浮点数、布尔值、字符等。每种数据类型都有其自己的特定格式和范围。 例如,在Python编程语言中,有以下常见的数据类型: 整数(int):表示整数,如1、2、3等。 浮点数(float):表示小数,如1.5、3.14等。 布尔值(bool)...阅读全文

博文 2023-05-31 12:27:59 zxit666

负载均衡详解

本文分享自天翼云开发者社区《负载均衡详解》,作者:杨锦负载均衡(Load Balancing)是一种将网络流量或请求分发到多个服务器或资源的技术,以确保这些服务器或资源能够更均匀地处理负载,提高系统的性能、可用性和可伸缩性。负载均衡通常应用于Web服务、应用程序服务器、数据库服务器以及其他网络应用中。负载均衡的目标:均衡负载:主要目标是分配流量或请求,确保各个服务器或资源之间负载均匀,避免某一台服务器负载过高,而其他服务器处于低负载状态。提高性能:通过将流量分散到多个服务器上,可以提高整体性能。每个服务器只需处理一部分请求,从而降低了每台服务器的响应时间。提高可用性:如果一个服务器出现故障或不可用,负载均衡器可以将流量重定向到其他正常运行的服务器上,从而提高系统的可用性和容错性。实现扩展性:...阅读全文

天翼云CDN全站加速产品对websocket协议的支持

本文分享自天翼云开发者社区《天翼云CDN全站加速产品对websocket协议的支持》,作者:郭****迎1、背景介绍HTTP 协议有一个缺陷:通信只能由客户端发起。这种单向请求的特点,注定了如果服务器有连续的状态变化,客户端要获知就只能使用轮询的方案。轮询是在特定的时间间隔(如每1秒),由浏览器对服务器发出HTTP请求,然后由服务器返回最新的数据给客户端的浏览器。这种传统的模式带来很明显的缺点,即浏览器需要不断的向服务器发出请求,显而易见,轮询不仅效率特别低,且特别浪费带宽资源,因为HTTP请求可能包含较长的头部,其中真正有效的数据可能只是很小的一部分,显然这样会浪费很多带宽资源。因此,工程师们一直在思考,有没有更好的方法。websocket 就是这样发明的。websocket 协议诞生于2...阅读全文

博文 2023-05-19 09:40:06 Tianyiyun

Golang bytes缓冲区使用介绍_golang bytebuffer_小镇程序员的博客

缓冲区原理简介: go字节缓冲区底层以字节切片做存储,切片存在长度len与容量cap, 缓冲区写从长度len的位置开始写,当len>cap时,会自动扩容。缓冲区读会从内置标记off位置开始读(off始终记录读的起始位置),当off==len时,表明缓冲区已全部读完 并重置缓冲区(len=off=0),此外当将要内容长度+已写的长度(即len) <= cap/2时,缓冲区前移覆盖掉已读的内容(off=0,len-=off),从避免缓冲区不断扩容。 package main import ( "bytes" "fmt" ) func main() { byteSlice := make([]byte, 20) byteSlice[0] = 1 // 将缓冲区第一个字节置1 byteBuffer ...阅读全文

博文 2023-09-13 14:31:20 CSDN博客

提升网站性能的秘诀:为什么Nginx是高效服务器的代名词?

在这个信息爆炸的时代,每当你在浏览器中输入一个网址,背后都有一个强大的服务器在默默地工作。而在这些服务器中,有一个名字你可能听说过无数次——Nginx。今天,就让我们一起探索这个神奇的工具。 ### 一、Nginx是什么 Nginx(发音为“enginex”)是一个开源的高性能HTTP和反向代理服务器。它由伊戈尔·赛索耶夫(IgorSysoev)于2002年创建,自那时起,Nginx因其稳定性、丰富的功能集、简单的配置文件以及低资源消耗而受到广大开发者和企业的喜爱。 ![image.png](http://static.itsharecircle.com/240204/fe11b55476b02484be1a2cdfee81fbc4.png) Nginx是一款轻量级的Web服务器/反向代理服...阅读全文

博文 2024-02-04 10:46:10 YDYXCODE

DPDK简介和原理

本文分享自天翼云开发者社区《DPDK简介和原理》,作者:s****nDPDK是一种绕过内核直接在用户态收发包来解决内核性能的瓶颈技术。什么是中断了解DPDK之前,首先需要先了解什么是中断,其实中断就是电信号,中断分两种:硬中断和软中断。什么是硬中断?硬中断是由与系统相连的外设(比如网卡、硬盘)自动产生的,主要是用来通知操作系统系统外设状态的变化。比如当网卡收到数据包的时候,就会发出一个中断。我们通常所说的中断指的是硬中断(hardirq)。什么是软中断?软中断为了满足实时系统的要求,中断处理应该是越快越好。linux为了实现这个特点,当中断发生的时候,硬中断处理那些短时间就可以完成的工作,而将那些处理事件比较长的工作,放到中断之后来完成,也就是软中断(softirq)来完成。硬中断和软中断有...阅读全文

博文 2024-08-23 10:14:22 Tianyiyun

Java实现负载均衡算法--轮询和加权轮询 - 渊渟岳

Java实现负载均衡算法--轮询和加权轮询 1.普通轮询算法 轮询(Round Robin,RR)是依次将用户的访问请求,按循环顺序分配到web服务节点上,从1开始到最后一台服务器节点结束,然后再开始新一轮的循环。这种算法简单,但是没有考虑到每台节点服务器的具体性能,请求分发往往不均衡。 代码实现: /** * 普通轮询算法 */ public class RoundRobin { private static Integer index = 0; private static List nodes = new ArrayList<>(); // 记录轮询输出结果 private static StringBuffer stringBuffer = new StringBuf...阅读全文

博文 2024-08-21 17:57:27 博客园