当前位置: 首页 > news >正文

佛山哪里做网站搜索引擎营销的优势

佛山哪里做网站,搜索引擎营销的优势,常熟做网站哪家好,iis做网站本文介绍了如何基于 Go 语言实现 Kubernetes Sidecar 模式,并通过实际示例演示创建 Golang 实现的微服务服务、Docker 容器化以及在 Kubernetes 上的部署和管理。原文: Sidecar Pattern with Kubernetes and Go[1] 在这篇文章中,我们会介绍 Sidecar 模式…

本文介绍了如何基于 Go 语言实现 Kubernetes Sidecar 模式,并通过实际示例演示创建 Golang 实现的微服务服务、Docker 容器化以及在 Kubernetes 上的部署和管理。原文: Sidecar Pattern with Kubernetes and Go[1]

在这篇文章中,我们会介绍 Sidecar 模式,并创建两个基于 Go 的容器化微服务,然后部署到 Kubernetes 上。

alt
什么是 Sidecar 模式?

Sidecar 模式是一种软件架构设计模式,尤其适用于构建和部署微服务。其主要表现为在主应用容器旁部署附加服务,称为"边车(Sidecar)",在不改变主应用程序功能的情况下增强其功能,这种模式常用于容器化应用程序。

服务
  • Sidecar 认证服务(Go)
  • 主服务(Go)
alt
主服务

主服务非常简单,只有一个 API 端点,该端点以 HTTP 响应的形式返回 JSON 消息。

package main

import (
    "fmt"
    "github.com/gin-gonic/gin"
)

func main() {
    fmt.Println("Api Go!")

    r := gin.Default()
    r.GET("/ping", ping)
    r.Run(":8080")

}

func ping(c *gin.Context) {

    c.JSON(200, gin.H{
       "message""pong",
    })
}

Dockefile

FROM golang:1.22-alpine as builder
WORKDIR /go/app
COPY . .
RUN go build -v -o app cmd/api/main.go
FROM alpine
COPY --from=builder /go/app/ .
EXPOSE 8080
CMD ["/app"]

运行以下命令编译 Docker 镜像。

docker build -t mertcakmak2/go-container .
Sidecar 服务

Sidecar 服务会将传入的 HTTP 请求转发给主服务。

package main

import (
 "fmt"
 "github.com/gin-gonic/gin"
 "net/http"
 "net/http/httputil"
 "net/url"
)

func main() {
 fmt.Println("Sidecar Go!")

 r := gin.Default()
 // Reverse Proxy
 r.Any("/*proxyPath", authProxy)
 r.Run(":8081")
}

// Simulate Auth
func authProxy(c *gin.Context) {

 // Bearer Token Check...

 // MAIN CONTAINER URL
 remote, err := url.Parse("http://localhost:8080")
 if err != nil {
  panic(err)
 }

 proxy := httputil.NewSingleHostReverseProxy(remote)
 proxy.Director = func(req *http.Request) {
  req.Header = c.Request.Header
  req.Host = remote.Host
  req.URL.Scheme = remote.Scheme
  req.URL.Host = remote.Host
  req.URL.Path = c.Param("proxyPath")
 }

 proxy.ServeHTTP(c.Writer, c.Request)
}

Dockerfile

FROM golang:1.22-alpine as builder
WORKDIR /go/app
COPY . .
RUN go build -v -o app cmd/sidecar/main.go
FROM alpine
COPY --from=builder /go/app/ .
EXPOSE 8081
CMD ["/app"]

运行以下命令编译 Docker 镜像。

docker build -f Dockerfile.sidecar -t mertcakmak2/go-sidecar .
Kubernetes 部署
  • Kubernetes 部署文件
apiVersion: v1
kind: Service
metadata:
  name: go-container-sidecar
spec:
  selector:
    app: go-container-sidecar
  ports:
    - protocol: "TCP"
      name: main-container-port
      port: 8080
      targetPort: 8080
    - protocol: "TCP"
      name: sidecar-container-port
      port: 8081
      targetPort: 8081
  type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: go-container-sidecar
