自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

秋夫人

如果说努力和拼尽全力之间有什么区别,那就是,当你努力的时候,你会觉得自己已经拼尽全力了。当你拼尽全力的时候,你会觉得自己还不够努力。

  • 博客(360)
  • 收藏
  • 关注

原创 安全哈希算法:SHA系列

SHA系列提供了一系列加密哈希函数,用于确保数据的安全性和完整性。随着时间的推移,SHA系列经历了多次迭代和改进,以应对不断发展的安全威胁。在选择具体的SHA算法时,应考虑当前的安全建议和应用场景的特定需求。对于新的应用和系统,推荐使用SHA-2或SHA-3,因为它们提供了更高的安全性。

2024-08-31 09:16:54 565

原创 加密哈希函数:MD5

MD5曾经是一种广泛使用的加密哈希函数,但由于存在安全漏洞,它不再适用于安全敏感的应用。尽管如此,MD5仍然在一些特定的、对安全要求不高的场景中有其应用价值。对于需要高度安全性的场景,应选择使用更加安全的哈希算法。

2024-08-31 09:10:41 503

原创 加密哈希函数:Blake2,Blake3

BLAKE2 和 BLAKE3 都是高性能的加密哈希函数,提供了强大的安全性和多种功能。BLAKE2 适用于需要高速哈希处理的场景,特别是在资源受限的环境中。BLAKE3 则进一步提升了性能,特别是在多核心处理器上,并通过其并行计算能力,成为一个多用途的哈希解决方案,适用于更广泛的应用场景。选择哪一个取决于特定的应用需求、平台特性和性能要求。

2024-08-31 09:08:37 461

原创 高性能哈希函数:CityHash、FarmHash

CityHash 和 FarmHash 都是由 Google 开发的高性能哈希函数库,主要用于处理非加密哈希场景,如哈希表、数据分布、快速数据比较等。它们都是设计用来在64位系统上高效运行,提供了对不同长度输入数据的良好支持,并能产生高质量的哈希值。

2024-08-31 09:04:40 755

原创 常用基本算法思想

这些基本算法思想为解决各种复杂问题提供了框架和方法。在实际应用中,往往需要根据具体问题选择合适的算法思想,或者结合多种思想来设计最优解决方案。深入理解这些基本思想对于提高问题解决能力和算法设计能力至关重要。分治法(Divide and Conquer)深度优先搜索(DFS)和广度优先搜索(BFS)分支限界法(Branch and Bound)贪心算法(Greedy Algorithm)回溯法(Backtracking)枚举法(Enumeration)迭代法(Iteration)哈希(Hashing)

2024-08-31 08:52:08 442

原创 红黑树概念及其性质

红黑树相比AVL树,在维持平衡的严格程度上有所放松,这使得红黑树在插入和删除操作时的旋转次数通常少于AVL树,从而在某些应用场景下提供了更好的性能。然而,这种放松也意味着红黑树可能在某些极端情况下导致稍微不平衡的结构。

2024-08-31 08:40:30 1300

原创 布隆过滤器简述

布隆过滤器(Bloom Filter)是一种空间效率很高的概率型数据结构,用于判断一个元素是否在一个集合中。它的特点是空间效率和查询时间都远远超过一般的算法,但是有一定的误判率。布隆过滤器的这种高效特性使它在网络应用中得到了广泛的应用。

2024-08-31 08:39:12 1036

原创 G1 垃圾收集器配置

通过开启的GC日志进行深入分析,找出GC的热点,了解是Minor GC还是Full GC导致的延迟,针对性地进行优化。:对于电商平台这样的复杂系统,通过微服务架构拆分服务,可以更灵活地进行资源分配和扩展,提高系统的整体性能和稳定性。都设置为18GB,如果通过监控发现实际使用的堆内存远低于这个值,可以适当减小堆大小,以减少GC的工作量。:启用GC日志文件的轮转,设置最多保留30个日志文件,每个文件的最大大小为50MB。:启用分层编译,这可以在程序运行时根据代码的热度来选择不同的编译级别,以优化性能。

2024-08-31 08:33:56 1122

原创 AVL树及其性质

