1.开发篇(脚手架下载)

本文涉及的产品
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
简介: 本文介绍基于Spring Cloud Alibaba与Kubernetes的微服务开发实践,重点分享项目初始化与本地启动的高效工具。通过阿里云EDAS 3.0及配套插件,开发者可快速搭建应用并自动对接注册中心,显著提升开发体验。后续将深入讲解云端部署与端云互联能力。

前言


近年来,云原生、Kubernetes、微服务、SpringCloud 这些名词在技术圈内不绝于耳,数据显示,使用 SpringCloud 作为微服务的框架,同时选择 Kubernetes 作为应用与基础设施运维底座的团队越来越多,这二者的搭档基本上成为了业界的主流配搭。


为了顺应这一趋势,EDAS 也紧紧围绕这一典型场景,对它的开发、测试、部署、联调、线上运维等诸多环节中的开发者体验进行深度打磨,发布了全新的 3.0 版本。同时,针对如何在采用了 SpringCloud + Kubenetes 架构的应用上使用 EDAS,我们团队提供各个环节的最佳实践,供开发者参考。


本篇进入我们的第一章节:开发。


初始化项目


阿里巴巴从 2018 年开始开源了以原阿里集团中间件为主要能力、全方位对标 SpringCloud Netflix 的全家桶服务,也就是目前的 Spring Cloud Alibaba 项目(https://github.com/alibaba/spring-cloud-alibaba),经过两年多的发展,这个项目受到了越来越多开发者的喜爱,目前的 star 数也达到了 14K。


不过对于开发者而言,选择变多的同时,往往也会伴随一些烦恼,比如:我们到底需要使用什么版本?如何选择依赖的服务?如何解决公共组件的冲突问题?为了解决这些问题,阿里云去年上线了一款项目初始化工具(http://start.aliyun.com) ,如下图:


我们通过这个页面提供了一个生成 Java 应用(不只是 SpringCloud 应用)的白屏化工具,对于一个最简单的 Spring Cloud 应用,只有一项是您必须要选择的依赖,就是 Spring Cloud Alibaba 选项卡下的 Nacos Service Discovery 组件。选中之后,点击按钮组中橙色的 “生成” ,工具会根据所需的依赖自动生成一份可直接打包运行的 pom.xml 文件,同时将所有内容打成一个标准的 Java 项目工程包供您下载。


1.脚手架下载Demo


(http://start.aliyun.com) 这里我建议选择如下配置:



如果你不确定是否勾选正确,也可以用我下面这个附件:📎demo.zip

在本地跑起来


下载完生成的项目工程之后,对于常规 Spring Cloud 应用开发开发流程,下一步是需要去找一个(或本地搭建一个)注册中心(如:Nacos),这个过程往往是需要花费一定时间的。去年年底我们在阿里云的 IDE 插件 Cloud Toolkit 中开发了一个自动拉起/选择注册中心, 并将应用自动适配到所选择的注册中心的功能。界面如下图:


2.安装EDAS插件



可以按照自身以及团队的需求,选择合适的注册中心,如:可以选择"Use Local Registry"(适合个人开发)、或选择"Join Custom Registry"(适合团队开发)、也选择云上的 Nacos 集群(和云上服务联调);选择好之后,按照正常流程再在 IDE 中启动您的应用程序,此时应用就会自动适配到所选择的注册中心中,无需再去搭建一个,完全免维护。这里选择本地注册中心,点击启动

出现以下地址,访问:http://127.0.0.1:8080  (以实际提示为准)

浏览器访问如图,即本地注册中心启动成功


提前做一个预告,关于开发者联调这一块的能力我们将会有专门的章节来讲解 EDAS 中的端云互联的能力,您也可以去阿里云官方文档中搜索《端云互联简介》进行前期的了解。


结语及其后续


在本篇中,我们站在开发者的视角对于项目初始化和本地启动两个开发过程中的基本环节,分别推荐了两个工具,它们的功能并不限于文章中提到的部分,还有更多和更强大的能力等待着我们自己去挖掘,EDAS 团队也将会在开发者体验上持续深耕,如果您有什么建议欢迎在文章下边进行留言分享。


另外,此次分享的内容并没有关于 Kubernetes 有关的话题,因为这个分享是一个系列文章,本篇仅介绍上述两个场景,Kubernetes 等相关内容将在后续分享中逐步介绍,下一篇的内容是:部署到云端,敬请期待。

相关文章
|
Cloud Native Java 数据库
阿里云spring脚手架的优势
阿里云spring脚手架的优势
2034 2
|
消息中间件 IDE Java
阿里云spring脚手架
阿里云spring脚手架
5468 1
|
存储 关系型数据库 MySQL
【MYSQL】金额(金钱)相关的数据存储类型
int 对于游戏币等代币,一般存储为int类型是可行的。 问题在于越界,int类型长度为11位。 在存储人民币相关的金额的时候,则只能存储到9长度的人民币,也就是说,最大只能存储999999999,不到10亿的数值,如果业务增长很快的话,就会给自己留下隐患。
5408 0
|
JSON JavaScript 前端开发
vue如何更好的解决浏览器兼容问题
vue如何更好的解决浏览器兼容问题
599 1
|
存储 Java 测试技术
阿里巴巴java开发手册
这篇文章是关于阿里巴巴Java开发手册的整理,内容包括编程规约、异常日志、单元测试、安全规约、MySQL数据库使用以及工程结构等方面的详细规范和建议,旨在帮助开发者编写更加规范、高效和安全的代码。
|
监控 Java 持续交付
如何搭建漂亮的 SpringBoot 脚手架?
【10月更文挑战第1天】在快速迭代的软件开发环境中,一个高效、美观且易于维护的 SpringBoot 脚手架是项目成功的关键。本文将详细介绍如何搭建一个既实用又漂亮的 SpringBoot 脚手架,帮助你在工作和学习中提升开发效率。
2654 0
|
消息中间件 Cloud Native Java
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
1416 1
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
|
机器学习/深度学习 自然语言处理 监控
金融行业的大数据风控模型:构建安全高效的信用评估体系
金融机构借助大数据风控提升信贷效率,通过数据收集、清洗、特征工程、模型构建与评估来识别风险。关键技术涉及机器学习、深度学习、NLP和实时处理。以下是一个Python风控模型构建的简例,展示了从数据预处理到模型训练、评估的过程,并提及实时监控预警的重要性。该文旨在阐述大数据风控的核心要素和关键技术,并提供基础的代码实现概念。【6月更文挑战第23天】
2529 8
|
缓存 JavaScript 前端开发
start.aliyun.com 正式上线!极速构建 bootstrap 应用
背景 相信很多人都使用过start.spring.io来初始化自己的spring boot工程,这个工具为开发者提供了丰富的可选组件,并且可以选择多种打包方式,大大方便了开发人员的使用。最近,阿里的nacos、sentinel也进入start.spring.io的选项中,进一步的方便开发者使用阿里云的产品。
2136 94