博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SOA、微服务、分布式的概念
阅读量:5171 次
发布时间:2019-06-13

本文共 1452 字,大约阅读时间需要 4 分钟。

---恢复内容开始---

1.分布式:是指将一个项目拆分成多个子项目,采用rpc远程调用技术进行调用。

2.集群:将一个项目相同的功能部署在不同的服务器上,用以解决高并发问题的架构叫做集群。

3rpc:远程过程调用。

远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层RPC使得开发包括网络分布式多程序在内的应用程序更加容易

RPC主流框架

  1. Thrift:thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, and OCaml 这些编程语言间无缝结合的、高效的服务。
  1. Dubbo:Dubbo是一个分布式服务框架,以及SOA治理方案。其功能主要包括:高性能NIO通讯及多协议集成,服务动态寻址与路由,软负载均衡与容错,依赖分析与降级等。 Dubbo是阿里巴巴内部的SOA服务化治理方案的核心框架,Dubbo自2011年开源后,已被许多非阿里系公司使用。
  1. Spring Cloud:Spring Cloud由众多子项目组成,如Spring Cloud Config、Spring Cloud Netflix、Spring Cloud Consul 等,提供了搭建分布式系统及微服务常用的工具,如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性token、全局锁、选主、分布式会话和集群状态等,满足了构建微服务所需的所有解决方案。Spring Cloud基于Spring Boot, 使得开发部署极其简单。
  1. 关于Netty而Netty框架不局限于RPC,更多的是作为一种网络协议的实现框架,比如HTTP,由于RPC需要高效的网络通信,就可能选择以Netty作为基础。除了网络通信,RPC还需要有比较高效的序列化框架,以及一种寻址方式。如果是带会话(状态)的RPC调用,还需要有会话和状态保持的功能。大体上来说,Netty就是提供一种事件驱动的,责任链式(也可以说是流水线)的网络协议实现方式。网络协议包含很多层次,很多部分组成,如传输层协议,编码解码,压缩解压,身份认证,加密解密,请求的处理逻辑,怎么能够更好的复用,扩展,业界通用的方法就是责任链,一个请求应答网络交互通常包含两条链,一条链(Upstream)是从传输层,经过一系列步骤,如身份认证,解密,日志,流控,最后到达业务层,一条链(DownStream)是业务层返回后,又经过一系列步骤,如加密等,又回到传输层。

  4.面向服务架构:SOA “面向服务的架构”:他是一种设计方法,其中包含多个服务, 服务之间通过相互依赖最终提供一系列的功能。一个服务 通常以独立的形式存在与操作系统进程中。各个服务之间 通过网络调用。

5.微服务:将一个项目拆分成N个子服务,并且子服务之间是相互独立的,利用Rpc技术调用,实现数据之间以Http+json的格式进行传输调用的。

 

---恢复内容结束---

转载于:https://www.cnblogs.com/wyf-love-dch/p/11552749.html

你可能感兴趣的文章
dcm4che 的依赖无法下载
查看>>
cygwin主要命令
查看>>
多线程存在哪些风险
查看>>
洛谷P2692 覆盖 题解
查看>>
Linux下清理内存和Cache方法见下文:
查看>>
【AngularJs-模块篇-Form篇】
查看>>
支持向量基
查看>>
单链表 类
查看>>
类的组合 构造函数的用法
查看>>
ORACLE SQL:经典查询练手第三篇
查看>>
ubuntu 包管理
查看>>
java -io字符流FileWrite操作演示
查看>>
vue回到上一个位置
查看>>
UESTC_Infected Land 2015 UESTC Training for Search Algorithm & String<Problem G>
查看>>
.Net 之 RPC 框架之Hprose(远程调用对象)
查看>>
全球外贸客户资源网站总汇
查看>>
杂项-CORS:CORS(跨域资源共享)
查看>>
杨柳目-杨柳科:杨柳科
查看>>
Node.js:JXcore
查看>>
优化CUDA数据传输
查看>>