电商技术中企业数据总线ESB和注册服务管理的区别
一、概述
1、什么是ESB
就是企业数据总线的意思,他的核心功能就是兼容各种协议接口,可以将数据在各种协议之间进行流转,并且可以针对数据格式进行编排转换. 异构系统,功能繁多,复杂
代表性的项目有:JBOSS ESB,Mule,Camel 以及一些其他的esb项目
2、什么是服务注册
就是将所有的服务接口(很多时候是hession协议的接口),注册到一个中心的分布式服务集群上(你可以考虑成apache的zookeeper服务实现的效果)。各个业务系统直接访问分布式服务查找需要调用的接口位置,进而调用
代表性开源项目有:阿里的dubbo,淘宝的HSF(现在不知道是否继续开源了)
二、双方特点
1、ESB
ESB一般采用集中式转发请求,适合大量异构系统集成,并且压力不大的情况
但集中式转发也是有优势的,比如调用方用http协议,提供方用rmi协议,转发就可以转换协议,对双方都透明。另外,在总线上还可以执行流程引擎,做服务编排,比如A和B两个服务经常一起调,就可以编排成服务C,而不用再单独启一个服务去做。还有,安全,流控,做起来也更方便。
支持groovy类型的脚本语言,在总线上可以给数据格式做转换
2、服务注册管理
采用的是分布式调用,注册中心只记录地址信息,然后直连调用,适合并发及压力比较大的情况。
对于网站应用,大多是垂直业务,直接从数据库拉数据展示。
三、应用场景
1、ESB
esb最常见的场景是,把系统里的集成逻辑,单拉出来,
放到esb容器里来部署,并跟应用系统适配。
这样让应用系统变得只有自己的业务逻辑,简单、轻薄。
劣势:在所有的服务上增加了一个总线作为沟通的渠道。对于较大的并发量会将瓶颈推到ESB总线上。很多时候ESB总线都采用MQ类的消息服务器来异步处理缓解压力
2、服务注册
淘宝和阿里的各个业务系统提供了很多的接口,这个时候需要统一管理提供个各子业务系统使用,让各个子业务系统可以通过注册中心很快找到对应的服务
劣势:服务编排和协议转换还是靠各个业务子系统了
四、综述
1、两类开源项目侧重点不同,ESB侧重任务的编排,性能问题可通过异构的方式来进行规避。无法支持特别大的并发
2、服务注册侧重服务的治理,将各个服务颗粒化,各个子业务系统在程序逻辑上完成业务的编排。但是比较实用较大的并发量,因为dubbo类的只是存放服务地址。有zookeeper类的分布式通讯框架,能保证单点的失败不影响整个系统的业务调用,因为业务接口都是在各个提供服务的子系统中
电商技术中企业数据总线ESB和注册服务管理的区别的更多相关文章
- 企业数据总线(ESB)和注册服务管理(dubbo)的区别
企业数据总线(ESB)和注册服务管理(dubbo)的区别 转载 2015年11月04日 09:05:14 7607 企业数据总线(ESB)和注册服务管理(dubbo)的区别 2015-03-09 0 ...
- 电商系统中的商品模型的分析与设计—续
前言 在<电商系统中的商品模型的分析与设计>中,对电商系统商品模型有一个粗浅的描述,后来有博友对货品和商品的区别以及属性有一些疑问.我也对此做一些研究,再次简单的对商品模型做一个介 ...
- 转)SSO单点登录在互联网电商应用中的解决方案(基于CAS的改造)
电商平台中无论是前端还是后端会存在大量的业务应用,在整个交易的过程中请求是在各个业务应用中流转的,对于用户来讲只需要登录一次就可以访问所有的业务,这就是单点登录SSO. 单点登录开源有很多的解决方案, ...
- solr在电商平台中的使用示例简析
来源:http://blog.csdn.net/yangbutao/article/details/9450463 在电商平台中搜索是非常重要的功能,主要包括有搜索词类目导航.自动提示和搜索排序功能 ...
- Reminders在电商推荐中的价值
原论文在UMAP'16.文章并没有太高深的模型,比较接地气:但其观点与结论很独到,并且在工业界具有很强的实际操作价值. 针对推荐系统的研究大多关注在挖掘用户并不知道但是却与其兴趣相关的物品.不过每个推 ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(十六)——dapr+sentinel中间件实现服务保护
dapr目前更新到了1.2版本,在之前4月份的时候来自阿里的开发工程师发起了一个dapr集成Alibaba Sentinel的提案,很快被社区加入到了1.2的里程碑中并且在1.2 release 相关 ...
- Hybris电商方案介绍(企业全渠道) B2B B2C O2O建设
1). 什么是Hybris: hybris software成立于1997年,2013年与SAP整合,成为SAP旗下的一份子,提供全渠道客户互动与商务解决方案,该解决方案能够为各机构提供客户的实时背景 ...
- 电商系统中SPU、SKU的区别
SPU = Standard Product Unit(标准产品单位) SPU是商品信息聚合的最小单位,是一组可复用.易检索的标准化信息的集合,该集合描述了一个产品的特性.SPU多见于后台商品的管理. ...
- 电商项目中使用Redis实现秒杀功能
参与过抢购活动就知道,很明显的一点是商即便商品实际没有了也是可以下单成功的,但是在支付的时候会提示你商品没有了. 实现原理:list双向链表 使用redis队列,因为pop操作是原子的,即使有很多用户 ...
随机推荐
- web前端篇:JavaScript基础篇(易懂小白上手快)-1
目录 详细内容: 0.JavaScript的引入 1.第一个JavaScript 2.变量 3.变量的类型 4.数组 5.条件语句 6.三元运算符 7.循环 8.函数 9.对象(object): 10 ...
- LVS 负载均衡器总结
下面部分原理部分,是从网上摘录,源网址已经无从获取,我将其中一小部分模糊的说明加入了一些自己的理解,仅最大可能让全文容易阅读,也方便自己以后参考,若你是大牛希望能给我一些宝贵的建议,将理解有误的地方加 ...
- radio与img对齐 (CSS3)
实现方式: html: <div class="pay-four"> <div class="pay-four-border"> < ...
- python之文件路径截取 & endswith()
文件路径截取: >>> import os >>> path = '/etc/singfor/passwd/sunny/test.log' >>> ...
- idea | 设置支持java8的lambda表达式
修改配置: setting: project structure:
- [题解](次短路)luogu_P2865路障(未)
好像是个不需要vis数组的次短路,跑到收敛,然而给我脑袋弄炸了......到现在还没懂.......究竟次短路应该怎么求a...... 抄题解: #include<bits/stdc++.h&g ...
- monxin cms 任意文件删除漏洞
\program\diypage\receive\edit.php首先看到一个unlink($path);本来应该先看sql语句的,但知道是任意文件删除先跳过删除语句,看看$path怎么传入的倒推上去 ...
- Day2课后作业:sed替换程序
#!/usr/bin/env python #_*_conding:utf-8_*_ import sys,os old_file = sys.argv[1] new_file = sys.argv[ ...
- Codeforces 1119D(贡献计算)
题目传送 排序看一看. 关键点在于发现性质: 算一个点的贡献时: 1.与后一个有重叠.\[当 a[i] + r >= a[i + 1] + l, 即 r - l >= a[i + 1] - ...
- centOS+uwsgi+nginx 部署flask项目,问题记录
用flask做的项目想要部署到centOS系统上,填了一些坑,终于成功了,记录一下遇到的问题: 此次部署主要是按照这个博客进行的 https://www.cnblogs.com/Ray-liang/p ...