自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

为无为,事无事,味无味。

大小,多少,抱怨,以德。图难乎,其易也;为大乎,其细也;天下之难,作于易;天下之大,作于细。是以圣人终不为大,故能成其大。夫轻诺,必寡信;多易必多难。是以圣人犹难之,故终无难矣。

  • 博客(1457)
  • 资源 (6)
  • 收藏
  • 关注

原创 合格程序员每天每周每月每年应该做的事

程序员每天该做的事 1、总结自己一天任务的完成情况 最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻看好处多多 2、考虑自己明天应该做的主要工作 把明天要做的事情列出来,并按照优先级排列,第二天应该把自己效率最高的时间分配给最重要的工作 3、考虑自己一天工作中失误的地方,并想出避免下一次再犯的方法 出错不要紧,最重要的是不要重复犯相同的错误,那是愚蠢 4、考虑自

2009-11-18 12:45:00 2176 7

原创 科普文:软件架构之Linux服务器性能【连接数:单台服务器支持多少TCP连接?6.4万?】

单台服务器支持的TCP连接数受多重因素影响,并非固定值(如6.4万)。关键限制包括:操作系统参数(Linux默认约6.4万)、内存(每连接约3-10KB)、文件描述符数量、网络带宽及CPU处理能力。理论最大连接数可达百万级(需内核调优),但实际生产环境建议控制在理论值的30-50%。优化方案包括:调整内核参数(如端口范围、TCP内存池)、使用连接池/长连接、负载均衡及硬件加速(如DPDK)。典型场景中,16核64G服务器实际支持5-20万连接,需结合监控动态调整。

2025-07-15 12:22:51 542

原创 科普文:【支持信创、宣传国产】软件架构Linux系列【国产企业级固态盘SSD梳理】

​国产企业级SSD是针对企业级应用场景设计的高性能、高可靠性的固态硬盘。近年来,随着国内存储技术的快速发展,国产企业级SSD在性能、可靠性、耐用性等方面取得了显著进步,并逐渐在市场上占据一席之地。国产企业级SSD正在快速发展,长江存储、长鑫存储提供核心存储芯片,忆联、华澜微、国科微等厂商推出高可靠性、高性能的SSD产品,逐步满足数据中心、金融、政府等领域的需求。未来,随着技术进步和生态完善,国产SSD有望在全球市场占据更重要的地位。​

2025-07-14 16:41:18 611

原创 科普文:【支持信创、宣传国产】软件架构Linux系列【企业级固态盘SSD梳理】

本文系统梳理了企业级SSD的核心技术特性与应用选型要点。从硬件角度解析了SSD的三大核心组件(NAND闪存、主控芯片、DRAM缓存)和接口类型(SATA/SAS/NVMe),重点对比了企业级与消费级SSD在性能(IOPS达500K)、耐久性(DWPD≥1)、可靠性(MTBF百万小时级)等方面的显著差异。文章详细介绍了企业级SSD在数据中心、云计算等场景的应用方案,并从性能、耐用性等维度给出选型建议,最后列举Intel、三星等主流厂商产品线及典型故障案例。全文为企业用户选择和维护SSD提供了全面的技术参考。

2025-07-14 16:25:34 329

原创 科普文:【支持信创、宣传国产】国密SM之非对称加密SM9详解