AVL树通过严格的平衡条件保证了树的高度始终保持在O(log n),从而确保了主要操作的高效性。虽然维护这种平衡需要额外的开销,但在需要频繁查找操作的场景中,AVL树仍然是一个非常有用的数据结构。

2024-08-30 07:10:43 1049

原创 huffman树概念、构造方法及huffman编码

Huffman树是数据压缩中的一种重要技术,通过构建最优二叉树,为不同频率的字符分配不同长度的编码,实现数据的有效压缩。Huffman编码的最优性和前缀无歧义性使其成为数据压缩中不可或缺的工具。

2024-08-30 06:55:28 1080

原创 鲁棒性(Robustness)

鲁棒性是衡量系统、模型或算法在面对不确定性和异常情况时稳定性和可靠性的重要指标。通过采取适当的设计和优化措施,可以显著提高鲁棒性,确保系统或模型在各种条件下都能有效地工作。

2024-08-30 06:44:15 391

原创 CityHash、FarmHash

CityHash和FarmHash是Google开发的高效非加密哈希函数,适用于处理大量数据的场景,如数据分区、快速查找和数据校验。它们以高速度和良好的分布特性而著称,但不适用于加密或安全敏感的应用。

2024-08-30 06:42:25 545

原创 MurmurHash

MurmurHash是一种高效、分布均匀且广泛应用的非加密哈希函数。它在数据处理和存储的多个领域都有着重要的应用,尤其适合那些对性能有高要求的场景。然而,需要注意的是,MurmurHash不适用于安全敏感的应用。

2024-08-30 06:39:21 345

原创 哈希冲突解决方法

解决哈希冲突的方法多种多样,每种方法都有其适用场景和优缺点。在实际应用中,选择合适的冲突解决策略需要考虑数据的特性、哈希表的大小、系统的性能要求等因素。

2024-08-30 06:35:11 290

原创 http长连接原理

HTTP长连接通过复用TCP连接来提高通信效率,减少延迟和服务器负载。它是现代Web通信的重要组成部分,为高效的HTTP通信奠定了基础。随着HTTP/2和HTTP/3的出现,连接管理变得更加高效,但长连接的基本原理仍然适用。在实际应用中,需要根据具体场景合理配置和管理长连接,以获得最佳性能。

2024-08-30 00:25:25 793

原创 HTTP/3

HTTP/3通过采用QUIC协议,提供了比HTTP/2更低的延迟、更高的性能和更强的安全性。随着技术的成熟和广泛支持,HTTP/3有望成为未来互联网通信的重要标准。

2024-08-30 00:24:55 811

原创 QUIC(Quick UDP Internet Connections)协议

QUIC协议通过提供快速的连接建立、多路复用、内置加密和连接迁移等特性,旨在解决TCP协议在现代网络应用中的性能限制。随着HTTP/3协议的采用,QUIC正变得越来越重要,预计将对互联网的未来发展产生深远影响。

2024-08-30 00:24:21 727

原创 RTT(Round-Trip Time)

RTT是一个反映网络延迟的重要指标,对于网络性能的评估、网络问题的诊断、拥塞控制策略的制定以及超时设置的调整都有重要作用。理解和优化RTT对于提高网络通信的效率和用户体验至关重要。

2024-08-30 00:22:33 369

原创 HTTP/2

HTTP/2代表了HTTP协议的重大进步,通过引入多项改进,显著提高了Web通信的效率和性能。随着互联网技术的不断发展,HTTP/2已成为现代Web应用的重要基础。

2024-08-30 00:17:35 897

原创 HTTP/1.1

HTTP/1.1通过引入持久连接、管道化、分块传输编码、缓存控制等特性,显著提高了Web通信的效率和灵活性。尽管HTTP/2和HTTP/3已经被引入以进一步改进HTTP协议,HTTP/1.1仍然是互联网上广泛支持和使用的一个重要版本。

2024-08-30 00:15:28 868

原创 常见协议工作原理 https ARP ICMP DHCP PING

HTTPS是HTTP的安全版本,它在HTTP和TCP之间加入了SSL/TLS协议层,用于加密数据传输,确保数据的安全性和完整性。DHCP用于自动分配IP地址给网络中的设备,以及配置其他网络信息,如子网掩码、默认网关、DNS服务器等。这些协议和工具是网络通信的基础,它们各自承担着不同的角色和功能,共同确保了网络的高效、可靠运行。PING是一种使用ICMP回显请求和回显应答消息来检查网络上另一台计算机是否可达的工具。ICMP用于在IP主机、路由器之间传递控制消息,如错误报告和其他网络相关的信息。

