计算机综合知识
文章平均质量分 92
一些和具体的应用技术无关, 计算机相关, 偏理论的内容
问道飞鱼
长期从事服务后端开发,擅长微服务高并发架构设计, 熟悉云原技术栈,可以提供完整后端解决方案。 如有志同道合的朋友可以一起学习,共同进步, 如果商务合作意向也可联系。
展开
-
【知识科普】HTTP相关内容说明
请求转发是服务器内部的行为,客户端(浏览器)只发起一次请求,服务器将请求转发给另一个资源(如 Servlet、JSP 或其他页面)进行处理,最终将结果返回给客户端。原创 2025-01-27 11:08:14 · 895 阅读 · 0 评论 -
【知识科普】什么是接口幂等性,以及实现方式
接口幂等性(Idempotency of an Interface)是计算机科学和网络通信中的一个重要概念,尤其是在Web服务和API设计中。幂等性是一个数学概念,指的是如果一个操作可以被重复执行而不改变系统的状态(即,无论该操作被执行一次还是多次,产生的结果都是相同的),那么这个操作就被认为是幂等的。在API设计的上下文中,幂等性意味着对于同一个请求,无论其被发送一次还是多次,对资源状态的影响都应该是相同的。原创 2025-01-15 16:27:31 · 687 阅读 · 0 评论 -
【知识科普】应用系统的性能测试
Web应用的性能测试是针对Web应用程序的一种测试类型,旨在评估Web应用在特定条件下的性能表现。Web应用性能测试通过模拟真实用户的行为和负载,对Web应用进行各种性能测试,以评估其响应时间、吞吐量、稳定性、可扩展性等方面的表现。其目的在于发现Web应用中的性能瓶颈、优化系统性能、提高用户体验和满足业务需求。总结测试经验对性能测试过程进行总结,提炼出有效的测试方法和策略。记录测试过程中遇到的问题和解决方案,以便后续参考和借鉴。实施优化措施。原创 2025-01-13 06:15:00 · 710 阅读 · 0 评论 -
【知识科普】关于白盒测试和黑盒测试的一些知识点
白盒测试是一种测试方法,测试人员可以访问和观察源代码、函数调用、循环、分支、边界情况等信息。其主要目的是检查源代码中的错误和漏洞,例如逻辑错误、死循环、内存泄漏等。测试技术等效类问题:针对代码中的条件判断等关键操作进行测试,以发现输入错误、统计错误等问题。路径覆盖问题:通过测试来覆盖代码执行过程中所有可能的路径,以发现可能存在的逻辑错误和死循环等问题。数据流问题:通过测试来检测数据来源、变量作用域、逻辑路径等问题,以发现数据依赖和数据处理问题。边界值问题。原创 2025-01-12 21:20:49 · 870 阅读 · 0 评论 -
【设计模式】装饰器与代理模式的对比
装饰器模式是一种结构型设计模式,它允许你动态地将责任附加到对象上,而不会影响其他对象。装饰器模式通过创建一个装饰器类,该类包装了原始对象,并在调用原始对象的方法之前或之后添加额外的行为。代理模式也是一种结构型设计模式,它提供了一个代理对象来控制对另一个对象的访问。代理对象可以在访问真实对象之前或之后添加额外的行为。以下是一个简单的Java实现,用于装饰一个。以下是一个简单的Java实现,用于代理一个。原创 2025-01-08 23:09:53 · 326 阅读 · 0 评论 -
【知识科普】关于字符编码的一些知识科普
字符编码是将字符转换成字节序列的规则,以便在计算机中存储和传输。不同的字符编码支持不同的字符集和编码方式。最早的字符编码标准,用于文本文件的电子交换。只支持128个字符,包括英文字母、数字和一些特殊符号。每个字符占用1个字节。扩展了ASCII,支持西欧语言的字符。支持256个字符,包括ASCII字符和拉丁字母表中的一些特殊字符。每个字符占用1个字节。一种变长字符编码,支持Unicode字符集。兼容ASCII,对于ASCII字符使用1个字节,其他字符使用2到4个字节。原创 2024-12-30 15:48:18 · 1288 阅读 · 0 评论 -
【知识科普】认识正则表达式
例如,你可以检查年龄是否在合理的范围内(例如,0到120岁之间),或者与用户的出生日期进行比较来计算实际年龄。需要注意的是,虽然这个正则表达式可以匹配大多数有效的身份证号码,但它并不能验证身份证号码的真实性。此外,由于身份证号码的格式可能会随着时间的推移而发生变化(尽管这种变化非常罕见),因此在实际应用中,可能需要根据最新的身份证号码规则来更新正则表达式。:如果应用程序需要处理更复杂的年龄格式(例如,带有小数点的年龄、带有文字描述的年龄等),你可能需要根据具体需求来更新正则表达式。原创 2024-12-23 16:32:48 · 1071 阅读 · 0 评论 -
【知识科普】properties文件格式深入讲解
在Spring Boot应用程序中,推荐使用属性来引入其他配置文件,因为它既简单又符合Spring Boot的设计理念。如果你正在使用Spring Framework而不是Spring Boot,或者你有特定的需求需要使用Java配置来引入额外的properties文件,那么可以考虑使用注解或其他方法。原创 2024-12-22 10:08:03 · 742 阅读 · 0 评论 -
【知识科普】yml文件格式介绍
如果你需要更复杂的配置加载逻辑,你可以创建一个自定义的或。这些组件允许你在Spring Boot的或上执行自定义的加载和修改逻辑。原创 2024-12-20 07:38:04 · 1367 阅读 · 0 评论 -
【设计模式】观察者模式深度讲解
定义:观察者模式是一种对象行为模式,用于在对象之间建立一对多的依赖关系,以便当一个对象的状态发生变化时,所有依赖于它的对象都得到通知并被自动更新。特点松耦合:主题和观察者之间通过抽象接口进行交互,使得它们可以独立演化而不影响彼此。一对多关系:一个主题可以有多个观察者,并且它们之间没有直接联系。可扩展性:可以随时增加新的观察者或删除现有观察者。实时性:实现了实时更新机制,当主题状态改变时能够即刻通知相关观察者。原创 2024-12-15 20:12:13 · 771 阅读 · 0 评论 -
【知识科普】工作流引擎activiti详细介绍
Activiti是一个开源的工作流引擎,它为企业应用提供了强大的工作流管理功能。Activiti旨在提供支持新的BPMN 2.0标准,包括支持对象管理组(OMG),并面对新技术的机遇,诸如互操作性和云架构,提供技术实现。它是一个灵活、可扩展且易于使用的工作流引擎,能够帮助企业实现业务流程的自动化和优化。绘制流程图使用BPMN 2.0规范绘制审批流程图,明确各个任务节点、审批人、决策点等。你可以使用Activiti提供的流程图编辑器或其他BPMN编辑器来完成这一步骤。部署流程图。原创 2024-12-14 14:36:35 · 1366 阅读 · 0 评论 -
【知识科普】BPMN 2.0(Business Process Model and Notation 2.0)一个标准化的图形化建模语言
BPMN 2.0(Business Process Model and Notation 2.0)是一个标准化的图形化建模语言,用于描述业务流程和工作流。BPMN 2.0由Object Management Group(OMG)制定,旨在提供一种标准化的方式,帮助企业和开发者清晰地建模、分析、执行和优化业务流程。它发布于2011年,是BPMN(Business Process Model and Notation)规范的第二个版本。原创 2024-12-13 07:28:01 · 1009 阅读 · 0 评论 -
【GIT知识】git进阶-hooks勾子脚本
Git Hooks是Git的一个重要特性,它允许用户在Git仓库中定义一些自动化的脚本,这些脚本可以在特定的Git事件(如提交代码、接收代码等)发生时被触发执行。Git Hooks本质上是一组位于Git仓库目录中的下的可执行文件。每个Git仓库都有一个隐藏的.git目录,其中包含了与版本控制相关的所有数据和配置信息,而hooks文件夹则存放了Git钩子脚本的模板。这些脚本可以用任何你喜欢的脚本语言来编写(如Bash、Python、Node.js等),只要该语言在系统环境中可执行即可。原创 2024-12-11 21:06:09 · 1375 阅读 · 0 评论 -
【知识科普】TLS协议深入解读
TLS(Transport Layer Security,传输层安全性协议)是一种为网络通信提供安全及数据完整性保障的安全协议。TLS协议旨在在两个通信应用程序之间提供保密性、数据完整性以及真实性。它通过使用多种加密技术,如对称加密、非对称加密和哈希函数等,来确保通信数据在传输过程中不被窃听、篡改或伪造。原创 2024-12-02 06:00:00 · 1251 阅读 · 0 评论 -
【知识科普】github开源证书等级说明
实际上,GitHub支持多种开源许可证,每种许可证都有其独特的条款和条件。在选择开源许可证时,项目维护者应考虑项目的目标、法律合规性和兼容性等因素。在GitHub上,开源许可证(Open Source Licenses)用于规范开源项目的使用、分发、修改等权限。这些许可证种类繁多,各有其特点和适用场景。此外,随着开源社区的不断发展和变化,新的开源许可证可能会不断出现,而旧的许可证可能会逐渐被淘汰或更新。因此,建议项目维护者在选择开源许可证时,仔细研究其条款和条件,并参考最新的开源许可证指南和最佳实践。原创 2024-11-30 23:54:59 · 597 阅读 · 0 评论 -
【知识科普】简单讲讲Socket通讯协议
Socket协议是网络通信中的一项重要技术,它提供了在网络上进行数据交换的接口和机制。原创 2024-11-30 15:09:35 · 2193 阅读 · 0 评论 -
【知识科普】设计模式之-责任链模式
概述责任链模式的详细描述责任链模式的使用场景使用场景举例1. 审批流程2. 过滤器链3. 事件处理系统4. 插件系统Java代码示例及注释代码解释责任链模式(Chain of Responsibility Pattern)是一种行为型设计模式,它允许多个对象按照一定顺序处理请求,并且每个对象都有机会选择是否处理该请求或将其传递给下一个对象。这种模式将请求的发送者和接收者解耦,提供了更大的灵活性和可扩展性。抽象处理者(Handler):定义了处理请求的接口,并持有对下一个处理者的引用。原创 2024-11-29 14:29:28 · 1397 阅读 · 0 评论 -
【知识科普】简单讲讲什么是缓存伪共享
缓存伪共享(False Sharing)是一种在多线程编程中由于缓存行(Cache Line)的共享而导致的性能问题。现代处理器为了提高缓存效率,会将内存数据按缓存行(通常是64字节)进行划分,并将其加载到高速缓存中。当多个线程操作位于同一缓存行内的不同变量时,即使这些变量在逻辑上是独立的,也会因为缓存行的加载和失效而导致频繁的缓存一致性操作,进而降低性能。原创 2024-11-28 06:44:36 · 1079 阅读 · 0 评论 -
【知识科普】聊一聊大家耳熟能详的SSL协议
SSL(Secure Sockets Layer,安全套接层)是一种网络安全协议,用于在互联网上建立加密的通信通道,确保数据的安全传输。SSL协议最初由Netscape公司设计,后来被IETF(Internet Engineering Task Force,互联网工程任务组)标准化为RFC 6101。它通过在客户端和服务器之间建立加密通道,确保数据在传输过程中的安全性和完整性。SSL协议广泛应用于Web浏览器和服务器之间的通信,以保护用户隐私和敏感信息。原创 2024-11-27 05:45:00 · 1086 阅读 · 0 评论 -
【知识科普】短链接生成系统设计
短链接(Short Link)的原理主要是将原始的长URL(Uniform Resource Locator)通过特定的算法或服务转化为一个更短、易于记忆的URL。原创 2024-11-24 21:51:19 · 979 阅读 · 0 评论 -
【知识科普】Restful架构风格
RESTful架构风格是一种用于设计网络应用的架构风格,它基于REST(Representational State Transfer,表述性状态转移)原则。RESTful架构风格强调资源和资源标识符(URI)的重要性,以及使用HTTP协议进行无状态通信。RESTful架构风格的应用场景非常广泛,它主要用于设计客户端与服务器之间的交互方式,使得Web服务更加简洁、高效。HATEOAS,全称是Hypermedia as the engine of application state,即。原创 2024-11-24 19:51:12 · 1288 阅读 · 0 评论 -
【知识科普】常见的访问控制策略
角色权限控制是确保系统安全性和数据完整性的关键机制。基于角色的访问控制(Role-Based Access Control,简称RBAC)是一种访问控制机制,通过为用户分配角色来管理权限。RBAC模型使得权限的管理更加简便高效,尤其适用于复杂的系统架构。RBAC的核心思想是“用户-角色-权限”的授权模型,即一个用户拥有若干角色,一个角色拥有若干的权限。ACL是由一系列permit(允许)或deny(拒绝)语句组成的、有序的规则集合,它通过匹配报文的相关字段实现对报文的分类。原创 2024-11-19 18:48:09 · 935 阅读 · 0 评论 -
【知识科普】统一身份认证CAS
综合概述一、CAS概述二、CAS的组成与工作原理三、CAS的特性与支持四、CAS的应用场景示例展示场景设定CAS认证过程其他认证细节CAS认证过程的细节CAS认证过程的特性参考文献统一身份认证CAS(Central Authentication Service),即中央认证服务,是由耶鲁大学发起的一个企业级开源项目。它是一个用于身份验证的开源框架,为Web应用系统提供了一种可靠的SSO(单点登录)解决方案。原创 2024-11-18 19:33:20 · 2027 阅读 · 0 评论 -
【知识科普】微内核架构与宏内核架构
微内核是提供操作系统核心功能的内核的精简版本。它设计成在很小的内存空间内运行,以增加系统的移植性和模块化。微内核提供最基本的服务,如任务管理、线程管理、交互进程通信(IPC)以及内存管理等。宏内核的特性是整个核心程序都以核心空间(Kernel Space)的身份及监管者模式(Supervisor Mode)来运行。相对于其他类型的操作系统架构,如微核心架构或混核心架构等,宏内核将操作系统的大部分功能(如进程管理、内存管理、文件系统、设备驱动等)都集成在一个大块内核中执行。原创 2024-11-15 06:32:42 · 1377 阅读 · 0 评论 -
【知识科普】今天聊聊什么是SEO
概述一、SEO的分类二、SEO的作用三、SEO优化的方法四、SEO的误区SEO优化详解一、SEO优化的核心要素二、SEO优化的具体策略三、SEO优化的注意事项SEO(Search Engine Optimization)即搜索引擎优化,是一种通过分析搜索引擎的排名规律,了解各种搜索引擎怎样进行搜索、怎样抓取互联网页面、怎样确定特定关键词的搜索结果排名的技术。原创 2024-11-14 15:22:38 · 1079 阅读 · 0 评论 -
【知识科普】ARM架构和x86架构
x86架构最早由英特尔(Intel)在1978年推出,最初是基于16位的8086微处理器。随着时间的推移,x86架构逐渐发展成为32位和64位的处理器架构,广泛应用于个人电脑(PC)、服务器和其他类型的计算机系统。原创 2024-11-13 06:00:00 · 3521 阅读 · 0 评论 -
【知识科普】TCP与UDP这两者之间的对比
TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。它在互联网协议套件(TCP/IP)中负责提供端到端的可靠通信服务。原创 2024-11-10 21:42:16 · 951 阅读 · 0 评论 -
【知识科普】使用 OpenSSL为特定域名生成自签名证书
这个证书可以用于测试或开发环境,但不应在生产环境中使用,因为它不会被客户端(如 web 浏览器)信任。例如,如果你正在配置一个 web 服务器,你可以将这两个文件放置在服务器的配置目录中,并引用它们。要验证自签名证书,你可以使用 OpenSSL 命令行工具来检查证书的内容和有效性。以下命令将生成一个有效期为 365 天的自签名证书,并将其保存为。使用这些命令,你可以验证自签名证书的有效性、查看证书信息以及检查证书是否满足特定的安全要求。这将显示证书的主题(即证书的拥有者)和签发者(即颁发证书的 CA)。原创 2024-11-07 06:00:00 · 1082 阅读 · 0 评论 -
【知识科普】一篇文章带你了解什么是http以及https
HTTP(超文本传输协议,HyperText Transfer Protocol)是一种用于分布式、协作式、超媒体信息系统应用层的无状态请求/响应协议。HTTP是互联网中用于传输网页数据的主要协议。HTTPS(全称为 HyperText Transfer Protocol Secure)是一种安全的通信协议,它在传统的HTTP协议上增加了SSL/TLS协议,用于在客户端和服务器之间建立一个加密的通信通道,确保数据传输的安全性。原创 2024-11-06 06:28:37 · 1699 阅读 · 0 评论 -
【知识科普】常见网络安全问题以及应对方式
通过实现。原创 2024-11-03 07:55:42 · 766 阅读 · 0 评论 -
【知识科普】关于领域模型设计的一些思考
领域模型设计(Domain Model Design)是软件工程中的一个概念,它涉及到对业务领域内的概念和过程进行建模,以便于开发人员和业务专家能够更好地理解和解决问题。领域模型是业务逻辑的抽象,它通常包括实体(Entities)、值对象(Value Objects)、聚合(Aggregates)、领域服务(Domain Services)、应用服务(Application Services)和领域事件(Domain Events)等组件。实体(Entities)原创 2024-10-29 12:11:10 · 789 阅读 · 0 评论 -
【知识科普】正则表达式深入解读
正则表达式(Regular Expression,简称regex或regexp)是一种强大的文本处理工具,它通过定义一系列的规则来匹配、搜索、替换、提取或校验文本中的特定模式的字符串。正则表达式在编程语言、文本编辑器、搜索引擎和各种工具中广泛应用。字符集(Character Set):匹配任意单个字符(除了换行符)。[abc]:匹配方括号内的任意一个字符。[^abc]:匹配不在方括号内的任意一个字符(取反)。[a-z]:匹配任意一个英文小写字母。[0-9]:匹配任意一个数字。原创 2024-10-26 07:00:00 · 947 阅读 · 0 评论 -
【知识科普】今天聊聊前端打包工具webpack
Webpack是一个现代JavaScript应用程序的静态模块打包工具,它能够将项目中的所有依赖项(包括JavaScript模块、图片、CSS等)打包成一个或多个bundle,供浏览器使用。原创 2024-10-24 23:30:17 · 1133 阅读 · 0 评论 -
【知识科普】websocket深入了解
WebSocket是一种网络通信协议,提供了在单个TCP连接上进行全双工通信的能力。它允许服务器主动向客户端发送消息,同时也允许客户端向服务器发送消息,这使得WebSocket成为实现实时通信的理想选择。原创 2024-10-22 23:10:08 · 1365 阅读 · 0 评论 -
【知识科普】简单聊聊跨域问题
跨域问题(Cross-Origin Resource Sharing, CORS)是指当一个网页尝试访问另一个不同源(域名、协议或端口不同)的资源时,浏览器出于安全考虑,会限制这种跨源HTTP请求。如果服务器没有正确配置允许跨域访问,浏览器会拦截这些请求,并显示错误。同源策略(Same-Origin Policy)是一种浏览器安全机制,它限制了从一个源加载的文档或脚本与另一个源的资源进行交互。这个策略的目的是防止恶意文档窃取数据,比如一个攻击者控制的网站试图读取或修改另一个网站的内容。原创 2024-10-22 16:40:51 · 1161 阅读 · 0 评论 -
【知识科普】GraphQL一个强大的API查询语言
GraphQL是一种用于API的查询语言,也是一个服务端的运行时,用于执行基于类型系统的查询。它允许客户端根据需求精确地获取数据,减少冗余数据的传输,并且使得API的演进更加容易。类型系统:GraphQL使用类型来保证应用只请求可能的数据,并提供了清晰的辅助性错误信息。这些类型系统允许客户端了解它可以请求哪些数据,并且确保请求的数据是有效的。查询语言:GraphQL查询语言允许客户端精确地指定它需要哪些数据,而不是获取由服务器预定义的资源。这样,客户端可以控制它获取的数据,而不是服务器。服务端运行时。原创 2024-10-18 09:01:26 · 1348 阅读 · 0 评论 -
【知识科普】Markdown语法内容看这一篇就够了
Markdown是一种轻量级标记语言,其排版语法简洁,让人们能更多地关注内容本身而非排版。Markdown中的段落没有特殊的格式要求,直接编写文字即可。段落的换行是使用两个以上空格加回车,或者使用空行来分隔不同的段落。虽然Markdown本身不支持数学公式,但许多Markdown编辑器支持使用LaTeX语法来插入数学公式。Markdown使用了一些特殊字符来表示格式,如果需要在文档中显示这些特殊字符,可以使用反斜杠。等,这为Markdown提供了额外的样式和功能。的数量代表标题的级别,最多支持六级标题。原创 2024-10-12 11:45:00 · 864 阅读 · 0 评论 -
【计算机网络】计算机网络相关术语
网络地址转换(Network Address Translation, NAT)是一种广泛使用的网络技术,它允许多个设备共享一个公共IP地址访问互联网。NAT的主要作用是解决IPv4地址短缺的问题,同时也提供了额外的安全性和网络隔离。NAT是一种重要的网络技术,通过地址转换实现了内部网络和外部网络之间的通信。NAPT(网络地址端口转换)是最常见的NAT形式,通过转换IP地址和端口号,允许多个内部设备共享一个公共IP地址。NAT不仅解决了IPv4地址短缺的问题,还提供了额外的安全性和网络隔离。原创 2024-10-09 20:44:36 · 1691 阅读 · 1 评论 -
【知识科普】今天聊一聊序列化框架
序列化是一个在编程中广泛使用的概念,它涉及到将数据结构或对象状态转换为可以存储或传输的格式的过程。序列化是指将数据结构或对象状态转换成可以存储或传输的格式(如二进制、JSON、XML等)的过程。这个格式通常是平台无关的,以便可以在不同的系统或环境中进行交换。定义:序列化是将对象的状态信息转换为可以存储或传输的形式的过程。反序列化则是将存储或传输的序列化数据重新构造为对象的过程。目的:序列化的主要目的是实现数据的持久化存储、远程通信以及跨平台的数据交换。原创 2024-10-09 12:24:34 · 1057 阅读 · 0 评论 -
【知识科普】.toml配置文件说明
toml后缀的文件是一种配置文件格式,全称为Tom’s Obvious, Minimal Language,即“Tom的显然易见的最小语言”。它由前GitHub CEO Tom Preston-Werner在2013年创建,旨在成为一种易于阅读、易于编写的配置文件格式,并且可以被容易地解析成多种编程语言的数据结构。原创 2024-10-07 15:49:35 · 2399 阅读 · 0 评论
分享