`
smithfox
  • 浏览: 55232 次
  • 性别: Icon_minigender_1
  • 来自: hf
社区版块
存档分类
最新评论

幂等性 个人理解及应用

阅读更多

[原文见我个人blog http://www.smithfox.com/?e=16 在javaeye发布一次]

 

[说明: 本文为http://www.smithfox.com原创, 转载请注明原文, 谢谢]

 

网络上的绝大部分解释类似于:

"幂等性是指重复使用同样的参数调用同一方法时总能获得同样的结果。比如对同一资源的GET请求访问结果都是一样的。"

我认为网络上的这种解释太窄,不能用来解释程序开发对幂等性的本质要求.

 

详见: http://www.smithfox.com/?e=16 

0
0
分享到:
评论
2 楼 smithfox 2011-01-21  
@feng_tai_jun,
“幂等性是指重复使用同样的参数调用同一方法时总能获得同样的结果。比如对同一资源的GET请求访问结果都是一样的。” 这绝对是错误的解释!!
幂等性压根和返回结果没有关系, 幂等性强调的是 外部对系统内部的影响. 而不是外部怎么看系统.就上面这种解释, System.getCPULoad(), 这两次调用返回能一样吗? 但因为是只读接口, 对系统内部状态没有影响, 所以这个函数还是幂等性的.

至于你提到的 条件幂等性和 非条件幂等性, 我还是不怎么明白, 呵呵.

我认为幂等性是有作用范围的, 我们可以将整个对象声明成幂等性(也就是说承诺所有对外公布的接口都是幂等性性的), 也可以只将对象的部分接口(这种情况一般是只想让外部影响对象的部分属性)声明成幂等性.
1 楼 feng_tai_jun 2011-01-19  
你好。你对幂等性讲地很好。我加一些个人理解,不对之处,望不多多指出交流:

“幂等性是指重复使用同样的参数调用同一方法时总能获得同样的结果。比如对同一资源的GET请求访问结果都是一样的。”——
1、按这个理解,对同一资源的GET请问访问结果是一样的,但是这里的“结果是一样的” 是有前提条件:同一个对象在没有使用非幂等性方法改变对象时,才有对一个方法说是幂等性。因此,幂等性应该区别出:条件幂等性,及非条件幂等性 才行。(条件幂等性:是指 对象中方法处理的对象只有符合一定条件的基础上才成立)
因此,就能区分开:条件幂等性就一定不是具有安全性的。
2、照上面的理解,幂等性 幂等的是对象的值。
可这个理解应该是狭义的。
大家都知道,是方法,就一定同时涉及到了 值、及值的类型。
那么,说到幂等性,一定要明确汲及到的类型。

相关推荐

    幂律分布研究简史研究简史

    - **意义**:幂律分布揭示了自然界与社会系统中的某些普遍性特征,有助于理解复杂系统的结构与动态。 #### 二、历史发展 - **早期研究**:幂律分布的概念可以追溯到19世纪末期,当时的研究主要集中在语言学领域,...

    上海交通大学 矩阵理论与应用 张跃辉 习题答案

    这一章的习题解答会涉及矩阵的运算规则及其性质,如矩阵乘法的不交换性、分配律和结合律等。通过解答这些习题,学生可以巩固对基本矩阵运算的理解。 第二章可能涉及矩阵的行简形和列简形,以及如何通过初等行变换将...

    学习大学数学的心得_大学数学学习个人体会.doc

    在学习大学数学的过程中,我们需要掌握一定的规律性和逻辑性,以便更好地理解和应用数学知识。 首先,数学是一门艺术,具有自己的规律性和美学性。几何图形的精致、规律循环的奇妙性都是数学的美丽展现。数学的规律...

    复杂网络理论及其应用研究概述

    复杂网络理论的重要性在于其能够帮助我们理解各种真实世界网络的普遍特性,如社交网络、互联网、生物网络等。这些网络往往具有节点众多和非标准结构的特点,因此被称为复杂网络。复杂网络的研究内容可以概括为三个...

    个人所得税收计算java入门程序

    在Java编程领域,个人所得税计算是一项常见的应用,它涉及到金融计算和税务知识的结合。本程序是为初学者设计的,旨在帮助他们了解如何利用Java语言处理实际问题,特别是涉及数学计算的问题。在这个"个人所得税收...

    6.6 常微分方程应用举例0217.zip

    常微分方程(Ordinary Differential Equations,简称ODE)是数学中研究变量之间依赖关系的一种重要工具,广泛应用于自然科学、工程学、经济学等多个领域。本主题“6.6 常微分方程应用举例0217”旨在通过实例深入浅出...

    若依RuoYi框架剖析笔记,该笔记是在学习江南一点雨所录课程再结合自己的理解所写

    7、**幂等性处理**:防止表单重复提交是幂等性的一个应用场景,通过令牌机制或唯一标识确保同一操作多次执行结果相同。 8、**数据权限**:RuoYi提供了基于角色的数据权限控制,可以限制用户访问特定数据。 9、**...

    4-EPI综合能力题库----数学运算、应用题题精选400道详解.rar

    《4-EPI综合能力题库----数学运算、应用题题精选400道详解》是一部专为提升个人在数学运算和应用题解题能力而设计的资料集。这份压缩包包含了一个详细的PDF文档,旨在帮助学习者巩固数学基础,提高解决实际问题的...

    一元二次方程的应用-《“病毒传播”问题》文件.pdf

    一元二次方程在病毒传播问题中的应用不仅体现了数学的实用性,也突显了数学模型在理解和预测复杂系统行为中的重要作用。通过学习和掌握这些知识,学生不仅可以提高数学技能,还能培养分析和解决问题的能力,这对于...

    各种算法及matlab实现_个人归纳

    《各种算法及MATLAB实现——个人归纳》 MATLAB,全称Matrix Laboratory,是一种功能强大的数值计算和符号计算软件,广泛应用于科学计算、数据分析、工程设计等领域。它以其直观的编程环境和丰富的数学函数库,成为...

    排列和组合概念和应用

    排列和组合是组合数学的基本概念,广泛应用于计算机科学,特别是在游戏开发中的...通过深入理解和应用这些策略,我们不仅能解决高考数学中的排列组合难题,也能在实际的编程问题中灵活运用,提高算法的效率和准确性。

    计算机应用基础答案.doc

    【计算机应用基础】是计算机基础知识的学习领域,涵盖了操作系统、办公软件、网络技术等多个方面。这份文档"计算机应用基础答案.doc"包含了多个选择题及其答案,旨在帮助学习者检验和巩固他们在计算机应用方面的知识...

    最新复杂网络理论和其应用专业知识讲座.ppt

    随着计算能力的提升和大数据的普及,复杂网络理论在生物网络、社交网络分析、推荐系统、网络安全性等方面的应用越来越广泛。 总的来说,复杂网络理论为我们理解和预测复杂系统的行为提供了强大的工具,无论是在社会...

    四川省简阳市阳安中学2015_2016学年高一数学上学期第三次月考试题理无答案

    这些知识点涵盖了高中数学中的基础概念,包括集合论、函数、三角函数、对数函数、指数函数、二次函数、函数的单调性、零点、值域、周期性、奇偶性、不等式解法、方程解法、函数的综合应用等。通过这样的试题,学生...

    mq学习感悟,自己的见解,有错请指出

    为保证数据一致性,可以使用事务或者幂等性设计。消息顺序在某些业务场景下是必要的,但并非所有MQ都支持。消息丢失可能因网络问题或队列满载导致,可以通过设置重试策略解决。而重复消息则需要消费者端具备幂等性,...

    北京市第十三中学2021届高三数学上学期期中试题含解析

    试题旨在检验学生对高中数学知识的理解和掌握程度,涵盖了解析几何、函数单调性、三角函数、曲线切线、等比数列、三角恒等变换、函数周期性、等差数列等核心概念。 在试题中,我们可以看到以下具体的知识点: 1. ...

    2019全国计算机一级MsOffice应用基础知识点汇总.docx

    这些知识点是MsOffice应用基础的基础,对于理解和操作Word、Excel、PowerPoint等Office组件至关重要,也是全国计算机一级考试的重要考点。理解这些概念,可以帮助用户更好地掌握Office软件的使用,并在实际工作中...

    高中高三数学第一次诊断性考试试题 理 (扫描版)新人教A版 试题.doc

    3. **积分**:包括不定积分和定积分的概念及应用,如基本积分公式、换元积分法、分部积分法等,以及积分在几何、物理等问题中的应用。 4. **平面向量**:向量的线性运算、数量积、向量积、混合积,以及向量在解决...

    广东省佛山市第学2019 2020学年高一数学上学期9月月考试题(含解析).doc

    这些题目旨在检验学生对高中数学基础知识的理解和应用能力,包括集合论、函数理论、指数运算以及二次函数等核心概念。解答这些题目需要学生具备扎实的数学基础,能够灵活运用所学知识解决问题。通过这份月考试题,...

Global site tag (gtag.js) - Google Analytics