SM9是中国国家密码管理局发布的标识密码算法(IBC),无需证书即可实现身份认证与密钥交换。支持数字签名、密钥交换、加密三大功能,密钥长度128位(实际安全强度约128位)。性质:中国国家密码管理局发布的标识密码算法(IBE,Identity-Based Encryption),基于双线性对(Bilinear Pairing),属于非对称加密体系。核心标准:GB/T 38635-2020核心功能:数字签名密钥交换数据加密关键参数:椭圆曲线:sm9p256v1主密钥:系统级秘密参数(由KG

2025-07-14 14:22:50 725

原创 科普文:【支持信创、宣传国产】国密SM之对称加密算法ZUC祖冲之算法详解

ZUC(祖冲之算法)是中国国家密码管理局发布的流密码算法,2011年被3GPP采纳为4G LTE国际标准(命名为SNOW 3G的替代方案)。性质:中国自主设计的流密码算法,用于4G/5G移动通信(LTE国际标准)和物联网加密,包含:ZUC-128:密钥长度128位,初始向量(IV)128位ZUC-256:增强版(密钥/IV长度256位,GB/T 33133-2016)核心特点:基于非线性反馈移位寄存器(LFSR) + 比特重组(BR) + 非线性函数(F)每时钟周期生成32位密钥流硬件效率极

2025-07-14 14:01:53 404

原创 科普文:【支持信创、宣传国产】国密SM之对称加密算法SM7详解

性质:SM7是中国国家密码管理局批准的对称加密算法,主要用于非接触式IC卡(如交通卡、门禁卡)和低功耗设备的加密通信。核心参数:分组长度:128位(16字节)密钥长度:128位(16字节)轮数:32轮(与SM4类似)特点:设计针对RFID等资源受限设备算法细节未公开(需通过国密认证的硬件模块调用)

2025-07-14 13:33:24 500

原创 科普文:【支持信创、宣传国产】国密SM之对称加密算法SM4详解

SM4是中国国家密码管理局发布的分组对称加密算法,用于替代DES/AES等国际算法。分组长度128位,密钥长度128位,属于Feistel结构变种。性质:中国国家密码管理局发布的对称加密算法(GB/T 32907-2016),原名SMS4,用于替代DES/3DES/AES。核心参数:分组长度:128位(16字节)密钥长度:128位(16字节)轮数:32轮非线性迭代工作模式:支持ECB/CBC/CTR/GCM等(需填充方案如PKCS5Padding)

2025-07-14 12:42:00 453

原创 科普文:【支持信创、宣传国产】国密SM之签名算法SM3详解

SM3算法是一种密码散列函数,由中国国家密码管理局发布,具有256位的输出摘要长度。它采用Merkle-Damgård结构,通过复杂的迭代过程和变换,确保了其抗碰撞性和抗预像性。性质:SM3是中国国家密码管理局发布的密码哈希算法,属于单向散列函数,输出长度为256位(32字节),安全性对标SHA-256。核心用途:数据完整性校验数字签名中的消息摘要密码衍生(KDF)标准依据:GB/T 32905-2016

2025-07-14 11:19:06 582

原创 科普文:【支持信创、宣传国产】国密SM之非对称加密SM2详解

SM2算法全称为椭圆曲线算法,是一种非对称密钥算法,其加密强度为256位,其安全性与目前使用的RSA1024相比具有明显的优势。性质:SM2是中国国家密码管理局发布的非对称加密算法,基于椭圆曲线密码学(ECC),属于国密标准(GB/T 32918-2016)。核心功能:数字签名密钥交换公钥加密参数标准:推荐椭圆曲线:sm2p256v1(256位素数域)私钥长度:32字节(256位)公钥长度:64字节(未压缩格式)

2025-07-14 10:15:07 551

原创 科普文:【支持信创、宣传国产】国密SM之对称加密SM1详解

性质:SM1是中国国家密码管理局发布的对称加密算法,属于分组密码,密钥长度固定为128位,分组长度128位。特点:安全性等同于国际AES-128,但算法细节未公开(仅通过硬件加密卡或专用芯片实现)。需通过国家密码管理局认证的硬件设备调用,无公开软件实现(因此Java需依赖厂商提供的库)。基本特性分组长度:128位密钥长度:128位轮数:32轮(Feistel结构)核心操作:非线性变换S盒、线性变换L盒、密钥扩展

2025-07-14 07:45:54 699

原创 科普文:《盐铁论》和《国富论》

《盐铁论》与《国富论》是两部分别代表中国古代与西方近代经济思想的经典著作,尽管时代背景和理论框架迥异,但都对经济政策与国家治理产生了深远影响。两部著作分别代表了东西方经济思想的早期高峰:《盐铁论》反映了古代中国“国家主导型经济”的逻辑,而《国富论》则开启了西方自由经济理论的大门。它们的差异根植于不同的政治文化传统,但共同构成了人类经济思想史的宝贵遗产。

2025-07-14 06:13:52 491

原创 科普文:《盐铁论》概览

《盐铁论》全书结构‌‌第一卷‌:辩论总纲(《本议》《力耕》《通有》等);主题:国家财政政策是否必要,盐铁专营是否合理。‌第二卷‌:盐铁专营争议(《禁耕》《复古》《错币》等);贤良文学主张废除垄断,桑弘羊强调国家控制关键产业。‌第三卷‌:经济政策辩论(《本议》《轻重》《非鞅》等);讨论均输平准、货币改革等政策利弊。‌第四卷‌:社会与伦理争议(《忧边》《国疾》《论儒》等);延伸至战争、儒家治国等议题。

2025-07-14 06:01:38 460

原创 科普文:【支持信创、宣传国产】软件架构Linux系列之【读写速度200MB每秒的机械盘做RAID支持10GB每秒的业务场景:raid0,raid5,raid6,raid10,raid50,raid6】

【摘要】本文系统分析了如何利用200MB/s读写速度的机械硬盘构建10GB/s业务场景的存储方案,详细对比了RAID0、5、6、10、50、60六种方案。RAID0性能最优但无冗余,RAID10提供最佳写性能与高容错,RAID50平衡性能与容量,RAID60具备最高容错能力。关键指标对比显示:性能排序为RAID0>10>50>60>5>6;冗余能力RA60最强;成本随冗余级别递增。建议根据业务需求选择:极高性能选RAID0,性能冗余平衡选RAID5/10,大规模存储选RAID5

2025-07-13 17:59:14 723

原创 科普文:【支持信创、宣传国产】软件架构Linux系列之【读写速度200MB每秒的机械盘如何支持10GB每秒的业务场景?】

摘要:机械硬盘(HDD)单盘读写速度仅200MB/s,无法满足10GB/s的高性能业务需求。解决方案主要采用多盘并行(如RAID0/10)、缓存加速(SSD/NVMe)和分层存储技术。RAID0通过50块HDD并行可实现10GB/s吞吐,适用于大文件顺序读写;SSD缓存可优化随机访问性能;分布式存储(如Ceph)适合海量数据场景。典型应用包括视频流媒体(HDD阵列+NVMe缓存)和数据库(RAID10+SSD日志)。成本约需数十块硬盘和SSD,需权衡性能、可靠性和运维复杂度。

2025-07-13 16:10:58 620

原创 科普文:【支持信创、宣传国产】软件架构Linux系列之【国产企业级机械盘HDD梳理】

目前国内企业级机械硬盘(HDD)市场主要由 ‌国际品牌(希捷、西部数据、东芝)‌ 主导,但国产厂商也在逐步进入该领域,主要面向 ‌自主可控‌ 和 ‌信创‌ 需求。‌联想(Lenovo)‌:虽然联想以PC和服务器业务著称,但也涉足存储领域,提供企业级解决方案。‌华为(Huawei)‌:华为在数据中心和云计算领域有深厚积累,也提供企业级存储产品,包括HDD。‌浪潮(Inspur)‌:浪潮是中国领先的数据中心解决方案提供商,提供包括企业级HDD在内的多种存储产品。‌紫光华山(H3C)‌:紫光华

2025-07-13 15:42:16 685

原创 科普文:软件架构Linux系列之【如何选择适合的企业级HDD?】

企业级机械硬盘(HDD)选择指南:首先要明确应用场景需求,数据库等高IOPS场景选择10K/15KRPM SAS接口硬盘,冷存储则优先考虑7200RPM大容量SATA硬盘。关键指标包括容量(4TB-20TB)、转速(7200/10K/15KRPM)、接口(SAS/SATA)、缓存(128MB-256MB)和可靠性(MTBF≥150万小时)。主流厂商如希捷、西数、东芝提供不同特性的企业级产品,选购时需考虑RAID支持、振动补偿等企业级特性,并计算TCO成本。最后建议通过厂商工具验证兼容性,预留10%性能冗余。

2025-07-13 15:32:06 447

原创 科普文:软件架构Linux系列之【企业级机械盘HDD梳理】

本文介绍了企业级机械硬盘(HDD)的性能特征和选型要点。主要参数包括:3.5/2.5英寸盘径,SATA/SAS/FC接口,7200-15000RPM转速,4-20TB容量范围,64-512MB缓存。性能指标重点关注IOPS(150-400)、吞吐量(160-280MB/s)和延迟,转速越高性能越好。主流厂商有希捷(Exos系列)、西部数据(WD Gold)和东芝(MG系列),建议根据场景选择:大容量存储选氦气盘(16-18TB),高性能计算选10000/15000RPM型号。企业级HDD具有高可靠性(MTB

2025-07-13 15:16:49 570

原创 科普文:软件架构Linux系列之【机械盘HDD的性能特征:IOPS、吞吐量、延迟】

本文主要探讨了应用程序性能与磁盘I/O的关系,详细介绍了衡量磁盘性能的三个关键指标:IOPS(每秒输入/输出操作数)、吞吐量和延迟。文章分析了Azure中超级磁盘和高级SSDv2的性能特点,包括IOPS与吞吐量的计算公式和配置建议。同时指出需要注意虚拟机I/O上限和磁盘I/O上限导致的性能瓶颈问题,并提供了相应的诊断指标。最后阐述了磁盘缓存(读取缓存和写入缓存)对性能的影响,以及如何通过合理配置主机缓存来优化VM性能,避免成为系统瓶颈。

2025-07-13 14:46:43 543

原创 科普文:【支持信创、宣传国产】国内中小企业使用JDK17开发商业软件的风险

【摘要】2024年9月30日后,Oracle将终止JDK17免费商用授权,中小企业面临严峻合规风险。技术层面存在OpenJDK兼容性差、安全更新滞后等问题;法律层面可能面临追溯性审计及高额赔偿(典型案例200万元)。建议:1)生产环境迁移至开源发行版(如Corretto、Dragonwell);2)建立版本管控机制;3)评估订阅成本(约15万元/50核/年)。信创项目需特别注意国产系统适配,警惕Oracle通过云平台日志追溯侵权的风险。中小企业应尽早制定JDK合规策略,平衡技术需求与法律风险。(149字)

