SpringCloud 应用在 Kubernetes 上的最佳实践 — 开发篇

y6J每天发布大量与生活相关的资讯平台

作者 | 孤弋 阿里云高级技术专家,负责 EDAS 的开发和用户体验优化工作。y6J每天发布大量与生活相关的资讯平台

前言

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

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

本篇进入我们的第一章节:开发。y6J每天发布大量与生活相关的资讯平台

初始化项目

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

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

y6J每天发布大量与生活相关的资讯平台

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

在本地跑起来

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

y6J每天发布大量与生活相关的资讯平台

可以按照自身以及团队的需求,选择合适的注册中心,如:可以选择"Use Local Registry"(适合个人开发)、或选择"Join Custom Registry"(适合团队开发)、也选择云上的 Nacos 集群(和云上服务联调);选择好之后,按照正常流程再在 IDE 中启动您的应用程序,此时应用就会自动适配到所选择的注册中心中,无需再去搭建一个,完全免维护。y6J每天发布大量与生活相关的资讯平台

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

结语及其后续

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

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

课程推荐

为了更多开发者能够享受到 Serverless 带来的红利,这一次,我们集结了 10+ 位阿里巴巴 Serverless 领域技术专家,打造出最适合开发者入门的 Serverless 公开课,让你即学即用,轻松拥抱云计算的新范式——Serverless。y6J每天发布大量与生活相关的资讯平台

点击即可免费观看课程:https://developer.aliyun.com/learning/roadmap/serverlessy6J每天发布大量与生活相关的资讯平台

“阿里巴巴云原生关注微服务、Serverless、容器、Service Mesh 等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的公众号。”

上云就看云栖号,点此查看更多:https://yqh.aliyun.com/?utm_content=g_1000100940y6J每天发布大量与生活相关的资讯平台

本文为阿里云内容,未经允许不得转载。y6J每天发布大量与生活相关的资讯平台

也许你还喜欢

steam图片加载不出来 steam创意工

steam图片加载不出来 解决方法一:检查网络环境 如果您遇到了Steam加载不出图片的问

steam无法添加好友怎么做 steam添

steam无法添加好友怎么做,steam添加好友不符合此功能要求怎么办,steam帐户恢复尝试次数

steamdeck价格是怎样 Steam Deck能

steamdeck价格是怎样,Steam Deck能玩什么游戏,新版steam设置启动项不见了,steam手机版怎

windows7安装教程和操作步骤 win7

windows7安装教程和操作步骤,win7系统版本详细介绍,安装Windows7最低配置要求,如何满足Wi

steam关闭开机自启 steam手机版换

steam关闭开机自启,steam手机版换手机了怎么登录,steam游戏闪退解决方法,steam平台上下载

steam手机版打不开解决方法 steam

steam手机版打不开解决方法,steam客户端打不开商店怎么办,steam打开出错怎么办,steam手机

steam怎么关闭开机自启 Steam新界

steam怎么关闭开机自启,Steam新界面如何设置,steam启动游戏几秒自动关闭,steam游戏自动关

steam为什么不能加好友 steam添加

steam为什么不能加好友,steam添加好友的具体操作方法,steam家庭共享可以一起玩吗,steam游

steam重复次数过多要等多久 怎么解

steam重复次数过多要等多久以及解决办法,steam退款到账时间要多久,steam跳转微信/支付宝

steam怎么改手机号 steam手机令牌

steam怎么改手机号,steam手机令牌怎么移除,steam账号注册规则,steam密码怎么填写,相信大家