阿里云ACP企业级互联网架构ACP实验之本地配置EDAS开发环境(上)

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: 阿里云ACP企业级互联网架构ACP实验之本地配置EDAS开发环境

实验概述


企业级分布式应用服务(Enterprise Distributed Application Service, 简称 EDAS)是以阿里巴巴中间件团队多款久经沙场的分布式产品作为核心基础组件,面向企业级云计算市场提供高可用分布式解决方案,是阿里巴巴企业级互联网架构解决方案的核心产品,它涵盖了应用生命周期管理、服务运维管控等众多功能。


本实验主要是指导学员如何在本机上配置并搭建 EDAS 本地开发测试环境。


实验目标


完成此实验后后,学员可以掌握的能力有:


在本地搭建 EDAS 本地开发测试环境;


EDAS 的基本开发流程。


学前建议


在使用 EDAS 产品之前,我们默认您已经掌握基本的编程技巧,包括但不限于熟练使用 JAVA 编程语言;掌握相关的开发工具(Eclipse等),熟悉相关的开发规范(Maven;Spring等)


背景知识


业务背景 在复杂的云环境,应用发布与管理会变得十分复杂。本地开发完成的应用需要逐个部署到服务器,然后登陆每一台服务器终端进行应用的发布和部署;后续可能还会涉及应用的重启,扩容等。服务器的不断增加对于运维人员将是一个极大的挑战。 当集中式应用转变成分布式系统的时候,系统之间的相互可靠调用一直以来都是分布式架构的难题,比如网络通信,序列化协议设计等很多技术细节需要确定。EDAS 提供了一个高性能的 RPC 框架,能够构建高可用的分布式系统,系统地考虑到了各个应用之间的分布式服务发现、服务路由、服务调用以及服务安全等细节。 EDAS 支撑了整个阿里巴巴 99% 以上的大规模应用系统,其中涵盖了包括会员、交易、商品、店铺、物流和评价在内的所有在线核心系统,在稳定性、可靠性等多个维度具有独特的优势。EDAS 历次双十一大促考验,其完善的鉴权体系保证每一次服务调用的安全可靠。 技术背景 EDAS 充分利用阿里云的资源管理和服务体系,引入阿里巴巴中间件整套成熟的分布式产品,全面兼容 Apache Tomcat 的 Java 容器,提供高性能的分布式服务框架以及秒级推送的分布式配置管理服务。此外,EDAS 还创新性地提供了分布式系统链路追踪、容量规划、数据化运营和多款经过阿里电商平台长期考验的高可用稳定性组件,帮助企业级客户轻松构建大型分布式应用服务系统。 EDAS 除了以互联网中间件 PaaS 平台为基础,采用高性能 RPC 框架 HSF 和 Dubbo 作为服务化框架之外,还提供了丰富的二方服务体系:


· 分布式配置管理


集中式系统变成分布式系统后,如何有效地对分布式系统中,每一个机器上的配置信息进行有效的实时管理成了一个难题。EDAS 提供高效的分布式配置管理,能够将分布式系统的配置信息在 EDAS 控制台上集中管理起来,做到一处配置,处处使用。更重要的是,EDAS 允许您在控制台上对配置信息进行修改,在秒级时间内就能够实时通知到所有的机器。


· 分布式任务调度


任务调度服务,允许用户配置任意周期性调度的单机或者分布式任务,并能对任务运行周期进行管理,同时也提供对任务的历史执行记录进行查询。适用于诸如每天凌晨 2 点定时迁移历史数据,每隔 5 分钟进行任务触发,每个月的第一天发送系统月报等任务调度场景。


· 分布式事务


分布式事务(Transaction Controller,简称 TXC),是一款高性能、高可靠、接入简单的分布式事务中间件,用于解决分布式环境下的事务一致性问题。该产品支持 DRDS、RDS、Oracle、MySQL、PostgreSQL、H2 等多种数据源,并可以配合使用 EDAS、Dubbo 及多种私有 RPC 框架,同时还兼容 MQ 消息队列等中间件产品,能够轻松实现分布式数据库事务、多库事务、消息事务、服务链路级事务及其各种组合,具有策略丰富,易用性和性能兼顾等特征。