2025-07-13 13:58:24 1152

原创 科普文:【支持信创、宣传国产】从2019年到2025年Oracle针对JDK而发起的审计国内企业案例

根据公开报道及行业记录,2019年至2025年期间Oracle针对国内企业JDK违规使用发起的审计案例已形成明确模式,以下为典型事件汇总及关键特征分析:‌2019年某电商公司案:使用Oracle JDK 8开发后台系统,未删除版权文件,被审计后支付12万元和解费。‌2021年金融科技公司案:自研支付平台使用JDK 11,云服务商日志触发Oracle审计,赔偿25万元并迁移至OpenJDK。‌2023年游戏开发团队案:手游服务器使用JDK 17(Oracle No-Fee Terms过期后),遭索

2025-07-13 12:07:59 1009

原创 科普文:【支持信创、宣传国产】2022年Oracle将Java纳入许可证审计

2019年4月,Oracle宣布对商用JavaSE收取订阅费用,从JDK8u211及后续版本开始商用需付费。此举引发企业合规风险,包括授权混淆(如电商案例)和审计缺失(70%企业未启用细粒度审计)。2022年Oracle将Java纳入许可证审计,企业需注意:1)旧版本使用补丁仍需授权;2)虚拟化环境需全CPU许可。第三方工具如Flexera/Lime虽被Oracle验证,但仅提供数据参考,无法保证合规。许多企业转向OpenJDK等替代方案。专家建议评估迁移至Java17或第三方方案,并完善审计流程。

