安下载(俺下载):打造放心的绿色安全下载站! 安下载首页|软件分类|最近更新

所在位置: 首页  >  电脑软件  >  编程开发  >  编程工具 > SOFABolt(网络通信框架) v1.5.7 官方版
SOFABolt(网络通信框架)

SOFABolt(网络通信框架)

 v1.5.7 官方版
  • 软件大小:0.66 MB
  • 更新日期:2021-02-19 09:11
  • 软件语言:简体中文
  • 软件类别:编程工具
  • 软件授权:免费版
  • 软件官网:
  • 适用平台:WinXP, Win7, Win8, Win10, WinAll
  • 软件厂商:

6
软件评分

本地下载文件大小:0.66 MB

软件介绍 人气软件 下载地址

为您推荐: 编程开发

  SOFABolt是一款网络通信框架,当你需要为应用程序配置远程通信服务的时候就可以使用这款框架,通过这款软件就可以配置多款应用程序远程服务调用具体方案,让应用程序之前的数据可以同步,从而在监控平台获取多个终端的数据,对于需要远程监控数据、监控流量变化、监控平台负载等场景很有帮助,软件基于Netty开发,您可以在SOFABoot中使用XML、在SOFABoot中使用注释、在SOFABoot中使用动态API,也可以结合SOFARPC使用,为开发者提供更便捷的应用通信服务配置方案,如果您需要这款软件就可以下载体验!

SOFABolt(网络通信框架)

软件功能

  SOFABolt的基础功能包括:

  1、基础通信功能 ( remoting-core )

  基于 Netty 高效的网络 IO 与线程模型运用

  连接管理 (无锁建连,定时断链,自动重连)

  基础通信模型 ( oneway,sync,future,callback )

  超时控制

  批量解包与批量提交处理器

  心跳与 IDLE 事件处理

  2、协议框架 ( pro tocol-skeleton )

  命令与命令处理器

  编解码处理器

  心跳触发器

  3、私有协议定制实现 - RPC 通信协议 ( prot ocol-implementation )

  RPC 通信协议的设计

  灵活的反序列化时机控制

  请求处理超时 FailFast 机制

  用户请求处理器 ( UserProcessor )

  双工通信

软件特色

  SOFABolt 是蚂蚁金融服务集团开发的一套基于 Netty 实现的网络通信框架。

  * 为了让 Java 程序员能将更多的精力放在基于网络通信的业务逻辑实现上,而不是过多的纠结于网络底层 NIO 的实现以及处理难以调试的网络问题,Netty 应运而生。

  * 为了让中间件开发者能将更多的精力放在产品功能特性实现上,而不是重复地一遍遍制造通信框架的轮子,SOFABolt 应运而生。

  Bolt 名字取自迪士尼动画-闪电狗,是一个基于 Netty 最佳实践的轻量、易用、高性能、易扩展的通信框架。

  这些年我们在微服务与消息中间件在网络通信上解决过很多问题,积累了很多经验,并持续的进行着优化和完善,我们希望能把总结出的解决方案沉淀到 SOFABolt 这个基础组件里,让更多的使用网络通信的场景能够统一受益。

  目前该产品已经运用在了蚂蚁中间件的微服务(SOFARPC)、消息中心、分布式事务、分布式开关、以及配置中心等众多产品上。

官方教程

  开始使用SOFABoot

  建立专案

  1、准备环境:SOFABoot需要JDK7或JDK8,并且需要使用Apache Maven 2.2.5或更高版本进行编译。

  2、生成SOFABoot项目:SOFABoot基于Spring Boot。因此,您可以使用Spring Boot的项目生成工具来生成标准的Spring Boot项目。

  3、添加SOFABoot依赖关系:生成的标准Spring Boot项目直接使用Spring父依赖关系,应将其更改为SOFABoot提供的父依赖关系。父级依赖项提供并管理SOFABoot提供的各种启动程序。

SOFABolt(网络通信框架)

  将以上内容替换为以下内容:

SOFABolt(网络通信框架)

  1、Configure application.properties: application.properties是SOFABoot项目中的配置文件。在这里,您需要配置应用程序名称。

  spring.application.name=AppName

  2、介绍RPC启动器:

SOFABolt(网络通信框架)

  声明SOFABoot的xsd文件:

  在要使用的XML配置文件中,将头文件xsd文件的声明配置为以下内容。这样可以使用SOFABoot定义的XML元素进行开发。

