`

202. 阿里Pandora Boot

阅读更多
 

 

【视频&交流平台】

àà悟空学院:https://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringBoot视频:http://t.cn/A6ZagYTi

Spring Cloud视频:http://t.cn/A6ZagxSR

SpringBoot Shiro视频:http://t.cn/A6Zag7IV

SpringBoot交流平台:https://t.cn/R3QDhU0

SpringData和JPA视频:http://t.cn/A6Zad1OH

SpringSecurity5.0视频:http://t.cn/A6ZadMBe

Sharding-JDBC分库分表实战http://t.cn/A6ZarrqS

分布式事务解决方案「手写代码」:http://t.cn/A6ZaBnIr

 

前言

阿里的Pandora Boot的核心是Pandora,因此在介绍Pandora Boot之前需要先介绍Pandora。

在阿里集体内部,几乎所有的应用都用到了各式各样的中间件,比如HSF、TDDL、Diamond等等。本身中间件之间可能就有版本依赖的问题,比如你的应用HSF和Diamond分别依赖了同名jar包的不同版本,maven只会引入其中一个版本。同样的中间件和应用之间也存在同样的Jar包依赖的问题,出于要解决这些依赖冲突的问题,阿里就开发了Pandora。

 

Pandora 概述

Pandora,中文名潘多拉,简单的来说就是一个类隔离容器。对外以taobao-hsf.sar这样的sar包的形式对外呈现。它要解决的问题就是依赖冲突问题,包括单不仅以下几点:

(1) 二方包、三方包冲突

由于版本不一致可能导致应用起不来。

(2)冲突排查浪费大量时间

应用起不来的时候可能只是应用开发自己折腾半天在排包,但如果是二方包冲突,那么中间件团队可能就要花大量时间在答疑上面,和应用开发一起折腾了。

(3)应用难以保持稳定

折腾半天应用终于跑起来了,但是更可怕的就是现在能跑,到了某个点某个场景可能就出bug了。

(4)中间件升级困难

如果要实时升级中间件到推荐版本,但是发现并没有那么容易,应用中引入了十个八个中间件,隔三差五其中一个中间件就有小版本更新,每天盯着中间件的更新情况,那还有时间关心业务的开发了。

 

Pandora 的价值在于让上面的问题都不是问题,具体都实现了什么能力呢?

(1)实现类隔离,提供稳定的运行环境

Pandora实现了应用与中间件之间隔离、中间件与中间件之间隔离,保证了类的正确加载,而不会让依赖关系与依赖加载出现不一一对应的情况。

(2)中间件平滑升级

由于应用服务器会优先加载Pandora的类,因此只要升级Pandora中的插件即可,无需对应用中的pom.xml进行修改。只需要在aone上面提交一个“HSF变更”即可。

(3)中间件统一管理

Pandora会统一管理中间的启动、初始化以及资源回收等一系列操作。

 

Pandora Boot

PandoraBoot是在Pandora的基础之上,发展处的更轻量使用集团中间件的方式;它基于Pandora和Fat Jar基础,可以可以在IDE里启动Pandora环境,开发调试等效率大大提高。也就是PandoraBoot是Pandora与Spring Boot结合的产物,可以更方便的享受Spring Boot社区带来的便利。

 

PandoraBoot与SpringBoot的联系和区别

两者联系:

(1)PandoraBoot是运行中在SpringBoot上的,完全兼容。对PandoraBoot来说SpringBoot就像是一个依赖或者简单的Main函数应用。

两者区别:

(1)Spring Boot 通过 Maven 来管理依赖,是平板化的,最前面提到的二方包、三方包依赖问题,SpringBoot解决不了。

(2)Pandora Boot很好的管理了中间件应用,用户可以快速的引入各类中间件,平滑的保持中间件升级。这两者说到底也就是集成了 Pandora 的类隔离技术。

(3)Pandora Boot 目前已经很好的集成了 autoconfig,外部也和 AONE2、PSP 等系统进行打通,开发起来更加的方便。

 

现在的学习资料和视频大多都是1.4、1.5的,2.0比较少,对于学习有影响嘛?

 

11.0版本到2.0版本的跨越,主要是新特性的增加,旧的特性还是一样的,学习完1.0版本升级到2.0版本是很容易的。

2)阿里现在有些项目还是使用1.4.71.5.8版本的,对于实际项目还是稳定为主,而不是追求最新的。

       当然如果你可以,最新版本的学习当然就是最好的!骚年,加油,当前Spring Boot最新的版本是2.0.2了,1代的话是1.5.13版本。

 

 

à悟空学院:https://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringBoot视频:http://t.cn/A6ZagYTi

Spring Cloud视频:http://t.cn/A6ZagxSR

SpringBoot Shiro视频:http://t.cn/A6Zag7IV

SpringBoot交流平台:https://t.cn/R3QDhU0

SpringData和JPA视频:http://t.cn/A6Zad1OH

SpringSecurity5.0视频:http://t.cn/A6ZadMBe

Sharding-JDBC分库分表实战http://t.cn/A6ZarrqS

分布式事务解决方案「手写代码」:http://t.cn/A6ZaBnIr

 

 

下雨天,适合学「Spring Boot」

 

微信公众号「SpringBoot最近更新:

 

Java8新特性:方法引用
209. SpringBoot quartz:sqlserver启动只有 DECLARE CURSOR 才允许使用...
风口之上,我是那头猪嘛?
Java8新特性:Lambda表达式: 摸摸里面
Java8新特性:Lambda表达式:过关斩将:使用场景
Java8新特性:Lambda表达式:小试牛刀
下雨天,适合学「Spring Boot」
Java8新特性:接口的默认方法
208. Spring Boot Swagger2:排序 – 漂游记
207. Spring Boot Swagger2:极简方式
我读的书很多,但都没有你好看【一禅录】
206. Spring Boot 2.0 Swagger2:使用
205. Spring Boot 2.0 Swagger2:初识Swagger
当要离开的时候,我却动情了
205. jetcache:你需要知道的小技巧
204. jetcache:在Spring Boot中怎么玩?

 搜索springboot或者扫描以下二维码即可关注:

 

 

分享到:
评论

相关推荐

    Python-魔改Pandora源码,GitHUB上的Pandora

    魔改的pandora源码: 1.增加了Windows下的启动脚本。引好依赖,可以使用脚本启动。 2.启动pandora 命令模式启动,需要过Login页面才能使用,不能直接使用。 3.pandora 命令模式下,需要在‘pandora-master\src\...

    Pandora(潘多拉)-淘宝隔离容器.pdf

    Pandora(潘多拉)是淘宝开发的一款隔离容器,其设计目的是为了在淘宝的复杂技术环境中解决一系列软件包管理和运行时隔离的问题。这个隔离容器的出现,主要针对的是二方包(内部自研的软件包)的管理和升级挑战。 0...

    2017.3最新PandoraBox aria2和luci安装包

    2017.3最新PandoraBox 16.10 aria2和luci安装包,适用于mt7620a 小米mini路由器。该固件下载地址http://downloads.pandorabox.com.cn/pandorabox-16-10-stable/targets/ralink/mt7621/

    PandoraBox-ralink-mt7620-xiaomi-mini-squashfs-sysupgrade-r1696-20151122.zip

    标题中的"PandoraBox-ralink-mt7620-xiaomi-mini-squashfs-sysupgrade-r1696-20151122.zip"揭示了这是一款针对PandoraBox设备的固件更新压缩包,特别为小米路由器Mini设计。这个固件基于Ralink mt7620芯片组,并且...

    小米mini路由器PandoraBox固件PandoraBox-ralink-mt7620-xiaomi-mini-squashfs-sysupgrade-r1

    小米mini路由器潘多拉固件r1696/r1062/r1024/r985/r512.每个版本我都试过,各有各的特色。其中r1696是最新的版本,也是最难找的一个版本.PandoraBox-ralink-mt7620-xiaomi-mini-squashfs-sysupgrade-r1696-20151122

    PandoraBox-ralink-mt7621-R9.9.12.bin

    潘多拉R9.9.12固件 适用7621 亲测K2P和新三V1.1可用 PandoraBox-ralink-mt7621-R9.9.12.bin

    jp.sblo.pandora.jota_89.apk

    一款很好的文本编辑软件,支持编程语言语法高亮,包括c++、java、yaml、python等常用语言。

    浏览器端使用的Pandora 大数据客户端打点SDK.zip

    浏览器端使用的Pandora 大数据客户端打点SDKpandora-js-sdk浏览器端使用的Pandora 大数据客户端打点SDK安装将 src/pandora.js 复制到你的项目中,使用 require("..../pandora") 引入到你的项目中。API 文档...

    PandoraBox-ralink-mt7620-y1s-squashfs-sysupgrade-r1696-20151122.bin

    PandoraBox-ralink-mt7620-y1s-squashfs-sysupgrade-r1696-20151122.bin

    u-boot-pandorabox-hg255d-20150113.bin

    u-boot-pandorabox-hg255d-20150113.bin

    PandoraBox-ralink-mt7620-y1-r1216.bin

    版本号PandoraBox R2 14.09 / LuCI 0.12 (0.12+git-4d0a20b)

    Android代码-Pandora

    Pandora Pandora 是一个 Android 工具类的集合,包含两个版本: basic 版本,只会包含非常非常基础的 Utils ,比如全局提供 Application 能力的类; full 版本,会包含各种 Utils ,涉及到 Android 开发的方方面面;...

    taobao-hsf.sar

    HSF(High Speed Service Framework,高速服务框架)是阿里巴巴开源的一款高性能、轻量级的服务治理框架,主要用于构建分布式服务系统。它为开发者提供了简单易用的API,使得在Java环境中开发、发布、调用分布式服务...

    如何使用PandoraBox无线中继

    PandoraBox是一款具备此功能的设备,它可以作为无线客户端(STA)连接到其他无线接入点(AP),同时自身也能作为一个新的接入点(AP)提供无线服务。以下是如何使用PandoraBox进行无线万能中继的详细步骤: 1. **...

    Pandora_Dream.rar_pandora_pandoradream

    这个项目,由"Pandora_Dream.rar"压缩包封装,包含了一个名为"pdl"的子文件,可能是程序的主要执行文件或源代码。 在本文中,我们将深入探讨这款应用背后的IT知识,以及如何通过它来学习微博API的使用。 首先,...

    阿里巴巴微服务化架构演进.pdf

    在微服务化架构中,阿里巴巴使用了多种技术栈,包括 Dubbo、HSF、Pandora Boot 等。 Dubbo 是一个高性能的 RPC 框架,HSF 是一个基于 Dubbo 的服务化框架,Pandora Boot 是一个基于 Spring Boot 的微服务化框架。 ...

    (源码)基于Spring Boot和MyBatis Plus的Pandora商城系统.zip

    # 基于Spring Boot和MyBatis Plus的Pandora商城系统 ## 项目简介 Pandora商城系统是一个基于当前流行技术组合的前后端分离商城系统。它采用了Spring Boot 2、MyBatis Plus、Spring Security、JWT、Redis、Elastic...

    Pandorabox最稳定版固件

    Pandorabox最稳定版固件

    PandoraBox-ralink-R9.9.8-mt7621-newifi-3-squashfs-sysupgrade-鸡血驱动.bin

    新3路由PandoraBox 19.09版某大神编译版本,带鸡血驱动,2.4G WIFI信号轻松跑满150M,下载5~7M/S

    展讯NPI工具包NPI_TOOLS.V18.03

    Pandora R21.0.0001.rar RESEARCHDOWNLOAD R21.0.0001.rar SecurityServer R5.0.0001.rar SP BBAuto Tester R21.0.0001.rar SPRD NPI USBDriver 1.4.rar UPGRADEDOWNLOAD R21.0.0001.rar WritelMEI R21.0.0001.rar

Global site tag (gtag.js) - Google Analytics