2025-07-13 11:13:41 667

原创 科普文:【支持信创、宣传国产】中国中小企业使用JDK8、11、17、21等LTS版本开发商业软件的风险分析

【JDK版本选择与风险分析】国内商业软件开发中Java占据主导地位,尤其在金融、IT服务和互联网领域。针对JDK版本选择,中小企业需注意:OracleJDK8/11/17存在高法律风险(需商业订阅),而OpenJDK版本(如17/21)免费且无风险。技术层面,JDK8已老旧且不安全,建议新项目使用OpenJDK21(支持至2031年),旧系统可过渡到OpenJDK17。典型案例显示,未授权使用OracleJDK可能面临高额追责。推荐采用Amazon Corretto、阿里Dragonwell等OpenJDK

2025-07-13 03:42:10 870

原创 科普文:【支持信创、宣传国产】国产处理器/CPU梳理

‌x86‌:海光下一代7nm产品(如8380)性能对标AMD EPYC,但需突破EUV光刻机限制。‌ARM‌:鲲鹏+昇腾+鸿蒙构建全栈生态,但先进制程(5nm/3nm)依赖国产替代。‌RISC-V‌:阿里平头哥主导,2025年或成AIoT主流架构。‌LoongArch‌:龙芯3C6000(16核)目标性能接近Intel 10代酷睿,生态依赖二进制翻译。

2025-07-12 14:09:11 1189