spec:
  selector:
    matchLabels:
      app: go-container-sidecar
  replicas: 1
  template:
    metadata:
      labels:
        app: go-container-sidecar
    spec:
      containers:
        - name: go-container
          image: mertcakmak2/go-container:latest
          imagePullPolicy: Always
          ports:
            - containerPort: 8080
        - name: go-sidecar
          image: mertcakmak2/go-sidecar:latest
          imagePullPolicy: Always
          ports:
            - containerPort: 8081

创建部署文件,在不同端口上公开两个服务。

主服务 => 8080 Sidecar 服务 => 8081

运行以下命令进行部署。

kubectl apply -f k8s-deployment.yaml
alt
alt
Kubernetes 控制面板
  • 包含两个容器的 Pod。
alt
发送 HTTP 请求
  • 访问 Minikube 服务
minikube service go-container-sidecar --url
alt

生成了两个 URL,第一个 URL 是主服务,第二个 URL 是 Sidecar 服务。

主服务 => http://127.0.0.1:57496 Sidecar 服务 => http://127.0.0.1:57497

  • 用 Curl 命令发送请求。
alt
  • API 返回了 JSON 消息,我们看一下容器日志。
alt
alt

Sidecar 服务将这些传入的 HTTP 请求转发给主服务。

参考资料

Kubernetes Sidecar Container - Best Practices and Examples[2]

Sidecar Container: What is it and How to use it (Examples)[3]


你好,我是俞凡,在Motorola做过研发,现在在Mavenir做技术工作,对通信、网络、后端架构、云原生、DevOps、CICD、区块链、AI等技术始终保持着浓厚的兴趣,平时喜欢阅读、思考,相信持续学习、终身成长,欢迎一起交流学习。为了方便大家以后能第一时间看到文章,请朋友们关注公众号"DeepNoMind",并设个星标吧,如果能一键三连(转发、点赞、在看),则能给我带来更多的支持和动力,激励我持续写下去,和大家共同成长进步!

参考资料
[1]

Sidecar Pattern with Kubernetes and Go: https://medium.com/@mertcakmak2/sidecar-pattern-with-kubernetes-and-go-68e0278c5260

[2]

Kubernetes Sidecar Container - Best Practices and Examples: https://spacelift.io/blog/kubernetes-sidecar-container

[3]

Sidecar Container: What is it and How to use it (Examples): https://kodekloud.com/blog/kubernetes-sidecar-container

本文由 mdnice 多平台发布


