自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Java程序员的知识博客

Java程序员的知识博客

  • 博客(528)
  • 资源 (4)
  • 收藏
  • 关注

原创 Linux上TCP的几个内核参数调优

Linux作为一个强大的操作系统,提供了一系列内核参数供我们进行调优。光TCP的调优参数就有50多个。在和线上问题斗智斗勇的过程中,笔者积累了一些在内网环境应该进行调优的参数。在此分享出来,希望对大家有所帮助。

2024-06-10 23:26:44 865

原创 【笔记】高并发-秒杀架构实战-Redis实现

【笔记】高并发-秒杀架构实战-Redis实现

2024-09-01 17:43:03 275

原创 【笔记】redis-单机-57万QPS-实践

【笔记】redis-单机-57万QPS-实践

2024-08-17 11:12:07 322

原创 小额批量支付系统(BEPS)的资金清算流程

例如,在一个清算周期内,A 银行发起的小额批量支付业务中,向其他银行的净支付金额为 100 万元,B 银行的净支付金额为 50 万元,C 银行的净收款金额为 80 万元。经过轧差清算,A 银行的清算账户被借记 100 万元,C 银行的清算账户被贷记 80 万元,B 银行因净支付 50 万元,其清算账户被借记 50 万元。

2024-08-12 08:43:00 407

原创 大额实时支付系统(HVPS)的资金清算流程

主动退回仍在排队的贷记支付业务、即时转账业务和单边业务,但错账冲正、同城清算系统轧差净额等不可退回,必须当日清算。

2024-08-12 08:39:24 383

原创 央行支付系统主要的资金清算方式

工作日期间5×21小时连续运行(大额支付系统运行时间为前一自然日20:30 - 当日17:15 ,运行工作日为国家法定工作日) ,特殊情况下可以根据央行的安排进行紧急清算等操作。:根据外币业务的特性和国际市场的时间等因素综合确定,通常在工作日的规定时间内进行主要清算处理等工作,同时也会根据特殊紧急情况等进行应急处理。:同小额批量支付系统一样基本是7×24小时运行(但实际中银行自身可能对一些业务时间有额外规定)。:实行7×24小时连续运行 ,为社会提供全天候的支付清算服务。

2024-08-12 08:34:21 407

原创 【笔记】ReactiveRedisTemplate压测-单机20万QPS-实践

笔记】ReactiveRedisTemplate压测-单机20万QPS-实践

2024-08-11 21:03:31 140

原创 【笔记】单机100万QPS的ID生成器

【笔记】单机100万(百万)QPS的ID生成器

2024-08-11 19:14:35 682

原创 【笔记】微信抢红包-3千万的技术架构

【笔记】微信抢红包-3千万的技术架构

2024-08-10 18:56:43 522

原创 log4j2配置基础介绍

将日志请求插入应用程序代码需要大量的规划和努力。观察表明,大约4%的代码用于日志记录。因此,即使是中等规模的应用程序,其代码中也会嵌入数千条日志语句。鉴于其数量众多,必须能够在无需手动修改的情况下管理这些日志语句。使用XML、JSON、YAML或属性文件格式的配置文件。通过编程方式创建和实现。通过调用接口中暴露的API将组件添加到默认配置中。通过调用内部Logger类的方法。所有可用格式在功能上是等效的。例如,可以使用属性格式重写XML格式的配置文件,反之亦然,而不会损失任何功能。

2024-08-10 11:09:18 837

原创 log4j2的RollingFileAppender