原创 科普文:【支持信创、宣传国产】X86 、 ARM 、 RISC-V 、 MIPS 和 LoongArch 等CPU架构梳理

CPU架构发展现状与趋势 当前主流CPU架构可分为CISC(x86)和RISC(ARM/RISC-V/龙芯)两大阵营。x86凭借高性能优势主导PC/服务器市场,但存在功耗高、授权封闭等问题。ARM在移动端占据95%份额,但面临授权费用昂贵、高阶架构受限等挑战。新兴的RISC-V凭借开源特性在物联网领域快速发展,但生态仍不成熟。龙芯LoongArch作为国产自主指令集,通过二进制翻译兼容主流生态,性能已接近13代酷睿,但生态建设仍需时间。现代CPU架构呈现融合趋势:x86内部采用RISC微操作,ARM/RIS

2025-07-12 13:20:13 978

原创 科普文:软件架构数据库系列之【MySQL 主从复制集群架构RC隔离级别下的“脏读”问题】

本文探讨了MySQL主从复制环境下的"脏读"问题本质。在RC隔离级别下,真正的脏读(读取未提交数据)不会发生,但主从异步复制延迟会导致从库读取到旧数据,这种现象被部分人错误地称为"脏读"。文章详细分析了MySQL 5.6至9.0各版本中该问题的表现差异及解决方案:包括半同步复制、并行复制、组复制等技术优化,最终建议关键业务查询走主库、使用MySQL 8.0+版本并配合监控机制。核心结论指出:主从环境下的"脏读"实际上是复制延迟导致的数据不一致问题,

2025-07-11 12:52:20 686

原创 科普文:【民法典】借钱容易还钱难

“借钱是情分,不借是本分”:出借人:坚守“救急抵押+书面协议”铁律,摒弃人情包袱。借款人:珍视信用资产,避免透支人际资本。社会:亟需构建“失信=寸步难行”的惩戒闭环,让老赖无处遁形。

2025-07-11 10:01:21 1182

原创 科普文:【民法典】关于借钱不还的条款

1. 借款合同的成立与生效第六百六十七条:借款合同是借款人向贷款人借款,到期返还借款并支付利息的合同。第六百七十九条:自然人之间的借款合同,自贷款人提供借款时成立。这意味着当贷款人把钱交给借款人时,借款合同才正式生效,双方的权利义务关系开始产生。2. 借款利息第六百八十条:禁止高利放贷,借款的利率不得违反国家有关规定。借款合同对支付利息没有约定的,视为没有利息。借款合同对支付利息约定不明确,当事人不能达成补充协议的,按照当地或者当事人的交易方式、交易习惯、市场利率等因素确定利息;自然人之间借款的

2025-07-11 09:47:43 1878

原创 科普文:软件架构系列之【不用花钱的OSS解决微服务下文件上传在多节点间共享的问题:NFS共享目录】

在微服务架构中,文件上传下载的节点间共享是典型挑战,需结合技术特性、性能需求及运维成本综合选型。轻量级首选:MinIO(自建S3兼容)或FastDFS(纯小文件场景)。云原生推荐:OSS(公有云)或MinIO(私有云),结合分片上传和CDN加速。传统架构过渡:NFS适合已有Linux集群的简单共享,但需规避单点风险。实践案例参考:电商平台:用户上传图片 → MinIO集群 → CDN分发 → 微服务通过预签名URL下载。企业内部网盘:NFS共享目录 + 权限控制(all_squash) + 定

2025-07-06 17:31:17 752

原创 科普文:软件架构系列之【万字详解文件存储MinIO】

MinIO是一款高性能、开源的对象存储系统,专为云原生和大数据场景设计。它完全兼容Amazon S3 API,支持分布式部署,采用纠删码技术确保数据可靠性。MinIO具有轻量易部署、高扩展性等特点,支持Docker/Kubernetes快速部署,提供多语言SDK便于开发集成。其典型应用场景包括数据备份、AI基础设施、静态资源托管等。与HDFS相比,MinIO更适合处理海量小文件和高并发访问,但在与Hadoop生态集成方面存在局限。使用MinIO时需注意安全性配置、小文件性能优化和版本兼容性等问题。

2025-07-06 15:08:14 831

原创 科普文:软件架构Spring系列之【万字详解Spring shell】