一、环境准备


1.1 ECS


请点击页面左侧的实验资源 ,在左侧栏中,查看本次实验资源信息。 ECS windows环境 ECS 在弹出的左侧栏中,点击 创建资源 按钮,开始创建实验资源。 资源创建过程需要1-3分钟。完成实验资源的创建后,用户可以通过 实验资源 查看实验中所需的资源信息,例如:阿里云账号等。


1.2 远程连接


远程连接方式:


本实验所使用的资源是安装了windows系统的ECS,可以通过远程连接的方式,根据文档内容在ECS上完成EDAS本地开发环境的搭建。远程连接的方式,根据下面的连接进行操作,链接如下:


https://help.aliyun.com/document_detail/25435.html


https://help.aliyun.com/document_detail/108451.html


远程连接异常:


远程连接的过程中可能出现的常见异常 “出现身份验证错误,要求的函数不受支持”,该异常的解决办法如下:


https://help.aliyun.com/knowledge_detail/71931.html


二、安装JDK并配置环境变量


2.1 安装JDK


从我们提供的实验软件\开发软件目录中找到jdk-8u211-windows-x64.exe,直接安装。

20200705150651386.jpg


2.2 配置环境变量


单击开始菜单,在列表找到 “计算机”,鼠标右键单击,从弹出的列表中找到属性进入

20200705150805563.jpg

新窗口中 点击左侧 “高级系统设置”,然后点击环境变量,进入变量配置页面。

20200705150839865.jpg

新建系统变量名 JAVA_HOME ,变量值如下:


C:\Program Files\Java\jdk1.7.0_79


20200705150916637.jpg

打开环境变量PATH,在变量值最前端增加如下语句: %JAVA_HOME%\bin; 注意:末尾的“;”分号不能省略

20200705150951371.jpg

新建变量名 CLASSPATH ,变量值如下:


.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 注意:前面的“.;”符号不能省略。


20200705151020802.png


2.3 验证


在CMD命令窗口下输入java -version,可以正常显示java版本。


三、安装maven并配置环境变量


3.1 安装Maven


将实验软件\开发软件目录中apache-maven-3.6.1-bin打开,其中的文件apache-maven-3.6.1 复制到本地磁盘C:\work目录(如果没有该文件夹,可以新建一个)。

20200705151212465.jpg

3.2 配置环境变量


按前序步骤打开环境变量


配置系统变量,在系统变量中新建一个变量,变量名为M2_HOME,变量值为Maven的安装目录,如下:


D:\work\apache-maven-3.6.1

接着在系统变量中找到环境变量PATH,在变量值的最前端加上如下语句:

%M2_HOME%\bin; 注意:末尾的“;”分号不能省略。


3.3 验证


在cmd窗口中运行 mvn -v ,可以查看对应maven的版本。


3.4 配置settings文件


为了让maven能更顺利的下载edas的jar相关jar包,建议配置一个edas的私服地址。修改maven的settings.xml(setting.xml文件在~/.m2/settings.xml,或直接使用maven安装包下conf/settings.xml),添加私服地址。


注意:maven的settings配置可以在 Maven 中配置 EDAS 的私服地址中看到更详情的说明。


在<profiles>,新增内容如下(注意profiles可能被注释掉,确保<profiles>和<profile>的格式)


<profiles>
    <profile>
        <id>nexus</id>
        <repositories>
            <repository>
                <id>central</id>
                <url>http://repo1.maven.org/maven2</url>
                <releases>
                    <enabled>true</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
        <pluginRepositories>
            <pluginRepository>
                <id>central</id>
                <url>http://repo1.maven.org/maven2</url>
                <releases>
                    <enabled>true</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </pluginRepository>
        </pluginRepositories>
    </profile>
    <profile>
        <id>edas.oss.repo</id>
        <repositories>
            <repository>
                <id>edas-oss-central</id>
                <name>taobao mirror central</name>
                <url>http://edas-public.oss-cn-hangzhou.aliyuncs.com/repository</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
                <releases>
                    <enabled>true</enabled>
                </releases>
            </repository>
            </repositories>
        <pluginRepositories>
            <pluginRepository>
                <id>edas-oss-plugin-central</id>
                <url>http://edas-public.oss-cn-hangzhou.aliyuncs.com/repository</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
                <releases>
                    <enabled>true</enabled>
                </releases>
            </pluginRepository>
        </pluginRepositories>
    </profile>