RollingFileAppender 是一种可以根据特定条件滚动生成新日志文件的输出源,它能够有效地管理日志文件,避免单个文件过大,并提供了灵活的文件命名和存储策略。TimeBasedTriggeringPolicy(基于时间的触发策略)SizeBasedTriggeringPolicy(基于大小的触发策略)来格式化日志事件,并且配置了基于时间的触发策略。)创建一个新的日志文件,文件命名模式为。的文件,并在每天(根据日期格式。被配置为将日志写入名为。灵活的文件命名和存储。

2024-08-10 10:11:55 840

原创 log4j2的Appender基础介绍

功能:接受对其他 Appender 的引用,并在单独的线程上异步地将日志事件写入这些 Appender。注意,在写入这些 Appender 时发生的异常将对应用程序隐藏。配置参数:要异步调用的 Appender 的名称,可以配置多个。blocking:如果为true,当队列已满时,Appender 将等待直到有空闲位置。如果为false,当队列已满时,事件将被写入错误 Appender(如果配置了)。默认是true。

2024-08-10 09:53:51 884

原创 Log4j2中RollingFile的文件滚动更新机制

RollingFileAppender是Log4j2中的一种能够实现日志文件滚动更新(rollover)的Appender。rollover的意思是当满足一定条件(如文件达到了指定的大小,达到了指定的时间)后,就重命名原日志文件进行归档,并生成新的日志文件用于log写入。如果还设置了一定时间内允许归档的日志文件的最大数量,将对过旧的日志文件进行删除操作。RollingFile实现日志文件滚动更新,依赖于TriggeringPolicy和RolloverStrategy。

2024-08-10 08:48:10 857

原创 【笔记】百万并发-RedisTemplate压测

【笔记】百万并发-RedisTemplate压测

2024-08-03 19:14:37 261

原创 【笔记】千万并发-单机41万QPS-Redis-lettuce实践

【笔记】千万并发-单机41万QPS-Redis-lettuce-实践

2024-08-03 18:24:02 333

原创 【笔记】redis启动失败处理过程

【笔记】redis启动失败处理过程

2024-08-03 11:29:26 694

原创 操作系统内核-TCP-调优实战-三次握手-宕机场景模拟演示

本文模拟三种宕机场景,分别演示实际测试效果和TCP调优实践。场景1:进程宕机,场景2:局域网操作系统宕机,场景3:广域网操作系统宕机,场景4:广域网操作系统宕机-调优化。

2024-07-28 17:02:47 292

原创 操作系统内核-TCP-高并发-调优实战-演示-三次握手

操作系统内核-TCP-高并发-调优实战-演示-三次握手

2024-07-27 11:37:26 192

原创 1 企业架构资产的价值

企业架构资产并不是一套静态的固定资产,它是一个企业的“孪生”,它用结构化的方式最大程度还原出一个企业本该有的样子,从规划的秒级反馈,到落地的秒级更新。最大限度让规划、变更和落地变得紧密。秒级的架构资产更新,让这“企业孪生”变为可能。免责声明:本文内容仅表明作者本人观点,并不代表Thoughtworks的立场。

2024-07-23 16:05:21 1162

原创 Netty中ChannelHandler的生命周期

首先我们先分析小网络连接的生命周期,连接建立 ---> 数据交互 ---> 连接断开,在数据交互阶段,包括从连接中读取数据和向连接中写入数据。知道了连接的生命周期,就可以按图索骥的在各个阶段进行想要的操作。而在Netty中,网络连接的不同生命周期都可以通过回调的方式来绑定相应的逻辑,这个回调接口就是。在使用Netty进行网络编程的时候,通常需要在网络连接的不同阶段进行相应的操作,比如在连接建立时,客户端向服务端发起认证,在接收到数据时对数据内容进行解析等等。那么,连接的不同阶段在netty中如何表示呢?

2024-07-21 11:06:11 429

原创 linux修改文件句柄数量

ulimit 命令身是分软限制和硬限制,加-H就是硬限制,加-S就是软限制。硬限制就是实际的限制,而软限制是警告限制,它只会给出警告。假如,我们设置进程打开的文件句柄数是1024 ,但是系统总线制才500,所以所有进程最多能打开文件句柄数量500。文件句柄限制,就是规定的单个进程能够打开的最大文件句柄数量(Socket连接也算在里面,默认大小1024)其实上面的修改都是对一个进程打开的文件句柄数量的限制,我们还需要设置系统的总限制才可以。liunx中文件句柄有两种,一种是用户级的,一种是系统级的。

2024-07-21 09:53:16 530

原创 在 Linux 中,如何确定 optmem_max 的最佳值?

大多数发行版都考虑到了普通用户,而大多数普通用户,即使使用 Linux/Unix 作为服务器,也没有一个服务器群,它们之间有光纤 channel ,或者不需要 GB 的 IPC 传输的服务器进程.我对内核进行了 grep,但我找不到将 optmem_max 的默认值设置为 20480 的痕迹,这是我们系统上的默认值。20KB 的缓冲区对于“大多数”来说已经足够大了,它最大限度地减少了默认情况下所需的内核内存,而且配置起来也很容易,如果需要的话可以这样做。此外,我真的不明白 optmem_max 是什么。

2024-07-21 09:35:50 696

原创 TransitiveThreadLocal线程间可传递的ThreadLocal实现

TransitiveThreadLocal可传递的ThreadLocal实现1. 通过一个全局ThreadLocal视图来缓存jvm所有线程的ThreadLocal2. 通过组合模式复用jdk底层能力,内部成员包含java.lang.InheritableThreadLocal可继承ThreadLocal对象,实现父子线程数据传递

2024-07-20 22:58:03 313

原创 Redisson-百万并发-单机27万QPS-调优实战

Redisson-百万并发-单机23万QPS-调优实战

2024-07-19 17:34:47 1403

原创 Step through the program

【代码】Step through the program。

2024-07-19 09:36:12 853

原创 SLF4J warning or error messages and their meanings

注意,诸如库或框架之类的嵌入式组件不应该声明对任何SLF4J提供程序的依赖,而应该只依赖SLF4J -api。以及slf4j-reload4j、slf4j-jdk14、slf4j-simple 2.0.0或更高版本之一。将slf4j-nop.jar、slf4j-simple.jar、slf4j-reload4j.jar、slf4j-jdk14.jar或logback-classic.jar等许多可用的提供程序中的一个(且只有一个)放在类路径上将解决这个问题。当在类路径上找不到SLF4J提供程序时报告。

2024-07-19 09:15:03 1009

原创 linux内核层丢包排查方法汇总

表示总的收包的错误数量,这包括 too-long-frames 错误,Ring Buffer 溢出错误,crc 校验错误,帧同步错误,fifo overruns 以及 missed pkg 等等。表示数据包已经进入了 Ring Buffer,但是由于内存不够等系统原因,导致在拷贝到内存的过程中被丢弃。

2024-07-18 00:48:04 1014

原创 Linux 性能调优之网络内核参数优化

因此,结果是 1,815,250 字节。硬件层,物理层将数据的01转换为电压和脉冲光传输给物理的传输介质,相互直连的设备通过MAC(Media Access Control,介质访问控制)实现传输。传输层即进行建立连接或者断开连接,在两个主机之间创建逻辑上的通信连接,确保数据是否到达,没到达重发,保证数据的可靠性,涉及到的协议包括 TCP,UDP,DCDC。数据的流向整体是一个出栈入栈的过程,用应用层开始,包装数据,化整为零,分段传输,然后到物理层为信号传输,这是进栈,到达目标IP,在通过。

2024-07-17 23:39:53 552

原创 Linux系统内核参数优化

在工作中,平常我们使用官方镜像安装的Linux系统(非自定制化的)系统内核考虑的是最通用的场景,通常设定都偏向稳定保守,比较典型的代表如红帽系列的RHEL、CentOS等。而在正式的生成环境使用中,服务器的CPU、内存等硬件配置都比较高,而安装系统时默认的系统内核参数设定并不符合用于支持高并发访问的业务服务器,因此我们需要根据实际的业务特性来对系统的默认内核参数设定加以优化,以便能充分发挥服务器的硬件计算处理能力,提高资源利用率的同时也给企业节省IT设备资源成本。

2024-07-17 22:53:57 153

原创 Why would “TCP Full Window” happen?

0我明白,“TCP Full Window”表示发送方发送的数据比多?但为什么会发生这种情况呢?发送方不应该只是能够发送?还是因为wireshark看到更多的数据在发送端排队?但是wireshark是怎么知道的呢?发送缓冲区?

2024-07-17 21:57:02 568

原创 Dubbo3-高并发-性能优化-实践-踩坑-生产环境慎用tri协议

由于本文测的是端到端的全过程响应延时,包含了发送延时、传输延迟、接收延迟、响应延迟等全过程延迟,所以用6502 Kbits 作为缓冲区的默认值配置即可。带宽时延积 = 带宽*时延 = 1.95 Gbits/sec * 3.18ms = 6502 Kbits。如果不进行调优,最大缓冲区只有 87380 字节。整体上限页数计算,按1024个连接计算。tcpdump出现 滑动窗口溢出的提示。客户端、服务端都是同一虚拟机规格。出现大量请求报错,程序卡死。

2024-07-17 19:34:41 662

原创 NETSTAT(8) Linux System Administrator‘s Manual

打印网络连接、路由表、接口统计、伪装连接和多播成员。

2024-07-17 08:30:37 784

原创 Linux带宽测试命令

在Linux系统中,我们经常需要测试网络的带宽,以便确定网络连接的稳定性和传输速度。本文将介绍一些常用的Linux带宽测试命令,包括如何使用这些命令来测试带宽以及解释结果。

2024-07-16 13:10:01 982

原创 高性能网络编程7–tcp连接的内存使用

当服务器的并发TCP连接数以十万计时,我们就会对一个TCP连接在操作系统内核上消耗的内存多少感兴趣。socket编程方法提供了SO_SNDBUF、SO_RCVBUF这样的接口来设置连接的读写缓存,linux上还提供了以下系统级的配置来整体设置服务器上的TCP内存使用,但这些配置看名字却有些互相冲突、概念模糊的感觉,如下(sysctl -a命令可以查看这些配置):代码语言:javascript复制net.ipv4.tcp_rmem = 8192 87380 16777216 net.ipv4

2024-07-15 19:18:00 972

原创 Dubbo 连接数控制

【代码】Dubbo 连接数控制。

2024-07-15 19:15:56 394

原创 tcp(7) — Linux Programmer‘s Manual

linux tcp编程手册

2024-07-15 11:42:54 814

原创 Linux内核 TCP/IP、Socket参数调优

它包含一些TCP/IP堆栈和虚拟内存系统的高级选项,可用来控制Linux网络配置,由于/proc/sys/net目录内容的临时性,建议把TCPIP参数的修改添加到/etc/sysctl.conf文件, 然后保存文件,使用命令“/sbin/sysctl –p”使之立即生效。以上是TCP socket的读写缓冲区的设置,每一项里面都有三个值,第一个值是缓冲区最小值,中间值是缓冲区的默认值,最后一个是缓冲区的最大值,虽然缓冲区的值不受core缓冲区的值的限制,但是缓冲区的最大值仍旧受限于core的最大值。

2024-07-15 10:34:06 928

原创 Java – Set Classpath from Command Line

Java classpath的基本概念和使用方式

2024-07-14 13:50:15 979

原创 ByteBuf.release() was not called before it‘s garbage-collected

本文讨论了什么是引用技术对象,已经在netty中的应用和内存泄漏发生场景、检测、排除修复等技术手段

2024-07-14 12:30:47 652

原创 Dubbo3源码研读-消费者关键执行链路-HTTP/2多路复用-Stream会话-二进制帧分层

Dubbo3源码研读-消费者关键执行链路-HTTP/2多路复用-Stream会话-二进制帧分层

2024-07-13 20:31:08 160

The Reverse C10K Problem for Server-Side Mashups.pdf

The Reverse C10K Problem for Server-Side Mashups.pdf

2024-06-09

附件1:证券公司及基金管理公司子公司资产证券化业务管理规定(修订稿).pdf

附件1:证券公司及基金管理公司子公司资产证券化业务管理规定(修订稿).pdf

2024-05-12

中国银行业协会-关于发布中国银行业普惠金融典型案例(2021)的通报.pdf

中国银行业协会-关于发布中国银行业普惠金融典型案例(2021)的通报.pdf

2024-05-05

中国小微经营者调查2023年一季度报告暨2023年二季度中国小微经营者信心指数报告.pdf

中国小微经营者调查2023年一季度报告暨2023年二季度中国小微经营者信心指数报告.pdf

2024-05-05

中国金融科技与数字金融发展报告(2024).pdf

中国金融科技与数字金融发展报告(2024).pdf

2024-05-05

中国金融科技和数字普惠金融发展报告(2022年).pdf

中国金融科技和数字普惠金融发展报告(2022年).pdf

2024-05-05

兴业银行绿色金融创新发展及其战疫实践.pdf

兴业银行绿色金融创新发展及其战疫实践.pdf

2024-05-05

金融业数字化转型发展报告(白皮书)2020-2021.pdf

金融业数字化转型发展报告(白皮书)2020-2021.pdf

2024-05-05

金融行业数据库技术发展路径探索与实践.pdf

金融行业数据库技术发展路径探索与实践.pdf

2024-05-05

金融行业人工智能产品目录(2021年).pdf

金融行业人工智能产品目录(2021年).pdf

2024-05-05

基于联邦建模的全域小微、科创企业智能授信研究与应用word.pdf

基于联邦建模的全域小微、科创企业智能授信研究与应用word.pdf

2024-05-05

基于联邦建模的全域小微、科创企业智能授信研究与应用ppt.pdf

基于联邦建模的全域小微、科创企业智能授信研究与应用ppt.pdf

2024-05-05

国信证券-银行业专题:泰隆银行何以成长为小微金融标杆-20230729.pdf

国信证券-银行业专题:泰隆银行何以成长为小微金融标杆-20230729.pdf

2024-05-05

发改委-数字普惠金融助力乡村振兴.pdf

发改委-数字普惠金融助力乡村振兴.pdf

2024-05-05

大模型在金融领域的应用技术与安全白皮书.pdf

大模型在金融领域的应用技术与安全白皮书.pdf

2024-05-05

北京金融科技产业联盟-金融云原生2.0发展应用白皮书.pdf

北京金融科技产业联盟-金融云原生2.0发展应用白皮书.pdf

2024-05-05

北京金融科技产业联盟-金融数据中心网络数字化能力建设研究报告.pdf

北京金融科技产业联盟-金融数据中心网络数字化能力建设研究报告.pdf

2024-05-05

2023中国金融科技企业首席洞察报告.pdf

2023中国金融科技企业首席洞察报告.pdf

2024-05-05

2022消费金融数字化转型主题调研报告.pdf

2022消费金融数字化转型主题调研报告.pdf

2024-05-05

2022年中国人工智能在金融行业的应用洞察-智能风控.pdf

2022年中国人工智能在金融行业的应用洞察-智能风控.pdf

2024-05-05

50-Most-Used-Linux-Commands-pdf.pdf

50-Most-Used-Linux-Commands-pdf.pdf

2024-01-07

60-Linux-Bash-Terminal-Keyboard-Shortcuts-1.pdf

60-Linux-Bash-Terminal-Keyboard-Shortcuts-1.pdf

2024-01-07

Bash-Terminal-Keyboard-Shortcuts-for-Navigation.pdf

Bash-Terminal-Keyboard-Shortcuts-for-Navigation.pdf

2024-01-07

Bash-Terminal-Keyboard-Shortcuts-for-Control-Process.pdf

Bash-Terminal-Keyboard-Shortcuts-for-Control-Process.pdf

2024-01-07

Bash-Terminal-Keyboard-Shortcuts-for-History.pdf

Bash-Terminal-Keyboard-Shortcuts-for-History.pdf

2024-01-07

Bash-Terminal-Keyboard-Shortcuts-for-Editing.pdf

Bash-Terminal-Keyboard-Shortcuts-for-Editing.pdf

2024-01-07

Bash-Terminal-Keyboard-Shortcuts-for-Information.pdf

Bash-Terminal-Keyboard-Shortcuts-for-Information.pdf

2024-01-07

微服务架构下的分布式事务处理.pdf

微服务架构下的分布式事务处理.pdf

2023-12-30

7种JVM垃圾收集器特点-优劣势-及使用场景.pdf

7种JVM垃圾收集器特点-优劣势-及使用场景.pdf

2023-12-30

深入详解JVM内存模型与JVM参数详细配置.pdf

深入详解JVM内存模型与JVM参数详细配置.pdf

2023-12-30

Java-concurrent-collections-concurrenthashmap-blockingqueue.pdf

Java-concurrent-collections-concurrenthashmap-blockingqueue.pdf

2023-12-30

Java 面向对象编程机制

Java 面向对象编程机制

2023-12-30

并发编程Concurrent-Programming.pdf

并发编程Concurrent-Programming.pdf

2023-12-30

多线程并发编程-同步与互斥-原⼦变量-并发和⽆锁 数据结构

多线程并发编程-同步与互斥-原⼦变量-并发和⽆锁 数据结构

2023-12-30

如何处理常见的并发缺陷

如何处理常见的并发缺陷

2023-12-30

ChatGPT技术解析及通用人工智能发展展望

ChatGPT技术解析及通用人工智能发展展望

2023-12-30

ChatGPT及生成式人工智能现状及未来发展方向

ChatGPT及生成式人工智能现状及未来发展方向

2023-12-30

商业银行数据中心监管指引.pdf

商业银行数据中心监管指引.pdf

2023-12-30

ns3快速入门

网络仿真软件ns3的快速入门,对于初学者了解ns3的整体架构设计和基础知识非常有帮助,如果你是高手就不要下载了。

2014-12-04

TCP-IP详解卷1协议.pdf

很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但T C P / I P协议 族允许它们互相进行通信。这一点很让人感到吃惊,因为它的作用已远远超出了起初的设想。 T C P / I P起源于6 0年代末美国政府资助的一个分组交换网络研究项目,到9 0年代已发展成为计 算机之间最常应用的组网形式。它是一个真正的开放系统,因为协议族的定义及其多种实现 可以不用花钱或花很少的钱就可以公开地得到。它成为被称作“全球互联网”或“因特网 ( I n t e r n e t )”的基础,该广域网(WA N)已包含超过1 0 0万台遍布世界各地的计算机。

2013-11-28

空空如也

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

TA关注的人

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