本文介绍了SpringShell框架及其在构建交互式命令行应用中的应用。SpringShell是Spring生态中的命令行开发工具,支持注解驱动开发、Tab补全、依赖注入等功能,适用于运维工具、开发工具等场景。文章对比了SpringShell与其他命令行框架的特点,详细说明了其核心类、注解及执行流程,并提供了JDK版本适配建议。此外,还展示了如何通过SpringShell实现服务器资源监控功能,包括JVM、CPU、内存、磁盘I/O和网络I/O的监控命令示例。最后给出了SpringShell的配置方法和界面自

2025-07-03 17:09:49 1100

原创 科普文:软件架构系列之设计模式【策略模式、状态模式、适配器模式、观察者模式】

设计模式是解决软件设计问题的通用方案。本文对比分析了四种常见模式:策略模式用于算法替换(如支付方式),状态模式管理对象行为随状态的变化(如订单流程),适配器模式解决接口不兼容问题(如系统集成),观察者模式实现一对多通知机制(如消息订阅)。这些模式各具特点:策略和状态模式属于行为型,分别强调算法独立性和状态转换;适配器是结构型模式,重在接口转换;观察者实现松耦合的消息通知。合理运用设计模式能提高代码复用性、扩展性和可维护性,如Spring框架就巧妙结合了观察者与策略模式。开发者应根据具体场景选择合适模式,注意

2025-06-30 23:19:30 678

原创 科普文:软件架构Spring系列之【Spring事件机制:Spring事件监听器能处理跨服务的事件吗?】

【摘要】Spring事件监听机制通过发布-订阅模式实现模块解耦,支持异步处理和自定义事件类型,但原生仅适用于单服务场景。跨服务事件需借助消息中间件(如Kafka)或Spring Cloud组件实现,需权衡一致性、性能等需求。典型方案包括:MQ异步解耦(最终一致性)、Spring Cloud Stream集成发布、分布式事务框架(强一致性)。实际应用中需注意消息幂等、事务协调及服务熔断等问题,建议根据业务场景选择合适方案,如高并发优先异步MQ,强事务采用Seata等框架。

2025-06-30 22:50:54 948

原创 科普文:软件架构Spring系列之【Spring事件机制ApplicationEventMulticaster调用所有监听器的处理方法】

Spring事件机制是基于观察者模式的轻量级消息通信方案,通过ApplicationEvent和ApplicationListener实现模块间解耦。事件发布者与监听者无需直接依赖,只需注册到Spring容器即可跨模块通信。文章详细介绍了事件定义、发布和监听流程,并重点讲解如何为异步事件监听器配置专属线程池:1)通过@Bean创建ThreadPoolTaskExecutor;2)使用@Async指定线程池;3)提供订单事件处理的完整示例。该机制适用订单状态变更等场景,关键要注意线程池隔离、拒绝策略和事务协调

2025-06-30 19:51:05 1099

原创 科普文:软件架构Spring系列之【Spring事件机制ApplicationEvent】

Spring框架提供了状态机和事件两种机制来处理业务逻辑。状态机(Spring StateMachine)专注于管理对象生命周期中的状态转换,适用于订单处理等工作流场景;而事件机制基于观察者模式,通过发布-订阅模型实现组件解耦,支持同步/异步处理。事件可通过@Async实现异步监听,并通过@TransactionalEventListener与事务生命周期绑定。两种机制各具特点:状态机适合复杂状态管理,事件机制更适用于轻量级解耦通信。开发者可根据业务需求选择合适方案,或组合使用以实现更灵活的系统架构。

2025-06-30 18:27:23 941

原创 科普文:软件架构Spring系列之【Spring状态机的设计模式:状态模式(State Pattern)】

摘要:本文深入解析Spring Statemachine状态机中运用的设计模式,重点阐述状态模式(State Pattern)的实现原理。通过对比传统分支逻辑方案,说明状态模式在管理复杂状态流转时的优势:代码更清晰、维护性更高。文章详细介绍了Spring Statemachine中状态模式的三个核心角色(Context、State、ConcreteState)及其协作方式,并以红绿灯状态变更案例进行演示。同时指出状态模式与策略模式的区别在于前者关注状态流转,后者关注策略选择。此外,还提及了观察者、策略、模板

2025-06-30 16:39:28 1224

原创 科普文:软件架构Spring系列之【Spring Statemachine状态机示例】