2024-08-30 00:14:25 686

原创 DoS、DDoS、DRDoS 攻击

DoS、DDoS和DRDoS攻击都是严重的网络安全威胁,其中DDoS和DRDoS由于其分布式特性更难防御。有效的防御策略通常需要结合多种方法,并根据具体情况进行调整。随着攻击技术的不断演进,防御措施也需要不断更新和完善。

2024-08-30 00:06:49 344

原创 tcp的粘包和拆包及解决方案

TCP的粘包和拆包问题是由于TCP的字节流特性和网络传输效率的需要所导致的。解决这一问题的关键是在应用层引入一定的协议来定义消息的边界,常见的方法包括消息定长、设置消息边界、长度字段等。选择哪种方法取决于具体的应用场景和需求。

2024-08-30 00:03:54 596

原创 权威DNS服务器

权威DNS服务器是域名解析过程中的关键环节,它们为特定域名提供权威、准确的DNS记录信息。通过权威DNS服务器,互联网能够实现域名到IP地址的准确映射,确保用户能够顺利访问网站和网络服务。

2024-08-29 23:57:40 353

原创 根DNS服务器

根DNS服务器在全球互联网域名解析系统中扮演着至关重要的角色。它们不仅是域名解析过程中的最高权威,也是维护互联网稳定运行的关键基础设施。通过全球分布的任播节点,根DNS服务器能够提供高效、可靠的服务,确保用户能够顺畅访问互联网上的各种资源。

2024-08-29 23:55:34 446

原创 DNS工作流程