SOFABolt(网络通信框架)

  定义服务接口和实施

SOFABolt(网络通信框架)

  在服务器上发布服务

  在xml文件中配置以下内容。刷新Spring上下文后,SOFABoot在服务器上注册服务实现,通过螺栓协议与客户端通信,并将诸如地址之类的元数据发布到注册表中心(默认情况下,本地文件用作注册表中心)。

SOFABolt(网络通信框架)

  客户咨询服务

  在xml文件中配置以下内容。刷新Spring上下文后,SOFABoot会生成RPC代理Bean personReferenceBolt。这使您可以直接在代码中使用Bean进行远程调用。

SOFABolt(网络通信框架)

  运行项目

  SpringBoot的启动类编码如下。上面的xml文件是使用ImportResource在此处加载的。

SOFABolt(网络通信框架)

  输出结果如下:

  sync

  通过此步骤,您已经完成了服务发布和参考。

  在非Spring环境中使用API

  SOFARPC

  服务发布

  服务发布的过程涉及三个类RegistryConfig,ServerConfig,ProviderConfig。

  1、注册表配置

SOFABolt(网络通信框架)

  1、

  RegistryConfig代表注册中心。如上所述,服务注册中心的地址和端口是127.0.0.1:2181,协议是Zookeeper。

  i.服务器配置 java ServerConfig serverConfig = new ServerConfig() .setPort(8803) .setProtocol("bolt");ServerConfig表示运行服务的容器。上面声明了使用8803端口和bolt协议的服务器。

  1、ProviderConfig

SOFABolt(网络通信框架)

  ProviderConfig代表服务发布。上面声明了服务的接口,实现了运行该服务的服务器,并最终通过该export方法发布了该服务。

  服务参考

  服务参考涉及两个类,即RegistryConfig和ConsumerConfig。

SOFABolt(网络通信框架)

  ConsumerConfig代表服务参考。上面声明了所引用服务接口的接口和服务注册中心,最后通过该refer方法引用该服务,以获取该服务的远程调用的代理。

  在SOFABoot中使用XML

  XML模式

  该办法发布和XML模式的参考服务如下。sofa:service代表发布服务,并sofa:reference代表引用服务。sofa:binding指示用于服务发布或参考的协议。

SOFABolt(网络通信框架)

  服务也可以通过多种协议发布,如下所示:

SOFABolt(网络通信框架)

  服务参考

SOFABolt(网络通信框架)

  服务还可以通过其他协议引用:

SOFABolt(网络通信框架)

  在SOFABoot中使用注释

  使用注释进行服务发布/参考

  除了常规的xml模式外,还支持在SOFABoot环境中发布和引用带有注释的服务。类似XML,我们提供 @SofaService和@SofaReference以及@SofaServiceBinding和@SofaReferenceBinding注释为多协议。

  服务发布

  要发布RPC服务,只需要@SofaService在Bean上添加注释即可指定接口和协议类型。

SOFABolt(网络通信框架)

  服务参考

  对于需要引用远程服务的bean,只需在属性或方法上添加Reference批注。这支持bolt,dubbo,rest协议。

SOFABolt(网络通信框架)

  在SOFABoot中使用动态API

  使用API

  SOFABoot提供了一组用于RPC服务发布和参考的编程API。直接在代码中发布和引用RPC服务很方便。与Spring的ApplicationContextAware相似,要使用编程API,首先需要实现ClientFactoryAware接口以获取编程组件API:

SOFABolt(网络通信框架)

  以DirectService为例,了解如何使用clientFactory通过编程API发布RPC服务:

SOFABolt(网络通信框架)

  在上面的代码中:

  1、首先,ServiceClient通过获得对象clientFactory。

  2、然后,构造ServiceParam包含发布服务所需的参数的对象,并使用该setInstance方法将要发布的对象设置为RPC服务,setInterfaceType以设置服务的接口。

  3、最后,调用的服务方法ServiceClient来发布RPC服务。

  通过编程API引用RPC服务的代码类似:

SOFABolt(网络通信框架)

  同样,引用一个RPC服务,代码只需要得到ReferenceClient来自ClientFactory然后构造一个ReferenceParam类似发布服务,下一组了服务接口,最后调用ReferenceClient的参考方法。

人气软件