Spring StateMachine是Spring框架提供的状态机模块,采用状态模式实现对象状态管理。它通过定义状态(State)、事件(Event)和转换(Transition)来管理状态变化,核心类包括StateMachine、StateMachineFactory等。主要适用于订单处理、工作流等场景,具有状态管理清晰、可维护性强等优点,但也存在学习曲线陡峭、配置复杂等缺点。在分布式环境下,可通过分布式锁、状态持久化等方式保证状态一致性。文章通过订单处理流程示例,详细展示了状态机的配置和使用方法,并对

2025-06-30 16:22:10 1000

原创 科普文:软件架构Spring系列之【状态机:Spring Statemachine】

Spring State Machine是Spring框架中用于简化有限状态机开发的模块,它通过状态(State)、事件(Event)、转换(Transition)和动作(Action)等核心概念,帮助开发者管理复杂的状态流转逻辑。该框架采用Mealy型状态机模型,支持事件驱动、分层状态和状态持久化等特性,适用于订单处理、工作流引擎等场景。相比传统if-else实现,它提供了更清晰的状态管理方式,但存在学习曲线陡峭和性能开销等缺点。实际应用中需注意线程安全、状态持久化和错误处理等问题。

2025-06-30 13:55:47 1078

原创 实战:JUC系列之基础类Unsafe应用场景【阻塞队列 Unsafe.park/Unsafe.unpark替代方案java.util.concurrent.locks.LockSupport】

本文介绍了Java并发编程中的LockSupport工具类,它是基于Unsafe类实现的底层线程控制原语。LockSupport提供park/unpark方法实现线程精准阻塞与唤醒,相比Object的wait/notify具有免锁依赖、支持中断检查等优势,是构建AQS、Disruptor等并发框架的基础。文章通过一个超时阻塞队列的代码示例,展示了如何使用LockSupport实现生产-消费模型,包含put和take方法的超时控制逻辑。该队列利用LockSupport.parkNanos进行定时阻塞,并通过u

2025-06-29 23:22:53 868

原创 实战:JUC系列之基础类Unsafe应用场景【阻塞队列 Unsafe.park/Unsafe.unpark】

《JUC系列之Unsafe类详解》介绍了Java底层类sun.misc.Unsafe的功能与实现原理。文章通过一个支持超时的阻塞队列案例,展示了Unsafe在并发编程中的典型应用:1)使用CAS原子操作(compareAndSwapInt)实现线程安全;2)通过park/unpark方法控制线程阻塞与唤醒。特别强调Unsafe作为内部API存在风险,建议优先使用java.util.concurrent包的标准工具。该技术博客深入解析了Unsafe的内存操作、线程控制等底层机制,为理解Java并发原理提供了重

2025-06-29 21:52:21 732

Modultils 工具源码分析之 insmod 篇

Modultils 工具源码分析之 insmod 篇

2024-11-22

El caso de las hojas de ruta seguras para la memoria

El caso de las hojas de ruta seguras para la memoria Por qué tanto los ejecutivos de alto nivel como los expertos técnicos deben tomarse en serio la codificación segura para la memoria

2024-11-03

The Case for Memory Safe Roadmaps 内存安全案例路线图

The Case for Memory Safe Roadmaps 内存安全案例路线图

2024-11-03

java开发手册最新版黄山版

java开发手册最新版--黄山版

2024-07-19

mysql-connector-net-5.2.5-src.zip

mysql connector net 5.2.5 装上就可用...

2009-10-29

Devexpress自学案例

Devexpress自学案例 请大家 多多指教

2009-07-28

Sybase语法大全.pdf

Adaptive Server Enterprise参考手册

2012-03-08

2009届应届生求职指南

涵盖2009年各行业,各职业介绍,以及求职准备,求职注意事项,简历制作,面试技巧等等各方面的信息。

2008-12-19

jsp+servlet+javabean.ppt

9.1 Servlet概述 9.2 Servlet的基本结构与成员方法 9.3 调用Servlet的多种方法 9.4 两种模式的JSP技术 9.5 Servlet模式的留言板案例 9.6 Servlet的会话跟踪 习题9

2010-04-02

Devexpress学习篇(请大家多多指教)

Devexpress学习篇(请大家多多指教)博客文章 因为大家看不到图片,所以我将博客文章保存在word里面 请大家 下载一下啊 帮帮忙看看 多谢指教

2009-07-28

空空如也

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

TA关注的人

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