TLD DNS服务器管理着在其下注册的所有二级域名的记录,它会返回负责该域名的权威DNS服务器的地址。DNS查询过程中,通常用户的本地DNS服务器对根服务器、TLD服务器和权威服务器的查询是迭代查询,而用户的计算机对本地DNS服务器的查询是递归查询。根DNS服务器是顶级的DNS服务器,它不直接解析域名,而是告诉下一级的顶级域(TLD,例如.com、.net等)DNS服务器的地址。的DNS服务器)没有缓存该域名的IP地址,它会作为DNS客户端,向根DNS服务器发起查询。如果本地DNS解析器(通常是。

2024-08-29 23:50:53 1040

原创 用户ISP

用户ISP(Internet Service Provider,互联网服务提供商)是指向用户提供接入互联网服务的公司或组织。ISP通过各种技术手段(如拨号、DSL、光纤、无线等)为个人、企业和其他组织提供互联网连接服务。用户通过ISP连接到互联网,可以访问全球的网络资源、网站和服务。

2024-08-29 23:44:38 547

原创 顶级域名服务器 - TLD服务器

TLD服务器(顶级域名服务器)是负责管理互联网域名系统(DNS)中所有顶级域名(Top-Level Domains, TLDs)的DNS记录的服务器。顶级域名是域名层级结构中的最高级别,位于域名的最右侧,例如.com.org.net、国家代码顶级域名(ccTLDs)如.cn.uk等,以及新的通用顶级域名(gTLDs)如.app.blog等。

2024-08-29 23:39:44 619

原创 操作系统:线程实现方式

用户级线程和内核级线线程各有优缺点,选择哪种实现方式取决于具体的应用需求和操作系统的支持。混合实现方式试图提供一种折中方案,以达到更好的性能和灵活性。

2024-08-29 23:20:33 623

原创 IO多路复用(select、poll、epoll)

准备阶段应用程序创建三个fd_set结构(readfds, writefds, exceptfds),用于表示要监视的读、写和异常事件的文件描述符集合。使用FD_SET()宏将需要监视的文件描述符添加到相应的fd_set中。调用select应用程序调用select函数,传入最大文件描述符值+1、三个fd_set和超时时间。select将fd_set从用户空间拷贝到内核空间。内核处理内核遍历所有fd_set中的文件描述符,检查它们的状态。如果没有就绪的文件描述符且未超时,进程会被阻塞。

2024-08-28 07:49:04 1008

原创 mmap(内存映射)

mmap(内存映射)是一种在Unix和类Unix系统中广泛使用的内存管理技术。它允许将文件或设备的内容直接映射到进程的地址空间,从而实现高效的文件访问和进程间通信。mmap是一个强大的系统调用,在需要高效文件I/O、大文件处理或进程间通信时特别有用。但它也需要谨慎使用,特别是在处理同步和内存管理方面。

2024-08-28 07:44:47 242

原创 ASCII艺术含义

ASCII艺术(ASCII Art)是一种使用美国信息交换标准代码(ASCII)中的可打印字符来创建图像的技术。这就是ASCII艺术的基本概念。它利用简单的字符创造出视觉上的图像或图形,在纯文本环境中传达信息或创造艺术效果。历史悠久:在图形界面和高分辨率显示器普及之前,ASCII艺术是计算机上创建图像的主要方式之一。纯文本:只使用标准ASCII字符,可以在任何文本编辑器中创建和查看。跨平台:由于只使用基本字符,可以在几乎所有计算机系统上正确显示。简单直观:用简单的字符组合来表示复杂的图形或概念。

2024-08-28 07:25:23 307

原创 硬链接和软连接的区别

硬链接和软链接各自提供了文件系统中不同的功能和用途。硬链接主要用于创建文件的额外入口点,而不增加存储空间的负担,适用于文件备份和数据安全。软链接则提供了更大的灵活性,允许跨文件系统的链接,链接到目录,以及快速切换文件或目录的目标,但需要处理悬空链接的情况。选择使用哪种链接类型取决于具体的需求和场景。

2024-08-27 21:21:31 883

原创 用户态和内核态及其切换

用户态(User Mode)和内核态(Kernel Mode)是操作系统中两种不同的执行模式,它们主要用于区分不同权限级别的操作。

2024-08-27 21:16:08 365

原创 死锁的处理策略和常用方法

死锁是指两个或多个进程在执行过程中,因争夺资源而造成的一种僵局。处理死锁的策略主要分为四种:预防死锁、避免死锁、检测死锁和解除死锁。

2024-08-27 21:11:11 272

原创 进程调度算法

选择合适的调度算法需要考虑系统类型、性能需求、公平性等多个因素。在实际系统中,通常会采用多种算法的组合来实现最佳的调度效果。进程调度算法是操作系统用来决定哪个就绪进程应该被分配 CPU 时间的方法。

2024-08-27 21:09:10 241

原创 进程间通信方式 IPC

管道是一种最基本的IPC机制,它允许一个进程与另一个进程之间进行单向数据传输。:内存映射文件允许文件或文件的一部分被映射到进程的地址空间中,进程可以像访问普通内存一样访问文件内容。:信号量主要用于进程间的同步,而非传递数据。信号量可以是二进制的(0或1),也可以有更多的值。:RPC允许一个进程调用另一个地址空间(通常是在远程系统上)的进程中的函数或过程。:共享内存允许两个或多个进程共享一个给定的存储区,是最快的IPC形式。:套接字允许位于同一台机器上的进程或不同机器上的进程之间进行双向通信。

2024-08-27 20:59:40 257

原创 org.apache.commons.lang.math.NumberUtils#isNumber 解释

循环结束后,代码检查字符串的最后一个字符。如果是数字,返回。

2024-08-27 15:23:35 745

原创 中断处理过程

中断处理是操作系统响应外部或内部事件的一种机制。中断允许计算机系统对外部设备的请求或正在执行的程序的异常情况做出反应。

2024-08-27 00:12:46 298

原创 操作系统:虚拟内存

虚拟内存是计算机系统内存管理的一种技术,它允许程序在运行时使用比物理内存(RAM)更多的地址空间。虚拟内存通过将物理内存与磁盘空间结合使用,创建了一个大得多的虚拟地址空间,从而提高了内存使用的灵活性和效率。

2024-08-27 00:04:59 368

Scala入门教程文档

Scala入门教程文档,原视频地址:https://www.bilibili.com/video/BV1Q5411t74z/?spm_id_from=333.337.search-card.all.click&vd_source=9d8a366730d0394fa41e3b867372fc03

2023-10-02

空空如也

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

TA关注的人

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