常用的分布式框架

分布式框架的概念

  分布式应用程序就是指应用程序分布在不同计算机上,通过网络来共同完成一项任务,通常为服务器/客户端模式。把应用程序分布在不同计算机上的目的是:

  1. 分散服务器的压力  在一些大型的系统中会使用分布式框架将模块分布到不同的服务器上,从而避免服务器压力过大导致系统瘫痪的问题。这些模块可以纵向和横向的拆分。 纵向:按层次拆分(层架构,其中的一些层分布到不同的服务器上)。 横向:按功能拆分
  2. 提供服务,功能重用 比如说一个系统中的三个模块都需要用到报表功能,那么可以把白标功能做成单独的服务,让三个模块直接使用这个服务来获取数据,所有计算都在一处进行。
常用的分布式框架
  1. 用于监控、协调整个系统的分布式协调框架:Zookeeper(zookeeper的集群机制采用的是半数存活机制,也就是整个集群节点中有半数以上的节点存活,那么整个集群环境可用)
  2. 分布式文件系统:HDFS(hadoop的核心组件),它可以对海量的数据进行分布式的处理。
  3. 分布式NoSQL:Redis。
  4. 消息队列:Kafka、RabbitMQ、ActiveMQ。利用消息队列主要目的是解耦、异步、削峰
  5. 分布式服务框架:Dubbo,Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)
  6. 分布式计算框架:Hadoop,可以将需要长时间计算的任务炒粉成多个任务并进行处理,从而提高计算效率

转载于:https://my.oschina.net/u/4116634/blog/3064952

  • 4
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述 分布式架构体系描述
搭建一个Java分布式框架需要考虑以下几个步骤: 1.确定架构:根据应用场景和需求选择适合的架构,如客户端-服务器模型、对等网络模型、集群模型等。 2.选择通信协议:根据架构设计通信协议,需要定义数据格式、数据传输方式、传输协议等。 3.实现分布式算法:根据应用场景和需求实现分布式算法,如分布式锁、分布式事务等。 4.选择合适的技术和框架:选择合适的技术和框架可以简化开发和维护工作。常用Java分布式框架有Dubbo、Spring Cloud、Apache Hadoop等。 5.搭建环境和部署:搭建分布式环境,部署应用程序。如果需要使用集群模型,可以使用负载均衡器(如Nginx、HaProxy)和分布式存储(如HDFS)等工具进行部署。 6.测试和优化:进行全面的测试和优化,保证程序的正确性和性能。 下面是一个简单的分布式框架的示例代码: ```java // 定义通信协议 public interface DistributedProtocol { String call(String data); } // 实现分布式算法 public class DistributedAlgorithm { public void lock() { // 分布式锁算法实现 } } // 使用Dubbo框架实现分布式服务 @Service public class DistributedService implements DistributedProtocol { @Override public String call(String data) { // 服务实现 } } // 客户端调用 public class DistributedClient { @Reference private DistributedProtocol protocol; public void call(String data) { protocol.call(data); } } ``` 以上是一个简单的分布式框架的示例代码,实现了分布式服务的定义和实现,以及分布式算法的调用。具体实现需要根据应用场景和需求进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值