</profiles>
<activeProfiles>
    <activeProfile>nexus</activeProfile>
    <activeProfile>edas.oss.repo</activeProfile>
</activeProfiles>

四、安装Ali-Tomcat


4.1 安装步骤


将实验软件\HSF容器目录中taobao-tomcat-7.0.59.tgz解压到本地磁盘(例如:d:\work)下。 镜像中已经解压,可直接复制。


在实验软件\HSF容器目录中找到taobao-hsf.sar软件,将里面的内容移动到Ali-Tomcat 的 deploy 目录。例如:d:\work\tomcat\deploy 底下。


(已解压的不需要重新解压)


详情可以参考:安装 Ali-Tomcat 和 Pandora


五、安装IDE的Ali-Tomcat插件


5.1 Eclipse


将实验软件\开发软件目录中eclipse.zip解压到本地磁盘d:\work目录。由于我们提供的eclipse已经默认安装好tomcat4e,因此,不需要重新安装ali-tomcat的插件。


确认已安装tomcat4e的步骤如下:


打开eclipse,在eclipse菜单栏 ->Window按钮 -> 选择Preferences ->选择Run/Debug->Perspectives,再右侧列表中可以看到AliTomcat Webapp的选项,即为已安装。效果如下:

20200705151515626.png


对于未找到该选项或自行下载的eclipse,需要安装 Tomcat4E插件,如下所示安装步骤进行操作:


点击工具栏菜单> Help 按钮,选择 Install New Software > 依次单击 Add > Local > 选中实验软件\开发软件tomcat4e.zip 包 > OK > Select All > Next 按钮即完成插件安装,重启Eclipse。界面如下:


2020070515154368.png

5.2 IDEA


运行 IntelliJ IDEA。从菜单栏中选择 Run > EditConfiguration。在 Run/Debug Configuration 页面左侧的导航栏中选择 Defaults > Tomcat Server > Local。


下面开始配置 Ali-Tomcat:


在右侧页面单击 Server 页签,然后在 Application Server 区域单击 Configure。


在 Application Server 页面右上角单击 +,然后在 Tomcat Server 对话框中设置 Tomcat Home 和 Tomcat base directory 路径,单击 OK。


将 Tomcat Home 的路径设置为本地解压后的 Ali-Tomcat 路径,Tomcat base directory 可以自动使用该路径,无需再设置。


在 Application Server 区域的下拉菜单中,选择刚刚配置好的Ali-Tomcat。在 VM Options 区域的文本框中,设置 JVM 启动参数指向 Pandora 的路径,如:-Dpandora.location=d:\work\tomcat\deploy\taobao-hsf.sar


说明:d:\work\tomcat\deploy\taobao-hsf.sar 需要替换为在本地安装 Pandora 的实际路径。


最后,单击 Apply 或 OK 完成配置。 详情可以参考:配置 IDEA 开发环境。

