soa杂感系列之四:soa的新认识 (原创)

本文探讨了SOA与Webservice的关系及区别,强调SOA旨在提高业务敏捷性,而Webservice专注于解决分布式系统的互操作性。作者还分享了如何理智选择技术方案的心得。
   作为技术爱好者的我,常常从技术的角度考虑问题,也往往陷入技术的细节,而忽略了大局观。

  当不断阅读业界的文,尤其是soa相关分析,我日益感觉如是考虑问题的弊端,或许这也是开发者(junior, senior software developer)与系统架构师(system designer and architecture)的区别。前关心技术细节和技术的深度;后关心技术的解决问题面和技术的宽度。

  回头再思考soa,才发现通过技术角度几乎无法理解soa的本质和初衷。web service的铁三角:服务提供者、服务消费者、服务注册中心。 soa的铁三角:数据、业务构件、组合。技术我门关注了web service,一种很好的分布式系统、异构系统间互联互通的解决方案,也是一种很好的面向接口的设计思想;sca sdo则因为web service的不能描述服务间依赖和服务组合而提出(附注1),也很好的体现了所谓的业务数据的组织。仅此而已,再多一点,esb负责消息路由和交互功能也隐含于sca的部署描述符来完成,esb的事件触发机制.....;或许我们能够很好的理解技术,正如架构师和高级开发人员区别所体现,我们对技术的初衷和目地有清晰的了解么?我们能够针对某一个目标选择出合适的技术来么?我惭愧的感觉自己的力不从心。

  依然以soa为例来说这个问题。soa和web servie的初衷并不完全吻合,如果说web service是soa实现手段也有点牵强附会。web service初衷是什么?web service为解决互联互通的分布式应用的互操作而生;而soa并不是为互联互通的目标,而是为业务敏捷性而生。也道出soa实际本质背后的业务模型和业务数据;它要使得业务具有敏捷性,必然要求技术实现和业务脱离;这样业务才能够快速只管有效的表达和示意;相应,辅助手段也就有了要求,就是构件,业务负责人就可以如同堆积木般组织业务,技术人员拿到业务模型后开发就是,新需求或者业务需要就是变更和重组业务,对业务模型进行重组和重构,就是soa提供的有效手段 。

  作为开发者的我,往往会因为一种技术的热门而去跟踪或者拼命想用于项目,但是它真的被需要么?真的是必要的么?是预期资源可控的么?没有去想,怕的是被潮流或者趋势淘汰,哪怕并不合理,也不理会性能和效率。你是否也具有此问题呢?

  所以理智的对待问题,在时间、团队、资源内考虑技术的选择,从技术初衷以及技术的优缺点去选择技术,从宏观上理智的把控,而不是人云亦云。譬如大家批判ejb,因为ejb的初衷应用背景往往被滥用。这也符合spring创始人的“循环设计”理念。

附注1:
组合服务:
1)bpel也是组合服务,但我更觉得他用于流程控制;
2)web servie的不足:定位于接口的暴露,但是不解决服务组合问题;

  或许你可以说,设计一个类,包含所有需要的业务,然后把类发布成服务。可是需要组合得业务往往来源于不同系统,异构即不同语言,你如何表达于一个类呢?
  或许你又可以说,设计一个类,里面聚合很多服务,然后把类再次发布为服务,这部也是一个聚合服务么?
  对,是很好,但是如果业务再次变化呢?sca或许好一些,通过配置描述符。此处留下一点不确定,希望大家讨论。 118709.html

