| 平行世界: Java 和 XML 为何将成功 huqile(转贴) 关键字 Java 和 XML 出处 http://www-900.ibm.com/developerWorks/cn/java/parallel/index.shtml Simon Phipps 在过去几年中,计算的注意力已经逐渐远离原始技术,并且最近大多数已经在确定一个总体拥有成本 (TCO) 的解决方案上。但是什么构成 TCO 呢?本文讨论了一个典型计算机系统中的互连复杂性是如何影响 TCO 的。而这种互连复杂性正是 Java 技术和 XML 能够处理的。 什么构成了总体拥有成本 (TCO) 呢?这很难说,每个人都有不同的答案。通常取决于他们找到的最方便解决问题的方法。大多数人都同意 TCO 并不只是组成系统各零件价格的总和。最初是这样,但到最后大部分成本来自支持环境中的系统的成本。一种受欢迎的减少 TCO 的方法是尝试集中管理独立系统、客户台式机或这两者,但这也只是答案的一部分。最好将通信量减到最小,但实际上是什么导致需要管理呢?当然,答案是变更。但不在于它本身。孤立的变更只会影响变更本身。我们都知道变更系统的一部分会导致遍及整个系统的支持需要。 普通的计算机系统通常会导致“熵死亡”,即成本超过预期值,而有序的简易性会变成互连复杂性。治愈这种症状的方法可能是集中管理,实际弊病将避免具有依赖性的复杂网络放在首要位置。Java 和 XML 通过帮助排除系统、软件和数据之间的自动互相依赖性来避免这种情况的发生。 一个新世界 软件对平台 让我们首先考虑已经在忍受的计算模式。当计算处于起步阶段时,很容易做出选择。我可以获取任意一种有限范围的计算机,编写在这种计算机上运行的软件,并创建用来存储数据的文件格式。麻烦是软件和数据只能在这种计算机上工作,使用另一种计算机时,就必须使用另一种软件,或者在同一种计算机上使用另一种软件时,就不能使用相同的数据,而且必须了解新的用户界面。 通过两个标准化步骤可以解决许多问题:许多人开始使用 IBM PC,最初使用 DOS,然后使用 Microsoft Windows。一定程度的简易性回来了。但随着时间的流逝,却越来越清楚地发现许多范围的复杂性仍然悄悄地混了进来。特别是,对平台的认可并没有打破软件的平台依赖性;这恰恰意味着它完全是互相依赖的。因此当更新发生时,一切可能破裂!另外,数据世界的垄断力量并没有标准化。就像软件依赖于特定级别的平台,数据也与特定级别的特别品牌软件相关。于是就交织成具有依赖性的复杂网,在其中任何一点所做的更改都可能导致不稳定,也许还会引起整个网络的崩溃。 互相依赖性 这并不是说可以或者应该避免所有互相依赖性;有一些互相依赖性是不可避免的。但在现代系统规范和设计中,应该用与其它成本驱动因素相同的方法来标识和调整它们,请注意图 1 中不仅显示了直接成本,还显示了连接到具有依赖性的网络的终身成本。通常,需要将软件与使用它的环境隔离开。在某些情况下,使用本机接口和二进制是不可避免的,但在这些情况中本机代码外围的平台无关的“封装器”几乎总是有价值的。 图 1. 成本 vs. 节点数量
例如,假设一家公司使用办公套件的宏语言作为办公自动化系统的基础。一天,公司的 IT 小组安装了另一套软件,并无意中更新了办公套件所使用的一个 DLL 文件。他们发现有一个宏不能使用了。经过了大量工作以后,他们设法使这个宏再次工作,但新版本要求使用电子表格程序的更新版本。为了使用该程序,他们不得不安装办公套件的全新级别,而在那以后所有宏都不起作用了!接着,他们逐个调试所有宏,更新并修复它们。在这些修复所涉及的其它部分中,他们发现需要使用一个数据库驱动程序的新版本。可悲的是,那需要使用最新版本的数据库。于是,他们升级了数据库,并且……,哎,您可以猜得出其余部分。 新基础 如何避开这个陷阱?最关键的就是切断数据与平台上软件的连接,对所有这些使用基于标准的选择,以便版本变化所带来的影响有可能降到最低。要达到这一步,我们就将变更与传输媒体(底层平台)隔离,并防止变更影响引起成本的剧烈震荡;我们添加前面提到的隔离层。那么,理想的标准基础是什么呢?图 2 中显示的技术领域,这样的基础应该涵盖的是: 将系统连接到一起并提供访问的网络协议
十年来计算机界的变化主要是重新发现技术思想,并将它们制定成模型内的标准。图 3 中显示以下这些映射: 网络:TCP/IP
从技术到用户 今天,定义新的解决方案涉及到定义用户与信息主体之间的关系。大多数情况下,一个给定的信息主体有多个用户。因此,对于一家网上商店,当客户查看信息时,通常只给他们对于某些特定数据的访问,并且可以用适合客户的方式来显示数据。当供应商的客户服务人员查看相同信息时,查看范围和显示方式都不同。从解决方案和用户的角度来看,这是一种转变,而它对当今的 IT 行业却是最大的挑战。用户能够放心地继续使用,因为新传统中的所有技术都确实是成熟和经过证实的,因此转变是重点和策略之一,而不是向未知技术的跳跃。 平行世界 那么,Java 和 XML 究竟为什么会成功呢?有以下几种原因: 已经证实的技术:新基础的全部五个部分都基于业内最老且经过最多次证实的思想。TCP/IP、“哑终端”虚拟机、标记语言、公钥系统 - 所有都经过数十年的使用,已得到充分的证明。 结束语 本文的核心目的是新计算机系统的主要决定因素在系统的终身拥有成本:即根据 LCO 来决定 - 其范围包括软件、网络、客户机和服务器硬件,以及在生命周期内开发、部署、管理和影响的管理,还有后期迁移到替换系统。本文的主要建议是可以通过将由各种元素造成的网络的互相依赖复杂性降的最小来控制这个因素。要实现该控制,建议改变系统原理,而不是技术的临时变更。通过将未来的开发工作建立在一个坚固的标准基础上,可以避免熵死亡。这也就是 Java 和 XML 可能取得成功的原因,这些技术本身可能是很酷的! 参考资料 关于作者 |
相关推荐
基于PSINS的INS/NHC/ODO组合导航仿真全解析
组合导航通过多传感器融合克服单一导航系统的局限,是车辆自主定位的关键技术。其中惯性导航(INS)依靠陀螺仪与加速度计积分推算运动状态,但误差随时间累积;GNSS提供绝对位置,却在城市峡谷中易受多径效应和遮挡影响导致定位漂移。卡尔曼滤波作为信息融合核心,将不同量测按统计特性加权,实现优势互补。基于PSINS开源工具箱搭建的SINS/GNSS/ODO/NHC组合导航仿真,能够在GNSS失锁条件下利用非完整约束和里程计抑制惯性误差发散,广泛应用于无人驾驶、物流车辆自主定位等场景。本文围绕PSINS仿真环境,详细拆
尽全力 打破陈旧的枷锁 别迷失 最初的选的路途
勇敢之心 (《数码宝贝》动画插曲) - Mr.岑 词:石硕 曲:太田美知彦 平行世界究竟留下谁的印记 去聆听 山岚弥漫将乌云的缝隙遮蔽 一切失去意义 背负期许 默默咽下旅程中的苦痛 心中狂动不已 奋不顾身地去破茧成蝶 尽全力 打破陈旧的枷锁 别迷失 最初的选的路途 我们能无所畏惧地战胜一切 紧握梦 困住未知的残酷 因为爱 挺身将自我征服 闪耀的光芒 执着的希望 穿
使用同一个时钟源clki,做两个二分频时钟,得到div2_clk1和div2_clk2,这两个时钟都能跟源时钟clki同步,但是div2_clk1和div2_clk2的相位可能是相同的,也可能是反相
比如,触发器1的初始Q为0,而触发器2的初始Q为1(这可能由于芯片制造工艺的微小差异、上电过程的随机性、或没有全局复位信号导致)。这句话的意思是:虽然div2_clk1和div2_clk2都是由同一个妈妈(clki)生出来的,频率也都是妈妈的一半,但它们“起步”的时刻可能不同。所以,上面那段话是在提醒你注意这种潜在的、由分频产生的时钟相位关系的不确定性,这在异步电路设计或时钟管理中是必须考虑的关键因素。结果:div2_clk1和div2_clk2的波形完全重合,它们的上升沿和下降沿都发生在同一时刻。
积极聆听
减少误解和错误传达的一个沟通技能是积极聆听。优秀的听者和传达者是一项运作良好 的敏捷项目中不可或缺的,积极聆听有助于两者的培养。 积极聆听的基本包括: 1)关注当下,集中精力于演讲者。 2)作笔记,不打断。 3)用意译来确认和回顾所收听的内容。 4)讲话结束时为后续归纳对话内容。擅用开放式问题,适当肢体语言和沉默来提高聆听技巧。 ...
华为OD机试真题:明日之星选举 (Java/Py/C/ C++/JS/GO)
华为OD机试(机考)双机位C卷 【明日之星选举】,提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试 - 明日之星选举。
九天揽月带你玩转Ardupilot 的EKF2纸老虎(1)
目录 目录 摘要 1.kalman基础知识储备 摘要 本文主要记录自己学习ardupilot的ekf2代码的过程,相信很多人想移植或者学习ekf2,看到眼花缭乱的代码无从下手。九天揽月将带你玩转Ardupilot 的EKF2纸老虎 1.kalman基础知识储备 (1)先来看下最基础也是最重要的线性kalman 总结:不要害怕kalman,只要你可以懂得线性kal...
Google Chrome究竟伤害了谁?
谷歌与微软的战线从搜索到网络广告、办公软件、手机操作系统。除了搜索以外,谷歌后来推出的基于互联网的免费产品,都难以对微软形成致命打击。新发布的浏览器Chrome则被谷歌寄予厚望,谷歌的内部人士“我们天天研究IE8的弱点,然后照着它的弱点去打。它复杂,我们就把界面做得超级简单;它慢,我们就拼命提高速度;它不开源,我们就一定要开源。”看来Chrome的竞争对手是IE。事实是否如此呢?在Chrome上线
LeetCode --- 937. Reorder Data in Log Files 解题报告
You are given an array oflogs. Each log is a space-delimited string of words, where the first word is theidentifier. There are two types of logs: Letter-logs: All words (except the identifier) consist of lowercase English letters. Digit-logs: All word..
spring mvc 为什么这么多xml
spring web mvc 处理流程 Architecture web.xml (webapp必要配置) 作用:spring web mvc 使用dispatcherServlet 分发request,一般我们都需要一个web.xml 来定义这项工作。 servlet-mapping 中定义工作包括: servlet-name :用于匹配名字到 [servlet-name]-servlet....
【Bug已解决】npm install -g @anthropic-ai/claude-code 出现 EACCES: permission denied 解决方案
方案适用场景推荐指数nvm 管理 Node长期开发环境,一次配置永久生效⭐⭐⭐⭐⭐修改 npm 全局目录不想引入 nvm,快速解决⭐⭐⭐⭐修复现有目录权限之前用过 sudo 装包,需要修复⭐⭐⭐Windows 管理员/改目录Windows 平台专用⭐⭐⭐⭐官方原生安装脚本想彻底避开 npm 权限问题⭐⭐⭐⭐报的本质是npm 全局安装目录的属主权限与当前执行用户不匹配,而不是 npm 或 Claude Code 本身有问题。不要用sudo"强行"解决。
Agent驱动电商运营:从选品到售后的全链路革新
在当今竞争激烈的电商市场中,传统的电商运营模式面临着诸多挑战。从选品到售后,每个环节都需要大量的人力投入和专业知识。选品需要深入了解市场趋势和消费者需求,营销需要精准定位目标用户,客服需要24小时响应用户咨询。这些工作不仅耗时耗力,而且容易受到人为因素的影响,导致效率低下和成本高企。AI Agent是一种能够感知环境、做出决策并采取行动的智能系统。感知能力:能够获取和处理环境信息。决策能力:能够根据感知到的信息做出决策。行动能力:能够执行决策,对环境产生影响。学习能力。
心灵的印记
在平凡的生活中,我们总是在不经意间就会回头看看自己的曾经与过去。 回顾过去走过的岁月,发现:我们总在得与失之间挣扎。无论干什么,我们总是希望自己能一帆风顺,尽量避免成功路上的坎坷与不应有的意外。 这么多年的奔波,这么多年的人生经历,终于有了一点点发自心灵深处的对人生的感悟: (一)真正的机会经常藏匿在看来并不重要的生活的琐事中。只要我坚持做好身边的每一件事情,我就会为日后的成功奠定她想要的
36、R语言中的回归模型与机器学习算法
本文介绍了R语言中多种回归模型和机器学习算法,包括Cox回归模型、数据平滑方法(如样条函数、多项式曲面拟合和核平滑)以及回归树模型等。重点讲解了这些方法的实现函数、参数说明以及实际应用示例,如使用`coxph`进行生存分析、使用`spline`和`smooth.spline`进行数据平滑处理、使用`loess`和`locpoly`进行非参数回归分析,以及使用`rpart`构建和可视化回归树。此外,还涉及了模型评估与优化策略,如数据拆分、交叉验证和树的修剪。通过这些方法,可以更好地处理复杂数据集并提升模型性能
XML基础 之XML常见问题合集[zt]
1、[精华]使用XML的五种场合2、[精华]XML基本规则3、[精华]XML FAQ (en)4、[精华]Web设计中如何使用XML数据源对象(DSO)5、[精华]为什么order-by无效?6、[精华]Php:XML分析函数Expat祥解7、[精华]把数据转换成XML格式的好处8、[精华]XML与HTML的结合9、xml中的空格之完全解说10、[精华]XML 指南 CHM版 - by 蓝色理想1
华为的C语言编程规范.pdf
华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。
计算机控制技术及应用
《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。
xml常见问题[zt]
为什么使用 XML本文讨论使用“可扩展的标记语言 (XML)”作为数据的标准格式。它概述了 XML 是什么、它产生的原因以及为什么它对表示和交换数据来说是极有价值和益处的技术。为什么使用 XML?Web 使我们能够与任何地方的任何人通讯。广泛接受的标准(这对完全使用 Web 的潜力是至关重要的)允许 Web 在多种交互操作的技术层上通讯。一个重要层是可视化显示和用户界面,例如 HT
STM32F407中文手册
STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。
[zt]简析JAVA的XML编程(to:初学者们)
简析JAVA的XML编程(to:初学者们)出处:youkuaiyun.com责任编辑:leelee[04-8-17 10:30] 作者:chensheng913 笔者按:个人认为这篇文章通俗易懂,值得推荐。 XML作为全球通用的结构化语言,越来越受人们青睐,各种开发平台(比如Microsoft Studio系列、Oracle系列、Inprise Borland
廖雪峰Python教程[完整版]
廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白
用JDOM处理XML文档(ZT)
用JDOM处理XML文档http://www.chinaunix.net 作者:swpcute 发表于:2002-11-19 16:56:14[这个贴子最后由eclipse在 2002/11/19 11:13pm 编辑] 用JDOM处理XML文档(转载)关键词:Java、JDOM、XML、JAXB (一)JDOM的介绍以及与JAXB的比较 Java +
JDOM and XML 解析(ZT)
JDOM and XML 解析,Part 1文章出处:csdn 加入时间:2004年9月5日19:42 点击:573 JDOM and XML 解析,Part 1JDOM让XML在Java中比以前任何时候都容易使用以前,可能使用一部分Java的一部分库类来操作XML数据结构。那么,JDOM(
[zt]利用EMF直接从xml文档载入模型
FROM:http://ganzhi.bokee.com/2968058.html 通常我们使用EMF的方式是让EMF为我们产生stub代码。但有些情况下可能无法预先生成Java代码,而需要直接从XML文件中直接载入模型。使用GenericXMLResourceFactoryImpl能够直接载入XML文档,不管这个文档是否具有Schema。如果XML文档具有Schema,那么GenericXMLR...
论Asp与XML的关系(ZT)
1、XML 是什么?XML仅仅是一种数据存放格式,这种格式是一种文本(虽然XML规范中也提供了存放二进制数据的解决方案)。事实上有很多文本格式都可以用来存放数据,例如大家所熟悉的.ini文件。很多朋友在初学C语言或者Basic语言的时候,有时可能需要将源数据或者最终结果存放在一个文本文件里面,存放的格式当然由编写程序的人自己定了,那么在编写这个程序的过程中,编程者就自创了一种自定义的数据格式。XM
斑马打印机(zebraZT410R-203dpi)打印RFID标签流程
1.首先连接到打印机 下面代码为连接打印机的代码,其中ip为打印机ip地址, "TcpConnection.DEFAULT_CPCL_TCP_PORT"的值为6101。 public Zt410Util(String ip) throws ConnectionException { Connection con = new TcpConnection(ip, TcpConnection.DEFAULT_CPCL_TCP_PORT); con.open(); } 2.接着利用
Easy Java/XML integration with JDOM(ZT)
http://www.javaworld.com/javaworld/jw-05-2000/jw-0518-jdom.html
JDOM(ZT)
JDOM(史帝芬, idealist@gcn.net.tw, 2002/4/1) 1. Abstract在Java的世界裡,要操控XML,最簡單的方法莫過於使用JDOM。在這裡我簡單的介紹如何用JDOM從無到有的建立一分XML、當有一份XML file時,如何將這個XML file讀進程式裡及如何利用JDOM將XML透過XSLT轉成HTML。JDOM是由Br
python xml etree_[ZT]Python使用xml.etree.ElementTree操作xml文件
一、基本知识1、插入节点Element.insert(index, element) 、ET.SubElement(parent, tag[, attrib[, **extra]]) 、Element.append(subelement)2、删除节点Element.remove(subelement) 删除一个节点、Element.clear()删除该节点下所有子节点3、在节点中插入属性Eleme...
ant 彻底了解(zt)
1 Ant是什么? Apache Ant 是一个基于 Java的生成工具。生成工具在软件开发中用来将源代码和其他输入文件转换为可执行文件的形式(也有可能转换为可安装的产品映像形式)。随着应用程序的生成过程变得更加复杂,确保在每次生成期间都使用精确相同的生成步骤,同时实现尽可能多的自动化,以便及时产生一致的生成版本2 下载、安装Ant 安装Ant下载.zip文件,解压缩到c:/ant1.3(后面引用
java dom4j和_一个java和dom4j的样例
import java.util.List;import java.io.FileInputStream;import org.dom4j.io.SAXReader;import org.dom4j.Document;import org.dom4j.Element;public class Test {public static void main(String args[]) {StringB...
253



被折叠的 条评论
为什么被折叠?