相关实践学习
微服务实战-服务注册中心 - Nacos
Nacos是阿里巴巴于2018年7月发布的一个开源项目,它是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos 支持几乎所有主流类型的服务的发现、配置和管理: Kubernetes Service&nbsp; gRPC &amp; Dubbo RPC Service&nbsp; Spring Cloud RESTful Service &nbsp;
目录
相关文章
|
8月前
|
人工智能 运维 安全
配置驱动的动态 Agent 架构网络:实现高效编排、动态更新与智能治理
本文所阐述的配置驱动智能 Agent 架构,其核心价值在于为 Agent 开发领域提供了一套通用的、可落地的标准化范式。
3442 102
|
8月前
|
数据采集 运维 监控
构建企业级Selenium爬虫:基于隧道代理的IP管理架构
构建企业级Selenium爬虫:基于隧道代理的IP管理架构
|
11月前
|
消息中间件 运维 监控
企业级短信验证码服务架构设计与最佳实践
随着移动互联网的发展,短信验证码成为用户身份验证的重要手段。本文从企业级应用角度出发,探讨如何构建高可用、高并发和安全可靠的短信验证码服务。通过多通道冗余、故障自动切换和服务降级保障高可用性;利用异步处理与消息队列应对高并发;借助多层防刷、内容审核和数据加密提升安全性。同时,提供了详细的架构设计、核心模块代码示例以及监控运维方案,帮助读者理解并实现一个完整的短信验证码系统。
561 2
|
11月前
|
存储 SQL 分布式计算
19章构建企业级大数据平台:从架构设计到数据治理的完整链路
开源社区: 贡献者路径:从提交Issue到成为Committer 会议演讲:通过DataWorks Summit提升影响力 标准制定: 白皮书撰写:通过DAMA数据治理框架认证 专利布局:通过架构设计专利构建技术壁垒
|
8月前
|
人工智能 安全 数据可视化
配置驱动的动态Agent架构网络:实现高效编排、动态更新与智能治理
本文系统性地提出并阐述了一种配置驱动的独立运行时Agent架构,旨在解决当前低代码/平台化Agent方案在企业级落地时面临困难,为Agent开发领域提供了一套通用的、可落地的标准化范式。
598 18
配置驱动的动态Agent架构网络:实现高效编排、动态更新与智能治理
|
网络协议 Java 应用服务中间件
框架源码私享笔记(01)Tomcat核心架构功能 | 配置详解
本文首先分享了《活出意义来》一书序言中的感悟,强调成功如同幸福,不是刻意追求就能得到,而是全心投入时的副产品。接着探讨了Tomcat的核心功能与架构解析,包括网络连接器(Connector)和Servlet容器(Container),并介绍了其处理HTTP请求的工作流程。文章还详细解释了Tomcat的server.xml配置文件,涵盖了从顶级容器Server到子组件Connector、Engine、Host、Context等的配置参数及作用,帮助读者理解Tomcat的内部机制和配置方法。
|
10月前
|
人工智能 监控 数据可视化
企业级LLMOps落地指南:蜂巢架构×可视化编排实战
本文将基础的单应用扩展成多应用,并实现工作流组件,包括:多应用模块设计、工作流模块设计、LangGraph实现图应用、前端Vue-Flow组件使用、工作流转LLM工具设计思路、关联工作流登技巧。
465 3
企业级LLMOps落地指南:蜂巢架构×可视化编排实战
|
8月前
|
存储 消息中间件 安全
企业级实时消息推送系统的架构设计,一文即懂!
如果你是技术负责人,该如何搭建一套能解决这些问题的企业级统一消息推送平台?今天我们就从核心挑战出发,拆解一套可落地的统一推送服务架构方案。
1201 0
|
缓存 监控 安全
301重定向进阶指南:从基础配置到企业级架构优化
本文深入探讨网站重定向的高级技巧与企业级实现,涵盖正则表达式重定向、权重无损迁移、分布式系统适配等核心内容。通过解析301/302状态码区别及应用场景,结合Nginx、Apache配置示例,帮助开发者优化大规模网站重定向逻辑。同时,文章介绍CDN边缘重定向、微服务架构下的规则管理以及容灾设计,确保高性能与安全性。最后提供全链路监控方案和经典案例分析,助你规避流量损失风险,提升SEO表现。
574 38
|
10月前
|
消息中间件 人工智能 安全
企业级AI应用需要系统工程支撑,如何通过MCP大模型架构实现全链路实战解构?
本文三桥君深入探讨了MCP大模型架构在企业级AI应用中的全链路实战解构。从事件驱动、统一中台、多端接入、API网关、AI Agent核心引擎等九个核心模块出发,系统阐述了该架构如何实现低耦合高弹性的智能系统构建。AI专家三桥君提出从技术、内容、业务三个维度构建评估体系,为企业级AI应用提供了从架构设计到落地优化的完整解决方案。
488 0