经过一个半月的编码,自己开发的分布式通信框架终于有了基本的雏形,采用TCP/IP协议,用Netty框架实现底层通信,序列化方式支持JDK自带的方式、支持Hessian、也支持Protobuf和Thrift,一般Java调Java用Hessian和Jdk序列化比较方便,直接将服务端注册,客户端生成代理即可使用。Protobuf和Thrift是为了应对跨语言调用准备的,可以通过伪代码生成业务依赖(接口、参数、返回值、异常等)。框架初步具备了负载均衡和容错,可以路由到具体的重载方法。目前只支持同步调用,后续将支持回调异步、Future异步和Oneway异步。
之所以要自己开发通信框架主要有两个原因:
1、开源框架都有自己的不足,比如Hessian架构在Http协议之上,效率低不说,不能脱离web容器,同时虽说可以支持跨语言,但没有一个统一的标准来生成各种语言的业务客户端,要手工编写各种业务依赖,同时对复杂参数的序列化支持并不好,自身并不具备负载均衡和容错的能力。Thrift相对比较简单,没有负载均衡和容错机制,没有集群功能。Protobuf本身只是一个序列化框架,仅有远程调用接口,并没有实现。ICE倒是一个不错的东西,但有点庞大,同时不满足下面的要求。
2、和后续的分布式解决方案(分布式数据层、消息中间、集群和业务配置服务、监控系统)无缝集合,使这些底层应用解决一个个业务集群的同时,也能处于大集群的有效监控之中,为后期的自动化升降级做准备。
分享到:
相关推荐
在分布式系统中,分布式通信框架起着至关重要的作用,它们使得不同的计算机节点能够相互通信并协同工作。"0729分布式通信框架-RMI1"的主题主要围绕分布式架构、TCP/IP协议、序列化、HTTP与HTTPS协议以及RMI(Remote ...
分布式通信框架-webservice 分析笔记 本文对分布式通信框架-webservice 进行了深入的分析和讨论,涵盖了 webservice 的定义、特点、协议层、SOAP 协议、WSDL 文件、SEI 接口等方面。 一、webservice 的定义和特点 ...
包括常见的RPC框架、常见的序列化/反序列化方案及选型、分布式服务框架服务的发布引入实现细节、软负载实现、底层通信方案实现、服务注册与发现实现、服务治理常见的功能等。通过对这些知识点的逐步讲解,层层深入,...
接着分析了服务底层如何有效地进行通信,包括通信框架、序列化/反序列化及协议栈等;然后分析了服务如何做到高可靠性及高安全性等重要特性;最后也阐述了从服务化如何向微服务演进。干货满满!
分布式计算框架是当今高性能计算领域的重要技术,它...未来,随着通信设备的进一步发展和更新,通信对抗系统将面临更多的挑战和机遇,其分布式通信框架将继续扮演关键角色,为实现高效、智能的通信对抗提供技术支撑。
Dubbo、gRPC、Thrift等是常见的RPC框架,它们处理服务间的通信协议、序列化和异常处理等问题。 4. **熔断与降级**:在高并发情况下,为了保护系统稳定,需要设置熔断机制。当服务调用频繁失败时,熔断器会暂时切断...
该设计方案提出了一种基于ZeroMQ的SOA分布式通信框架,并设计了一套与之对应的通讯协议,以支持多种编程语言,并在性能测试中表现出了优于其他主流SOA通信系统的效率。 在分布式系统设计中,首先需要考虑的是如何...
Pigeon Documentation User Guide Release Notes Release Notes Comitters 苗向彬,saber.miao ...Licensed under the Apache License, Version 2.0 (the "License"); you may not use this work except in compliance...
分布式服务框架的核心目标之一是实现服务间的通信和协调。这涉及到服务注册与发现,使得服务提供者能够向注册中心注册自己的服务,而服务消费者可以通过查找注册中心获取到服务提供者的地址。此外,负载均衡策略也是...
《毕设20180331冰海作品:基于Java的RPC分布式通信框架——davinci》 在IT行业中,分布式系统已经成为大型互联网应用的基石,而RPC(Remote Procedure Call)框架作为构建分布式系统的重要工具,其作用不可忽视。...
研发部 .NET,Kotlin和C ++的React性分布式通信框架(实验性)。 受JetBrains Rider IDE的启发。结构该框架包含多个库,用于单进程使用和跨进程通信。一生JetBrains Core库提供了优雅的处置,并发性和响应式编程。 ...
分布式服务框架是现代软件开发中的核心组成部分,尤其在大型企业及互联网公司中广泛采用。它是一种将复杂系统拆分成多个独立服务的技术方案,每个服务都能独立部署、扩展和升级,以此来提高系统的可维护性和可扩展性...
6. **RPC框架**:远程过程调用(RPC)是分布式服务间通信的关键,可能涉及RMI、gRPC、Dubbo、Thrift等RPC框架的工作原理和使用。 7. **消息队列**:在分布式系统中,消息队列如RabbitMQ、Kafka、ActiveMQ等用于异步...
包括常见的RPC框架、常见的序列化/反序列化方案及选型、分布式服务框架服务的发布引入实现细节、软负载实现、底层通信方案实现、服务注册与发现实现、服务治理常见的功能等。通过对这些知识点的逐步讲解,层层深入,...
.NET分布式开发框架是一种用于构建可扩展、高可用性和高性能应用程序的技术。它允许开发者将应用程序分解为多个组件,这些组件可以在不同的计算机上独立运行并互相协作,以实现分布式处理。在这个项目实战中,我们...
另一方面,《分布式服务框架原理与实践》聚焦于服务间的通信与协调,这在微服务架构中尤为重要。书中的内容可能涵盖: 1. 服务发现:Eureka、Consul、Zookeeper等服务注册与发现机制。 2. 负载均衡:如 Ribbon、...
1. **分布式系统基础**:首先,理解分布式系统的基本概念至关重要,包括节点、通信协议、一致性模型(如CAP理论)、分区容错性等。分布式服务框架就是构建在这些基础之上。 2. **服务发现与注册**:在分布式环境中...
分布式服务框架是现代互联网应用架构中的重要组成部分,它旨在解决单体应用在高并发、高可用、可扩展性等方面的挑战。本资源提供了“从零开始写分布式服务框架”的最新版源码,对于想要深入理解分布式系统设计和服务...
《分布式服务框架原理与实践(Dubbo,HSF)_李林锋著》这本书深入探讨了分布式服务框架的关键技术和实际应用,主要聚焦于两个知名的开源框架——Dubbo和HSF。这两者都是实现高效率、可扩展的分布式服务的核心工具,尤其...