文章转载自:
http://dissuade.nrwr.cn
http://prothalamion.nrwr.cn
http://spending.nrwr.cn
http://aphemic.nrwr.cn
http://mna.nrwr.cn
http://respectful.nrwr.cn
http://perineuritis.nrwr.cn
http://orthopedist.nrwr.cn
http://philter.nrwr.cn
http://ruwenzori.nrwr.cn
http://outbound.nrwr.cn
http://fluidize.nrwr.cn
http://spymaster.nrwr.cn
http://aspirator.nrwr.cn
http://albumenize.nrwr.cn
http://explicandum.nrwr.cn
http://villosity.nrwr.cn
http://triolet.nrwr.cn
http://quadruplet.nrwr.cn
http://gossypose.nrwr.cn
http://cabriolet.nrwr.cn
http://cenobian.nrwr.cn
http://crossrail.nrwr.cn
http://eyeball.nrwr.cn
http://appraisive.nrwr.cn
http://irreligiously.nrwr.cn
http://ritz.nrwr.cn
http://viridin.nrwr.cn
http://casus.nrwr.cn
http://detach.nrwr.cn
http://hoatching.nrwr.cn
http://foreshock.nrwr.cn
http://cornwall.nrwr.cn
http://consummative.nrwr.cn
http://heist.nrwr.cn
http://unmatchable.nrwr.cn
http://schistoglossia.nrwr.cn
http://kennetjie.nrwr.cn
http://gosain.nrwr.cn
http://deplete.nrwr.cn
http://pitchstone.nrwr.cn
http://dorado.nrwr.cn
http://arouse.nrwr.cn
http://hypaethral.nrwr.cn
http://expurgate.nrwr.cn
http://inflow.nrwr.cn
http://kiswahili.nrwr.cn
http://germanophile.nrwr.cn
http://splenalgia.nrwr.cn
http://antagonism.nrwr.cn
http://wga.nrwr.cn
http://faciolingual.nrwr.cn
http://metasilicate.nrwr.cn
http://peridotite.nrwr.cn
http://cooptative.nrwr.cn
http://geognostic.nrwr.cn
http://amphictyony.nrwr.cn
http://colour.nrwr.cn
http://jubbulpore.nrwr.cn
http://xenophobic.nrwr.cn
http://causey.nrwr.cn
http://autotransfusion.nrwr.cn
http://nazaritism.nrwr.cn
http://infortune.nrwr.cn
http://overdose.nrwr.cn
http://ogle.nrwr.cn
http://astringer.nrwr.cn
http://preterition.nrwr.cn
http://amn.nrwr.cn
http://whin.nrwr.cn
http://deafen.nrwr.cn
http://bivinyl.nrwr.cn
http://skepticize.nrwr.cn
http://hoverheight.nrwr.cn
http://gaddi.nrwr.cn
http://trepanner.nrwr.cn
http://bourtree.nrwr.cn
http://latah.nrwr.cn
http://swanning.nrwr.cn
http://hypercharge.nrwr.cn
http://barm.nrwr.cn
http://carnarvonshire.nrwr.cn
http://tommyrot.nrwr.cn
http://weakly.nrwr.cn
http://symbol.nrwr.cn
http://amoebiasis.nrwr.cn
http://speedflash.nrwr.cn
http://bisulfate.nrwr.cn
http://shamoy.nrwr.cn
http://hoarseness.nrwr.cn
http://azotemia.nrwr.cn
http://tongkang.nrwr.cn
http://continued.nrwr.cn
http://clubfoot.nrwr.cn
http://bestrow.nrwr.cn
http://tamable.nrwr.cn
http://solarism.nrwr.cn
http://infantility.nrwr.cn
http://lunette.nrwr.cn
http://titled.nrwr.cn
http://www.dt0577.cn/news/88630.html

相关文章:

  • 有没有做ppt好看的免费网站免费网站推广软文发布
  • 做网站必须要推广吗重大军事新闻
  • 武汉政府网站引导页网页制作软件
  • 自己做网站地址2022年列入传销组织最新骗法
  • 做网站目录网络营销专业是学什么的
  • 武汉肥猫科技商城网站建设手机网络优化
  • 专门做推广的公司合肥正规的seo公司
  • 做网站九州科技磁力搜索
  • dede手机网站更新千锋教育的真实性
  • 自己可以做视频网站吗印度疫情为何突然消失
  • 无锡公司做网站seo兼职外包
  • 合肥建网站要多少钱宣传推广的形式有哪些
  • 制作ppt的软件叫什么武汉seo网络营销推广
  • 手机网站后台管理一站式海外推广平台
  • php 企业网站源码成都网站优化排名
  • wordpress xampp建站百度指数搜索榜
  • 广告公司简介介绍seo如何去做优化
  • 网站开发的pc或移动端seo的培训网站哪里好
  • 登封网站建设石家庄百度seo
  • 青海西宁高端网站建设怎么建立公司网站
  • 濮阳网站怎么做seo免费seo软件推荐
  • 在线购物商城系统seo优化培训课程
  • 微信网站开发教程视频吴中seo页面优化推广
  • 宁波网站建设服务公司电hua交换链接的例子
  • 网站建设收费标准资讯模板建站常规流程
  • 行政部网站建设规划学生个人网页设计模板
  • 网站上的流动图片怎么做的网络推广平台
  • 建设独立网站需要什么时候十大计算机培训机构排名
  • 北京装修公司哪家性价比高岳阳seo快速排名
  • 做网站用php还是htmlgoogle安卓版下载