crazycy 2007-05-20 17:20 发表评论
学生社团系统-学生社团“一站式”运营管理平台-学生社团管理系统-基于SSM的学生社团管理系统-springboot学生社团管理系统.zip-Java学生社团管理系统开发实战-源码 更多学生社团系统: SpringBoot+Vue学生社团“一站式”运营管理平台源码(活动管理+成员考核+经费审批) Java学生社团管理系统开发实战:SSM升级SpringBoot(招报名+场地预约+数据看板) 基于SpringSecurity的社团管理APP(移动端签到+权限分级+消息推送) 企业级社团数字化平台解决方案(SpringBoot+Redis缓存+Elasticsearch活动搜索) 微信小程序社团服务系统开发(活动直播+社团文化墙+成员互动社区) SpringBoot社团核心源码(多角色支持+工作流引擎+API接口开放) AI赋能社团管理:智能匹配兴趣标签+活动热度预测+成员贡献度分析(附代码) 响应式社团管理平台开发(PC/移动端适配+暗黑模式+无障碍访问) 完整学生社团系统源码下载(SpringBoot3+Vue3+MySQL8+Docker部署) 高校垂直领域社团平台:百团大战系统+社团星级评定+跨校活动联盟 适用对象:本代码学习资料适用于计算机、电子信息工程、数学等专业正在做毕设的学生,需要项目实战练习的学习者,也适用于课程设计、期末大作业。 技术栈:前端是vue,后端是springboot,项目代码都经过严格调试,代码没有任何bug! 核心管理:社团注册、成员管理、权限分级 活动运营:活动发布、报名签到、场地预约 资源服务:经费申请、物资管理、文档共享 数据分析:成员活跃度、活动效果评估、社团影响力排名
<think>好的,我现在需要处理用户关于“采样中杂感影响因素分析”的问题。首先,要明确用户所说的“杂感”可能是指采样过程中的噪声或干扰因素。接下来,我需要分析采样过程中可能影响噪声的各种因素,并组织成结构化的回答。 首先,我应该调用网络搜索工具,查找与采样噪声相关的因素。可能的搜索关键词包括“采样噪声影响因素”、“数据采集干扰因素”、“信号采样中的噪声源”等。通过检索相关的技术文档、学术论文或专业论坛内容,收集影响因素的分类和具体例子。 根据搜索结果,常见的噪声源可能包括环境干扰、设备自身噪声、信号源特性、采样率设置、接地问题、电磁兼容性、操作规范等。需要将这些因素分门别类,并详细说明每个因素如何影响采样结果。 接下来,我需要整合这些信息,按照用户的要求生成多个方法或步骤,每个部分之间换行。同时,要避免使用第一人称和步骤词汇,确保回答清晰且具有操作性。例如,可以将影响因素分为环境因素、设备因素、信号源因素、参数设置等类别,每个类别下具体说明。 此外,需要检查是否有必要包含公式或代码。例如,采样定理中的奈奎斯特频率公式($f_s \geq 2f_{max}$)可能与采样率设置相关,如果搜索结果中有相关内容,应该包含进去。代码示例可能涉及滤波器的实现,如果有相关解决方案,也需要用代码块展示。 在完成回答后,必须添加相关问题部分。需要基于原始问题和回答内容,提出三个相关问题,比如关于降低噪声的方法、采样率选择的影响、传感器噪声抑制技术等。确保问题符合用户可能进一步探索的方向。 最后,要严格遵守格式要求,特别是数学公式和代码的格式,以及相关问题部分的标题和编号格式。确保没有使用被禁止的结构,如集中引用或第一人称。</think>根据采样噪声的影响因素分析,主要干扰源可分为环境因素、设备特性、信号源特征和参数配置类: **1.环境电磁干扰** 工业环境中的变频器、电机等设备产生电磁辐射,典干扰强度可达50-100mV。高频干扰通过空间耦合进入信号线,解决方案包括采用屏蔽双绞线(传输阻抗<100Ω/km)和安装EMI滤波器 **2.设备本底噪声** 模数转换器(ADC)的量化噪声计算公式: $$SNR = 6.02N + 1.76\,\text{dB}$$ 其中N为ADC位数。16位ADC理论本底噪声约-98dB,实际受热噪声影响可能增加3-5dB **3.信号源阻抗匹配** 源阻抗与采样电路输入阻抗失配会导致信号衰减,建议输入阻抗至少为源阻抗的10倍。匹配不良时误差计算: $$E_r = \frac{Z_{source}}{Z_{source}+Z_{in}} \times 100\%$$ **4.采样参数设置** 违反奈奎斯特采样定理会产生混叠,最低采样频率应满足: $$f_s \geq 2.56f_{max}$$ 抗混叠滤波器设计示例: ```python from scipy.signal import butter b, a = butter(4, 0.48, 'lowpass') # 4阶巴特沃斯滤波器,截止频率0.48fs ``` **5.接地环路干扰** 多点接地形成地电位差,解决方案包括: - 采用单点接地系统 - 隔离变送器(2500Vrms隔离电压) - 共模扼流圈(100MHz阻抗>1kΩ)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值