有关于分布式和SOA的理解】的更多相关文章

我的理解分布式和SOA都差不多,类似功能独立分开.举个例子,做一辆车,按照传统模式,先生产车架,然后生产车轮..然后一辆车完成.现在分布式就是生产车架与生产车轮分离,所有的材料 就是最后一次组装的时候一次性完成.各个功能分开生产.SOA也差不多我的理解是差不多.我网上查了一下资料都是似是非懂.勉强做个区分的话就是,SOA更侧重服务,就是宏观的把各个功能独立开来, 类似一个综合的网站,包括了论坛.小说阅读,视频观看.游戏等等模块.而分布式开发则侧重于代码方面,类似MVC吧.…
引子:前几天甲方问我,他用wpf弄个界面,能不能通过其他语言给他传输数据,我由此想到了webservice(此时此刻,我也没有用过webServices),作日翻阅了一些资料,对这块技术有了个大概的了解. 看了webservice.就看到了soap协议.也看到了SOA思想,然后又引出微服务.微服务都引出来了,集群与分布式两兄弟都随风而至.(说来惭愧,以上的技术以及思想,本人回顾之前的开发经历,貌似都没有实实在在的用过),不过没有用过,我也想总结一下,混个脸熟,留个印象,貌似接下来要搞的项目这些都…
一.系统架构演变 1.1. 集中式架构 当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本.此时,用于简化增删改查工作量的数据访问框架(ORM)是影响项目开发的关键. 存在的问题: 代码耦合,开发维护困难无法针对不同模块进行针对性优化无法水平扩展单点容错率低,并发能力差1.2.垂直拆分 当访问量逐渐增大,单一应用无法满足需求,此时为了应对更高的并发和业务需求,我们根据业务功能对系统进行拆分: 优点: 系统拆分实现了流量分担,解决了并发问题可以针对不同模块进行优化方便水平…
传统架构:无论是SE应用还是WEB应用,传统架构都是表现层---业务层---持久层---数据库   1000并发(tomcat单台500并发,tomcat一般做集群的话,节点数量不能太多,5个左右):可以采用多服务器如2台tomcat搭建服务器集群,通过编码实现负载均衡,session共享等问题 100000并发:需要按照模块将系统进行拆分,这样就可以单独为某些业务添加服务器,需要系统之间配合完成整个业务逻辑,这种也称为分布式. 分布式架构:多个子系统相互协作完成业务流程,系统之间需要进行通信(…
感叹一下 不得不说近几年国内软件行业发生了巨大的变化,之前几乎所有应用都围绕桌面展开,而近几年很多让人神魂颠倒的关键词一个接一个的映入眼帘:web2.0.移动应用.云计算.大数据.互联网的浪潮一波接着一波,我们这代人也鉴证了在一次次的革命中科技企业的兴衰成败.貌似说的有些远了,其实我只是想说,互联网的繁荣会产出大规模的数据,必定给分布式技术带来的无比巨大的挑战,所以我们应该理解其基本原理来更好的投身于我们的事业之中~ 进入正题.我是根据wiki上的算法描述来解释的,第一次看wiki的描述感觉摸不…
导读 在上一篇文章<[分布式事务]基于RocketMQ搭建生产级消息集群?>中给大家介绍了基于RocketMQ如何搭建生产级消息集群.因为本系列文章最终的目的是介绍基于RocketMQ的事物消息来解决分布式系统中的数据一致性问题,所以先给大家率先介绍了RocketMQ消息集群的搭建. 原本是想着在这篇文章中直接介绍RocketMQ的事务消息特性,但是在梳理的过程中作者发现对于分布式事务的概念,可能还会有很多同学不理解或者理解得不是很深刻的地方,而跳过这些基本概念直接去学习上层的实践可能并不是一…
SOA架构的概念网上一大堆,笔者也没有发现一个准确.公认的定义.不过笔者在贴吧了发了一个比较好的解释,能够帮助理解: 一个产品有PC端.iOS端.Android端,有个数据查询的功能.传统的设计方法就是在PC端.iOS端.Android端分别编写查询代码实现功能,同样的代码需要写三次,代码冗余,不方便扩展.如果用SOA架构就是把数据查询查询这块做成一个接口,PC端.iOS端.Android端都去调用这个接口,编码简单,方便扩展.…
博客园首页是需要分享干货的地方,今天早上写的<HRMS(人力资源管理系统)-从单机应用到SaaS应用-系统介绍>内容下架了,所以我就按照相关规定,只分享干货,我把之前写完的内容整理发布上来.这次主要分享一下在架构设计过程中涉及的基础知识,主要是涵盖系统架构方法.架构模式及设计模式,便于大家在后续一起探讨HRMS系统的SaaS模式的架构设计. 一.设计模式 大家或多或少的都接触并在实际的开发过程中无形中可能都使用了某种设计模式,可能我们并不知道具体的模式叫什么名字,现在讲设计模式的书.案例分享都…
文章转载自:https://blog.csdn.net/youanyyou/article/details/79406507…
什么是Restful restful是一种架构设计风格,提供了设计原则和约束条件,而不是架构.而满足这些约束条件和原则的应用程序或设计就是 RESTful架构或服务. 主要的设计原则: 资源与URI 统一资源接口(HTTP方法如GET,PUT和POST) 资源的表述 资源的链接 状态的转移 什么是SAOP soap是一种数据交换协议规范,是一种轻量的.简单的.基于XML的协议的规范.SOAP协议和HTTP协议一样,都是底层的通信协议,只是请求包的格式不同而已,SOAP包是XML格式的. soap…
http://blog.vsharing.com/fengjicheng/A1059842.html 阅读提示: 本文探讨SOA概念背后的核心内涵,如何将SOA落地的实务方法. 金蝶中间件作为全球领先的SOA解决方案供应商,拥有中国唯一全球第四通过Java EE 5.0认证的SOA基础平台:中国唯一完整实现TOG-SOA标准模型的中间件解决方案:与北京大学合作,国家“核高基”科技重大专项成果,承担振兴国家基础软件的责任和使命: 中国唯一入选Gartner全球有能力提供SOA服务的十九家软件厂商.…
浅析深究什么是SOA? http://blog.vsharing.com/fengjicheng/A1059842.html 金蝶中间件有限公司总经理 奉继承 博士 阅读提示: 本文探讨SOA概念背后的核心内涵,如何将SOA落地的实务方法. 金蝶中间件作为全球领先的SOA解决方案供应商,拥有中国唯一全球第四通过Java EE 5.0认证的SOA基础平台:中国唯一完整实现TOG-SOA标准模型的中间件解决方案:与北京大学合作,国家“核高基”科技重大专项成果,承担振兴国家基础软件的责任和使命: 中国…
1.1 什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使用SolrCloud来满足这些需求. SolrCloud是基于Solr和Zookeeper的分布式搜索方案,它的主要思想是使用Zookeeper作为集群的配置信息中心. 它有几个特色功能: 1)集中式的配置信息 2)自动容错…
面向服务的体系结构,是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台.操作系统和编程语言.这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互. 特征 SOA的服务级别抽象图,如下图1所示: SOA的服务级别抽象图 图1SOA的服务级别抽象图 基于以上图示.SOA具有以下五个特征: 1.可重用 一个服务创建后能用于多个应用和业务流程. 2.松耦合 服务请求者到服务提供…
from: http://blog.vsharing.com/fengjicheng/MC19136/ 浅析深究什么是SOA? (入选推荐日志,加10币)浅析深究什么是SOA? 金蝶中间件有限公司总经理 奉继承 博士 阅读提示: 本文探讨SOA概念背后的核心内涵,如何将SOA落地的实务方法. 金蝶中间件作为全球领先的SOA解决方案供应商,拥有中国唯一全球第四通过Java EE 5.0认证的SOA基础平台:中国唯一完整实现TOG-SOA标准模型的中间件解决方案:与北京大学合作,国家“核高基”科技重…
一.面向服务的架构SOA 面向服务的架构是一种软件体系结构,应用程序的不同组件通过网络上的通信协议向其他组件提供服务.通信可以是简单的数据传递,也可以是两个或多个服务彼此协调连接.这些独特的服务执行一些小功能,例如验证付款.创建用户帐户或提供社交登录等. 面向服务的架构不太关于如何对应用程序进行模块化构建,更多的是关于如何通过分布式.单独维护和部署的软件组件的集成来组成应用程序.这些通过技术和标准来实现,通过技术和标准使得组件能够更容易地通过网络(尤其是IP网络)进行通信和协作. SOA架构中有…
技术架构演变 单一应用架构 通俗地讲,"单体应用(monolith application)"就是将应用程序的所有功能都打包成一个独立的单元.当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本. 特点 所有的功能集成在一个项目工程中: 所有的功能打一个 war 包部署到服务器: 应用与数据库分开部署: 通过部署应用集群和数据库集群来提高系统的性能. 优点: 开发简单:一个 IDE 就可以快速构建单体应用: 便于共享:单个归档文件包含所有功能,便于在团队之间以及…
大家好,我是冰河~~ 今天,咱们就暂时不聊[精通高并发系列]了,今天插播一下分布式事务,为啥?因为冰河联合猫大人共同创作的分布式事务领域的开山之作--<深入理解分布式事务:原理与实战>一书正式出版了,于2021年10月20日开始在当当预售,当天即登上当当新书榜第一的位置! 划重点:当当10.20~10.24限时5折优惠!!打开当当首页,搜索:分布式事务,找到5折优惠商品链接,点击加购,下单即可. 为了让小伙伴们更好的了解这本书的内容,我们就简单的聊聊书中关于分布式系统架构和分布式事务产生的场景…
本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,上一篇分享文章制作是在windows上使用的nginx,一般正式发布的时候是在linux来配置nginx,我这里测试分享内容只是起引导作用:下面将先给出整个架构的核心节点简介,希望各位多多点赞: . 架构设计图展示 . nginx+iis构建服务集群 . redis存储分布式共享的session及共享session运作流程 . redis主从配置及Sentinel管理多个Redis集群 .…
目前业界流行的分布式消息队列系统(或者可以叫做消息中间件)种类繁多,比如,基于Erlang的RabbitMQ.基于Java的ActiveMQ/Apache Kafka.基于C/C++的ZeroMQ等等,都能进行大批量的消息路由转发.它们的共同特点是,都有一个消息中转路由节点,按照消息队列里面的专业术语,这个角色应该是broker.整个消息系统通过这个broker节点,进行从消息生产者Producer到消费者Consumer的消息路由.当然了,生产者和消费者可以是多对多的关系.消息路由的时候,可以…
目录 1.前言 2.单JVM锁 3.分布式锁 4.总结 =========正文分割线================= 1.前言 锁就像一把钥匙,需要加锁的代码就像一个房间.出现互斥操作的场景:多人同时想进同一个房间争抢这个房间的钥匙(只有一把),一人抢到钥匙,其他人都等待这个人出来归还钥匙,此时大家再次争抢钥匙循环下去. 本篇用java语言分析锁的原理(简单描述)和应用(详细代码),根据锁的作用范围分为:JVM锁和分布式锁.如理解有误之处,还请指出. 2.单JVM锁(进程级别) 程序部署在一台…
分布式锁 分布式锁其实可以理解为:控制分布式系统有序的去对共享资源进行操作,通过互斥来保持一致性. 举个不太恰当的例子:假设共享的资源就是一个房子,里面有各种书,分布式系统就是要进屋看书的人,分布式锁就是保证这个房子只有一个门并且一次只有一个人可以进,而且门只有一把钥匙.然后许多人要去看书,可以,排队,第一个人拿着钥匙把门打开进屋看书并且把门锁上,然后第二个人没有钥匙,那就等着,等第一个出来,然后你在拿着钥匙进去,然后就是以此类推 实现原理 互斥性 保证同一时间只有一个客户端可以拿到锁,也就是可…
随着微处理机技术的发展,人们只需花几百美元就能买到一个CPU芯片,这个芯片每秒钟执行的指令比80年代最大的大型机的处理机每秒钟所执行的指令还多.如果你愿意付出两倍的价钱,将得到同样的CPU,但它却以更高的时钟速率运行.因此,最节约成本的办法通常是在一个系统中使用集中在一起的大量的廉价CPU.所以,倾向于分布式系统的主要原因是它可以潜在地得到比单个的大型集中式系统好得多的性价比.实际上,分布式系统是通过较低廉的价格来实现相似的性能的. 随着互联网的兴起,越来越多的人使用者互联网产品.一般互联网系统…
说明: 我前段时间写了一篇用consul实现分布式锁,感觉理解的也不是很好,直到我看到了这2篇写分布式锁的讨论,真的是很佩服作者严谨的态度, 把这种分布式锁研究的这么透彻,作者这种技术态度真的值得我好好的学习. 建议大家去看看原文(上) (下),我这里是做一个备份. 基于Redis的分布式锁真的安全吗?(上) From: 张铁蕾 DBAplus社群  基于Redis的分布式锁真的安全吗?(上) 网上有关Redis分布式锁的文章可谓多如牛毛了,不信的话你可以拿关键词“Redis 分布式锁”随便到哪…
一.前言 在我们日常工作中,除了Spring和Mybatis外,用到最多无外乎分布式缓存框架——Redis.但是很多工作很多年的朋友对Redis还处于一个最基础的使用和认识.所以我就像把自己对分布式缓存的一些理解和应用整理一个系列,希望可以帮助到大家加深对Redis的理解.本系列的文章思路先从Redis的应用开始.再解析Redis的内部实现原理.最后以经常会问到Redist相关的面试题为结尾. 二.分布式锁的实现要点 为了实现分布式锁,需要确保锁同时满足以下四个条件: 互斥性.在任意时刻,只有一…
在上一篇<java事务(二)——本地事务>中已经提到了事务的类型,并对本地事务做了说明.而分布式事务是跨越多个数据源来对数据来进行访问和更新,在JAVA中是使用JTA(Java Transaction API)来实现分布式的事务管理的.但是在本篇中并不会说明如何使用JTA,而是在不依赖其他框架以及jar包的情况下自己来实现分布式事务,作为对分布式事务的一个理解. 假设现在有两个数据库,可以是在一台机器上也可以是在不同机器上,现在要向其中一个数据库更新用户账户信息,另外一个数据库新增用户的消费信…
目录 写在前面 1.1. 分布式锁 简介 1.1.1. 图解:公平锁和可重入锁 模型 1.1.2. 图解: zookeeper分布式锁的原理 1.1.3. 分布式锁的基本流程 1.1.4. 加锁的实现 1.1.5. 释放锁的实现 1.1.1. 分布式锁的应用场景 写在最后 疯狂创客圈 亿级流量 高并发IM 实战 系列 疯狂创客圈 Java 分布式聊天室[ 亿级流量]实战系列之 -26[ 博客园 总入口 ] 写在前面 ​ 大家好,我是作者尼恩.目前和几个小伙伴一起,组织了一个高并发的实战社群[疯狂…
[IT168 技术]12月25日消息,2010互联网行业技术研讨峰会今日在上海华东理工大学召开.本次峰会以“互联网行业应用最佳实践”为主题,定位于互联网架构设计.应用开发.应用运维管理,同时,峰会邀请了来自盛大.阿里巴巴.五分钟等互联网企业的多位嘉宾演讲,他们将同大家一起探讨数据库技术在互联网领域的深入应用. ▲2010互联网行业技术研讨峰会专题报道 以下是上海五分钟网络科技有限公司金官丁主题为“浅谈伪分布式数据库架构”的演讲全文: ▲上海五分钟网络科技有限公司金官丁 大家好!所谓分布式数据库架…
分布式事务(1)---2PC和3PC理论 分布式事物基本理论:基本遵循CPA理论,采用柔性事物特征,软状态或者最终一致性特点保证分布式事物一致性问题. 分布式事物常见解决方案: 2PC两段提交协议 3PC三段提交协议(弥补两端提交协议缺点) TCC或者GTS(阿里) 消息中间件最终一致性 使用LCN解决分布式事物,理念"LCN并不生产事务,LCN只是本地事务的搬运工". 一.两阶段提交(2PC) 两阶段提交又称2PC,2PC是一个非常经典的强一致.中心化的原子提交协议. 这里所说的中心…
分布式事务(2)---TCC理论 上篇讲过有关2PC和3PC理论知识,博客:分布式事务(1)---2PC和3PC理论 我的理解:2PC.3PC还有TCC都蛮相似的.3PC大致是把2PC的第一阶段拆分成了两个阶段,而TCC我感觉是把2PC的第二阶段拆分成了两个阶段. 一.概念 1.概念 TCC又称补偿事务.其核心思想是:"针对每个操作都要注册一个与其对应的确认和补偿(撤销操作)".它分为三个操作: 1.Try阶段:主要是对业务系统做检测及资源预留. 2.Confirm阶段:确认执行业务操…