使用 Bridge to Kubernetes 简化云端开发
当我们面对一个大型应用程序,它有大量的微服务,并希望完成一些功能开发? 我们面临许多挑战,其中之一将是处理正确的环境,如何进行开发。我们知道,在团队中解决这个问题的最佳方法是将其容器化并在云上托管。这将使开发人员能够处理特定功能并调试容器,而无需在本地创建环境。
微软在2020年9月份发布Visual Studio扩展工具Bridge to Kubernetes:https://devblogs.microsoft.com/visualstudio/bridge-to-kubernetes-ga/ 。Bridge to Kubernetes是一种迭代开发工具,作为Visual Studio和VS Code的扩展提供,旨在简化微服务的开发。开发人员可以在开发工作站上编写、测试和调试微服务代码,同时从 Kubernetes 环境中继承现有配置并消费依赖关系。 微软的Azure云解决方案架构师写了一篇不错的文章:https://sajeetharan.com/2020/10/28/bridge-to-kubernetes/ 。
博客上给出了一张图, 总结了微服务开发的三种场景:本地,远程和混合的方法
开发人员从本地开发方法转向混合方法,这是使用k8s 构建应用程序提供了最佳方式。使用混合方法,它允许开发人员在其开发工作站上编写代码,但也允许他们连接到在远程环境中运行的处理外部依赖依赖服务。因此,它实际上通过连接它们来满足所有这些外部依赖关系。假设您在Azure的 Kubernetes 上运行应用程序,则可以连接本地环境中的所有依赖关系,并拥有整个端到端工作流【可以支持任何k8s集群:https://devblogs.microsoft.com/visualstudio/bridge-to-kubernetes-ga/#support-for-any-kubernetes】。
上图这样的场景,我正在开发一个微服务,需要处理使用不同技术开发的产品和其他微服务部署在 Azure 上的 Kubernetes 集群上。 如果我想连接到多个微服务,我当地的环境中运行一些集成测试,Bridge to Kubernetes将有助于我实现这个要求。它的一些主要功能:
- 加速和简化微服务开发:它基本上消除了手动推送代码、配置和编译外部依赖您的开发环境的需要,这样您就可以专注于代码而不担心其他因素。
- 简单调试代码:它允许您使用添加的k8s配置运行您通常的调试配置文件。它允许开发人员以他们想要的方式调试代码,同时利用本地调试的速度和灵活性。
- 开发和测试端到端:其中一个重要特点是在开发过程中进行集成测试。选择集群中的现有服务,以路由到本地运行该服务实例的开发机器。开发人员可以通过在 Kubernetes 中运行的应用程序的前端发起请求,它将在集群中运行的服务之间路由,直到您指定的重定向服务与在代码中添加断点进行调试的服务相同。
使用方法非常简单,直接从Visual Studio 或者是VSCode 的插件市场上安装Bridge to Kubernetes 插件。VisualStudio安装好插件后可以通过这篇文档走一遍:使用 Bridge to Kubernetes , VS Code安装好插件后也可以通过这篇文档走一遍:Use Bridge to Kubernetes with a sample。 这样的开发体验很棒, 这个体验要比腾讯的方案 Nocalhost:https://nocalhost.dev/
使用 Bridge to Kubernetes 简化云端开发的更多相关文章
- DbUtils是Apache出品一款简化JDBC开发的工具类
DbUtils - DbUtils是Apache出品一款简化JDBC开发的工具类 - 使用DbUtils可以让我们JDBC的开发更加简单 - DbUtils的使用: ...
- 推荐 greenrobot eventbus,简化安卓开发,提高安卓维护性,优化安卓性能
最近在研究移动开发,广泛的阅读有关cordova,apicloud,android资料.发现安卓的开发还是很简单的.再发现greenrobot eventbus开源框架不仅可以简化安卓开发,有可以大幅 ...
- 简化PHP开发的10个工具
本文介绍了可以帮助简化 PHP 开发的11个项目,包括框架,类库,工具,代码. 1. CakePHP Development Framework CakePHP 是一个 PHP 的快速开发框架.它提供 ...
- 12款有助于简化CSS3开发的工具
网站开发者能通过CSS3为网站设计增添很多时尚元素,CSS3 对CSS规范做了很大的改进.现在,本文将介绍12款有助于简化CSS3开发的工具. 1.CSS3 Pie: 允许在IE上使用CSS3绝大部 ...
- [ios2]使用NSOperationQueue简化多线程开发和队列的优先级 【转】
多线程开发是一件需要特别精心的事情,即使是对有多年开发经验的工程师来说. 为了能让初级开发工程师也能使用多线程,同时还要简化复杂性.各种编程工具提供了各自的办法.对于iOS来说,建议在尽可能的情况下避 ...
- 深度剖析:最新云端开发工具如何实现敏捷+DevOps开发落地
相信很多软件开发人员们对今年国内新兴的云端开发工具——华为软件开发云都有耳闻,有些人可能还免费体验过,由于它5人以下的团队是免费使用的,很庆幸本人的这个项目正好5个人,就注册使用了.下面就自己的使用心 ...
- RxSwift 在本质上简化了开发异步程序
RxSwift 是一个组合异步和事件驱动编程的库,通过使用可观察序列和功能样式运算符来,从而允许通过调度程序进行参数化执行. RxSwift 在本质上简化了开发异步程序,允许代码对新数据作出反应,并以 ...
- 专为简化 C 开发而设计的编程语言 Trad
Trad 是一个专为简化 C 开发而设计的编程语言,它: 基于 C: 经编译器编译后能得到干净可读的标准 C 代码,其与 C 的关系就像 TypeScript 与 JavaScript 一样 专为 U ...
- Kotlin的Lambda表达式以及它们怎样简化Android开发(KAD 07)
作者:Antonio Leiva 时间:Jan 5, 2017 原文链接:https://antonioleiva.com/lambdas-kotlin/ 由于Lambda表达式允许更简单的方式建模式 ...
随机推荐
- 【pytest官方文档】解读fixtures - 10. fixture有效性、跨文件共享fixtures
一.fixture有效性 fixture有效性,说白了就是fixture函数只有在它定义的使用范围内,才可以被请求到.比如,在类里面定义了一个fixture, 那么就只能是这个类中的测试函数才可以请求 ...
- Socket 多任务(多进程/线程、I/O多路复用、事件驱动开发框架)
0. 概述 1. 循环版实现多连接 2. threading.Thread 多线程 3. SockerServer 实现多任务 3.1 ForkingMixIn - 多进程(限 linux) 3.2 ...
- k8s cronjob
k8s cronjob 只存在于v1beta1中 可以周期性 定时执行任务, 事例 [root@master01 ~]# kubectl apply -f mycronjob-busybox.yaml ...
- SpringBoot的旅游项目——day01(学习记录附赠源码)
前言 学完SpringBoot的项目,Github地址,欢迎start,一起学习! 第一天 一.技术选型 基于SpringBoot+VUE的前后端分离的仿照马蜂窝的项目. 后端选用的技术为: Spri ...
- 2.1.4- css 样式规则
CSS初识 CSS(Cascading Style Sheets) CSS通常称为CSS样式表或层叠样式表(级联样式表),主要用于设置HTML页面中的文本内容(字体.大小.对齐方式等).图片的外形(宽 ...
- hdu2722 简单最短路,处理好输入就行
题意: 从左上角走到右下角,有的最短时间,每段路径的长度都是2520,每段上都有自己的限制速度,方向. 思路: 直接写就行了,就是个最短路,权值是2520/限制,输入的时候细心点 ...
- CVE-2014-3153分析和利用
本文是结合参考资料对CVE-2014-3153的分析,当然各位看官可以看最后的资料,他们写的比我好. 在看CVE-2014-3153之前我们用参考资料4中例子来熟悉下这类漏洞是如何产生的: /** * ...
- .NET Core 对象( Transient、Scope、Singleton )生命周期详解 (对象创建以及释放)
首先我们在VS2019中创建一个.NET Core的控制台程序,方便演示: 需要安装两个依赖包 Microsoft.Extensions.DependencyInjection 依赖注入对象的具体实现 ...
- JAVA8 lambda表达式权威教程!
Java 8新特性----Stream流 jdk8是Java 语言开发的一个主要版本,它支持函数式编程,新的 JavaScript 引擎,新的日期 API,新的Stream API 等等.今天就重点介 ...
- windows调起git bash执行sh脚本定时统计git仓库代码量
本来挺简单的一个东西硬是弄了两天 心力交瘁 找了网上不少资料 整理一下发给大家 首先是统计每个人的代码量的git命令 在网上找的 我这里做了以下修改 git log --format='%aN'|so ...