【Kubesphere 云平台使用、具备两地三中心与三地五中心容灾架构实战】

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
简介: 【Kubesphere 云平台使用、具备两地三中心与三地五中心容灾架构实战】

Kubesphere 是一个基于 Kubernetes 的开源云原生平台,支持多云、多数据中心、多集群管理。在实现高可用性方面,Kubesphere 支持两地三中心或三地五中心容灾架构。

以下是具体实现步骤:

  1. 部署 Kubesphere

首先,需要在两个或三个数据中心中分别部署 Kubesphere 平台,并将它们连接成一个集群。这个过程可以参考 Kubesphere 官方文档进行操作。

  1. 配置 Kubernetes 集群

在每个数据中心中,需要配置 Kubernetes 集群,确保它们能够正常工作,并支持跨数据中心的通信。需要特别注意的是,每个数据中心中的 Kubernetes 集群需要使用不同的 IP 段,避免冲突。

  1. 配置存储

在两个或三个数据中心中,需要配置相应的存储系统,确保数据的可靠性和可用性。可以使用云存储、本地存储等不同的存储方式,也可以使用 Ceph 等分布式存储系统。

  1. 配置网络

在两个或三个数据中心中,需要配置网络,确保 Kubernetes 集群中的 Pod 和 Service 可以跨数据中心通信。可以使用 VPN、VxLAN 等技术实现跨数据中心网络的连接。

  1. 配置负载均衡器

在实现容灾架构时,负载均衡器是非常重要的一环。需要在每个数据中心中配置负载均衡器,确保业务可以自动切换到其他数据中心的节点上。

  1. 配置自动化备份与恢复

为了确保数据的可靠性和可用性,需要配置自动化备份与恢复功能。可以使用 Velero 等工具,在不同的数据中心之间备份和恢复应用程序及其数据。

  1. 测试容灾方案

在完成以上步骤后,需要进行容灾测试,确保容灾方案能够正常工作。可以模拟网络中断、节点故障等情况,测试容灾方案的可用性和可靠性。

总体来说,实现容灾架构需要综合考虑多个因素,包括 Kubesphere 平台、Kubernetes 集群、存储、网络、负载均衡器、备份与恢复等多个方面。需要深入了解相关技术,进行仔细的规划和配置,才能确保容灾方案的可靠性和可用性。

部署 Kubesphere

本案例将介绍如何在两个数据中心中分别部署Kubesphere平台,并将它们连接成一个集群。我们将使用Kubeadm工具来部署Kubernetes集群,然后使用Kubesphere的部署工具来将Kubesphere部署到集群中。

准备工作:

我们需要两个虚拟机或物理机作为我们的Kubernetes节点,每个节点需要至少2个CPU,4GB的内存和50GB的磁盘空间。

我们将使用以下IP地址:

  • 数据中心1:192.168.0.100(Kubernetes Master节点)、192.168.0.101(Kubernetes Worker节点)
  • 数据中心2:192.168.1.100(Kubernetes Master节点)、192.168.1.101(Kubernetes Worker节点)

部署Kubernetes集群:

我们将使用Kubeadm工具来部署Kubernetes集群。在每个节点上,执行以下命令以安装必要的软件包和依赖项:

sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common

添加Kubernetes的存储库并安装Kubeadm、Kubelet和Kubectl:

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo add-apt-repository "deb https://apt.kubernetes.io/ kubernetes-xenial main"
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl

配置Kubernetes Master节点,以192.168.0.100和192.168.1.100为例:

sudo kubeadm init --apiserver-advertise-address=192.168.0.100 --pod-network-cidr=10.244.0.0/16

执行完上述命令后,将在屏幕上看到一个kubeadm join命令,将其复制保存。

在Kubernetes Master节点上,安装网络插件,这里我们使用Flannel:

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/v0.13.0/Documentation/kube-flannel.yml

在Kubernetes Worker节点上,执行先前保存的kubeadm join命令,将Kubernetes节点加入到集群中。

在两个数据中心中分别部署Kubesphere平台:

在部署Kubesphere之前,我们需要在每个节点上安装Docker和Helm。

安装Docker:

sudo apt-get update
sudo apt-get install -y docker.io
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER

安装Helm:

curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash

在数据中心1和数据中心2中分别执行以下命令以部署Kubesphere:

curl -L https://kubesphere.io/download/stable/v3.0.0/kubesphere-installer.yaml -o kubesphere-installer.yaml
kubectl apply -f kubesphere-installer.yaml -n kubesphere-system

执行完上述命令后,等待几分钟,Kubesphere将部署到Kubernetes集群中。

将两个数据中心的Kubesphere连接成一个集群:

在数据中心1中,执行以下命令来获得Kubesphere的外部访问IP地址:

kubectl get svc ks-console -n kubesphere-system

在数据中心2中,编辑hosts文件(/etc/hosts),添加以下行:

192.168.0.100 console.kubesphere.local console

在数据中心2中,通过浏览器访问http://console.kubesphere.local,您将看到Kubesphere的登录页面。

使用您在数据中心1中创建的账户登录Kubesphere,您现在可以管理两个数据中心中的Kubernetes集群了。

Kubernetes 集群

一、部署过程

为了满足三个数据中心配置 Kubernetes 集群每个数据中心中的 Kubernetes 集群需要使用不同的 IP 段的要求,我们可以使用 kubeadm 工具来快速部署 Kubernetes 集群。

  1. 在三个数据中心的每台服务器上都安装 Docker 和 kubeadm 工具。
  2. 配置 kubeadm-init 的参数,包括 --pod-network-cidr 和 --apiserver-advertise-address。其中,–pod-network-cidr 指定了每个数据中心 Kubernetes 集群所使用的不同 IP 段,–apiserver-advertise-address 指定了主节点的 IP 地址。
  3. 执行 kubeadm init 命令,初始化主节点,并将其它服务器加入 Kubernetes 集群。
  4. 配置 Calico 网络插件,使得各个节点之间可以相互通信。
  5. 部署后,可以使用 kubectl 工具进行集群管理和操作。

二、部署命令

  1. 在每个服务器上安装 Docker 和 kubeadm 工具。参考命令如下:
# 安装 Docker
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install -y docker-ce
# 安装 kubeadm
sudo apt-get update && sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
  1. 配置 kubeadm-init 的参数。参考命令如下:
sudo kubeadm init \
  --pod-network-cidr=10.244.0.0/16 \
  --apiserver-advertise-address=<主节点IP地址>
  1. 加入其它服务器。参考命令如下:
sudo kubeadm join <主节点IP地址>:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>
  1. 配置 Calico 网络插件。
kubectl apply -f https://docs.projectcalico.org/v3.8/manifests/calico.yaml
  1. 部署完成后,可以使用 kubectl 工具进行管理和操作。
# 查看节点状态
kubectl get nodes
# 部署 pod
kubectl apply -f <pod配置文件>
# 查看 pod 状态
kubectl get pods

以上是一个简单的部署示例,具体部署过程和命令需要根据实际情况进行调整和修改。

配置存储

假设有三个数据中心:Datacenter1、Datacenter2和Datacenter3,每个数据中心都需要一个存储系统。以下是一个示例部署过程:

  1. 在Datacenter1中配置云存储系统:

首先,需要安装适合云存储系统的软件。这里我们选择使用OpenStack Swift,一个开源的云存储软件。

安装命令:

sudo apt-get update
sudo apt-get install swift

配置文件存储在/etc/swift/目录下。

  1. 在Datacenter2中配置本地存储系统:

我们将使用文件系统作为本地存储系统。我们需要在Datacenter2中创建一个文件夹,并将其挂载到系统中。

创建一个文件夹:

mkdir /data/storage

在/etc/fstab文件中添加以下行以将其挂载:

/dev/sdb       /data/storage        ext4    defaults        0       0

运行以下命令以重新加载fstab文件并挂载文件系统:

sudo mount -a
  1. 在Datacenter3中配置Ceph分布式存储系统:

我们将使用Ceph作为分布式存储系统。以下是部署Ceph的简要说明:

安装Ceph:

sudo apt-get update
sudo apt-get install ceph

配置集群:

使用ceph-deploy工具在Datacenter3中配置一个Ceph集群:

sudo apt-get install ceph-deploy
ceph-deploy new ceph-mon-01
ceph-deploy install ceph-mon-01
ceph-deploy mon create-initial
ceph-deploy osd prepare ceph-osd-01:/data/storage
ceph-deploy osd activate ceph-osd-01:/data/storage

在Datacenter3中,根据需要可以使用其他ceph-deploy命令管理集群。

以上是一个简单的部署方案。当需要配置不同类型的存储系统时,需要根据类型选择适合的软件和配置选项。

配置网络

部署过程描述:

  1. 在每个数据中心中设置至少三个节点用来部署 Kubernetes 集群。
  2. 安装和配置 Kubernetes 集群,并确保所有节点之间可以互相通信。
  3. 在每个数据中心中创建一个主控节点,可以使用 Kubernetes 集群的高可用功能(常见的解决方案是使用 kubeadm 创建集群,然后将 etcd 和 kube-apiserver 部署到多个节点上)。
  4. 配置网络,确保 Pod 和 Service 可以跨数据中心通信。可以使用 calico、flannel 或者 weave 等网络插件。
  5. 部署应用程序,创建 Service 和 Pod,确保它们可以在不同的数据中心之间进行通信。

部署命令:

以下是使用 kubeadm 部署 Kubernetes 集群的示例命令。

  1. 在每个节点上安装 Docker 和 Kubernetes:
# 安装 Docker
$ sudo apt-get update
$ sudo apt-get install -y docker.io
# 安装 Kubernetes
$ sudo apt-get install -y apt-transport-https curl
$ curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
$ cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
$ sudo apt-get update
$ sudo apt-get install -y kubelet kubeadm kubectl
  1. 创建主控节点:
$ sudo kubeadm init --apiserver-advertise-address=<VIP> \
                    --pod-network-cidr=<POD_CIDR> \
                    --service-cidr=<SERVICE_CIDR> \
                    --control-plane-endpoint=<LOAD_BALANCER>

其中,<VIP> 是虚拟 IP 地址,在所有主控节点之间共享,用于访问 Kubernetes API Server;<POD_CIDR><SERVICE_CIDR> 是分配给 Pod 和 Service 的 IP 地址段;<LOAD_BALANCER> 是负载均衡器的地址,用于访问 API Server。

  1. 加入节点:
$ sudo kubeadm join <VIP>:<PORT> --token <TOKEN> \
                                --discovery-token-ca-cert-hash sha256:<HASH>

其中,<VIP> 是虚拟 IP 地址,在所有主控节点之间共享;<PORT> 是 Kubernetes API Server 的端口号;<TOKEN> 是用于加入集群的令牌,可以通过 kubeadm token create 命令生成;<HASH> 是用于验证令牌的 CA 证书哈希值,可以通过 openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //' 命令生成。

  1. 安装网络插件:
$ kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
  1. 创建 Service 和 Pod:
apiVersion: v1
kind: Service
metadata:
  name: myservice
spec:
  selector:
    app: MyApp
  ports:
    - name: http
      port: 80
      protocol: TCP
      targetPort: 8080
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp
spec:
  replicas: 3
  selector:
    matchLabels:
      app: MyApp
  template:
    metadata:
      labels:
        app: MyApp
    spec:
      containers:
        - name: mycontainer
          image: myimage:latest
          ports:
            - containerPort: 8080

其中,myservice 是 Service 的名称,selector 字段用于选择与此 Service 关联的 Pod,ports 字段用于定义 Service 的端口映射关系。myapp 是 Deployment 的名称,用于控制 Pod 的副本数,selector 字段用于选择要控制的 Pod,containers 字段用于定义 Pod 的容器。

执行代码:

上述命令和配置文件可以根据需要进行修改,并根据实际情况执行。在创建 Service 和 Pod 后,可以使用 kubectl get servicekubectl get pod 命令查看它们的状态,使用 kubectl exec 命令进入 Pod 进行测试。

配置负载均衡器

案例描述:

假设我们有三个数据中心:DC1、DC2 和 DC3,每个数据中心中都有多个节点可以提供服务。我们需要在每个数据中心中配置一个负载均衡器,确保业务可以自动切换到其他数据中心的节点上。

部署过程:

  1. 部署负载均衡器

在每个数据中心中部署一个负载均衡器,可以选择常见的负载均衡器软件(如HAProxy、NGINX、F5等),按照相应的文档进行安装和配置。

  1. 配置负载均衡器

在每个负载均衡器中,根据实际情况配置后端节点信息。如果使用的是主从架构,需要将主节点作为默认的后端节点;如果使用的是多节点架构,需要将多个节点加入到后端节点列表中。还需要根据实际情况配置负载均衡策略(如轮询、加权轮询、最少连接数等)。

  1. 配置DNS解析

为了实现自动切换到其他数据中心的节点上,需要在DNS中配置相应的解析规则。可以采用多种方式实现DNS解析,例如:

  • 对于同一域名,在不同的数据中心中分别使用不同的IP地址。
  • 对于同一域名,在不同的数据中心中使用相同的IP地址,但是在不同的地理位置中解析到不同的IP地址。

部署命令:

部署负载均衡器和配置DNS解析需要进行手动操作,没有固定的部署命令。

执行代码:

执行代码也因负载均衡器的不同而异,下面以HAProxy为例,给出配置后端节点的示例代码:

在haproxy.cfg文件中添加以下内容:

backend my_backend
    server node1 <node1_ip>:<node1_port> check
    server node2 <node2_ip>:<node2_port> check
    server node3 <node3_ip>:<node3_port> check

其中,my_backend是后端节点的名称,node1、node2、node3是具体的节点名称,<nodeX_ip>和<nodeX_port>是节点的IP地址和端口号。

这段代码表示将三个节点添加到后端节点列表中,并使用默认的检查机制进行健康检查。

配置自动化备份与恢复

案例描述:

假设有三个数据中心:dc1、dc2、dc3,我们需要在每个数据中心上部署自动化备份与恢复功能,并允许不同数据中心之间进行应用程序和数据的备份与恢复。

部署过程:

1.安装必要的软件:在每个数据中心上安装必要的软件,包括备份和恢复工具、存储空间和网络连接等。

2.配置备份策略:对于每个应用程序和数据,配置备份策略,包括备份时间、备份间隔、备份目标等。

3.配置恢复策略:对于每个备份数据,配置恢复策略,包括恢复时间、恢复目标等。

4.测试备份和恢复:在每个数据中心内部测试备份和恢复功能,确保备份和恢复策略都能正常运行。

5.测试跨数据中心备份和恢复:在不同数据中心之间测试备份和恢复功能,确保备份和恢复策略能够跨数据中心运行。

部署命令和执行代码:

1.安装必要的软件:

在每个数据中心上安装必要的软件,例如在Ubuntu系统上执行以下命令:

sudo apt-get update
sudo apt-get install -y rsync tar sshfs

2.配置备份策略:

在每个数据中心的应用程序和数据上,配置备份策略,例如在Ubuntu系统上执行以下脚本:

#!/bin/bash
# Backup script for app and data
APP_PATH=/var/www/app
DATA_PATH=/var/lib/mysql
TARGET_PATH=/mnt/backup
BACKUP_TIME=$(date +%Y-%m-%d-%H-%M-%S)
mkdir -p $TARGET_PATH/$BACKUP_TIME
rsync -avz $APP_PATH $TARGET_PATH/$BACKUP_TIME/
rsync -avz $DATA_PATH $TARGET_PATH/$BACKUP_TIME/
tar -zcvf $TARGET_PATH/$BACKUP_TIME.tar.gz $TARGET_PATH/$BACKUP_TIME/
sshfs user@dc2:/mnt/backup/ $TARGET_PATH/mount/
rsync -avz $TARGET_PATH/$BACKUP_TIME.tar.gz $TARGET_PATH/mount/
umount $TARGET_PATH/mount/
rm -rf $TARGET_PATH/$BACKUP_TIME/

3.配置恢复策略:

对于每个备份数据,配置恢复策略,例如在Ubuntu系统上执行以下脚本:

#!/bin/bash
# Restore script for app and data
BACKUP_PATH=/mnt/backup
RESTORE_PATH=/mnt/restore
BACKUP_FILE=backup.tar.gz
mkdir -p $RESTORE_PATH
sshfs user@dc2:$BACKUP_PATH/ $RESTORE_PATH/
tar -zxvf $RESTORE_PATH/$BACKUP_FILE -C $RESTORE_PATH/
rsync -avz $RESTORE_PATH/$BACKUP_FILE $BACKUP_PATH/
rm -rf $RESTORE_PATH/

4.测试备份和恢复

在每个数据中心上测试备份和恢复功能,例如在Ubuntu系统上执行以下命令:

sudo sh backup.sh
sudo sh restore.sh

5.测试跨数据中心备份和恢复

在不同数据中心之间测试备份和恢复功能,例如在Ubuntu系统上执行以下命令:

sudo sh backup.sh
ssh user@dc2 sudo sh restore.sh

以上代码仅供参考,实际的部署和执行根据具体的环境和需求进行调整。

测试容灾方案

部署过程:

  1. 准备三个数据中心,命名为DC1、DC2和DC3,每个数据中心都有多个节点,用于存储和计算数据。
  2. 配置网络:将三个数据中心连接起来,形成一个双向网络环境。为了保证网络的高可用性,可以使用双重路由器、双重交换机等设备进行冗余和备份。
  3. 部署应用程序:在每个数据中心中部署相同的应用程序,例如一个在线商城网站。确保每个数据中心都有相同的数据库和文件系统,以便在容灾测试期间进行数据同步和备份。
  4. 部署容灾方案:选择一个容灾解决方案,并按照其部署文档进行部署。例如,可以使用Kubernetes集群部署一个多节点负载均衡的应用程序,然后使用MetalLB等工具将其暴露给外部网络。Kubernetes可靠且灵活,能够自动化地管理容器化应用程序,并且支持跨多个数据中心的容灾部署。
  5. 进行容灾测试:在不干扰正常业务的情况下,模拟网络中断、节点故障等情况,测试容灾方案的可用性和可靠性。例如,可以手动终止某个节点或关闭某个数据中心的网络连接,观察系统的响应和恢复情况。如果容灾方案能够正常工作并确保服务的高可用性,测试就算成功。

部署命令:

  1. 部署Kubernetes集群:
$ kubeadm init --apiserver-advertise-address=[NODE_IP_ADDRESS] --pod-network-cidr=[POD_CIDR_BLOCK]
  1. 安装MetalLB:
$ kubectl apply -f https://raw.githubusercontent.com/google/metallb/v0.7.3/manifests/metallb.yaml
  1. 创建Service对象:
$ kubectl apply -f - <<EOF
apiVersion: v1
kind: Service
metadata:
  name: my-service
spec:
  selector:
    app: my-app
  ports:
    - protocol: TCP
      port: 80
      targetPort: 9376
  type: LoadBalancer
  loadBalancerIP: [LOAD_BALANCER_IP]
EOF

执行代码:

  1. 模拟网络中断:
$ iptables -A INPUT -p [PROTOCOL] --dport [PORT] -j DROP
  1. 模拟节点故障:
$ kubectl delete pod [POD_NAME] --force --grace-period=0

注意:在进行容灾测试时,需要格外小心,确保不会对正常业务造成影响。建议在测试之前备份数据和配置,以便在出现问题时能够及时恢复正常运行。


相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。 &nbsp; &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
4月前
|
人工智能 监控 前端开发
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
支付宝「AI 出行助手」是一款集成公交、地铁、火车票、机票、打车等多项功能的智能出行产品。
634 21
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
|
4月前
|
监控 Java API
Spring Boot 3.2 结合 Spring Cloud 微服务架构实操指南 现代分布式应用系统构建实战教程
Spring Boot 3.2 + Spring Cloud 2023.0 微服务架构实践摘要 本文基于Spring Boot 3.2.5和Spring Cloud 2023.0.1最新稳定版本,演示现代微服务架构的构建过程。主要内容包括: 技术栈选择:采用Spring Cloud Netflix Eureka 4.1.0作为服务注册中心,Resilience4j 2.1.0替代Hystrix实现熔断机制,配合OpenFeign和Gateway等组件。 核心实操步骤: 搭建Eureka注册中心服务 构建商品
701 3
|
4月前
|
消息中间件 Java 数据库
Java 基于 DDD 分层架构实战从基础到精通最新实操全流程指南
本文详解基于Java的领域驱动设计(DDD)分层架构实战,结合Spring Boot 3.x、Spring Data JPA 3.x等最新技术栈,通过电商订单系统案例展示如何构建清晰、可维护的微服务架构。内容涵盖项目结构设计、各层实现细节及关键技术点,助力开发者掌握DDD在复杂业务系统中的应用。
683 0
|
2月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
2月前
|
监控 Cloud Native Java
Spring Boot 3.x 微服务架构实战指南
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Spring Boot 3.x与微服务架构,探索云原生、性能优化与高可用系统设计。以代码为笔,在二进制星河中谱写极客诗篇。关注我,共赴技术星辰大海!(238字)
Spring Boot 3.x 微服务架构实战指南
|
3月前
|
消息中间件 数据采集 NoSQL
秒级行情推送系统实战:从触发、采集到入库的端到端架构
本文设计了一套秒级实时行情推送系统,涵盖触发、采集、缓冲、入库与推送五层架构,结合动态代理IP、Kafka/Redis缓冲及WebSocket推送,实现金融数据低延迟、高并发处理,适用于股票、数字货币等实时行情场景。
305 3
秒级行情推送系统实战:从触发、采集到入库的端到端架构
|
3月前
|
设计模式 人工智能 API
AI智能体开发实战:17种核心架构模式详解与Python代码实现
本文系统解析17种智能体架构设计模式,涵盖多智能体协作、思维树、反思优化与工具调用等核心范式,结合LangChain与LangGraph实现代码工作流,并通过真实案例验证效果,助力构建高效AI系统。
434 7
|
4月前
|
机器学习/深度学习 算法 文件存储
神经架构搜索NAS详解:三种核心算法原理与Python实战代码
神经架构搜索(NAS)正被广泛应用于大模型及语言/视觉模型设计,如LangVision-LoRA-NAS、Jet-Nemotron等。本文回顾NAS核心技术,解析其自动化设计原理,探讨强化学习、进化算法与梯度方法的应用与差异,揭示NAS在大模型时代的潜力与挑战。
895 6
神经架构搜索NAS详解:三种核心算法原理与Python实战代码
|
3月前
|
人工智能 文字识别 运维
AR眼镜在巡检业务中的软件架构设计|阿法龙XR云平台
引入AR眼镜与AI融合的巡检方案,构建“端-边-云”协同架构,实现工单可视化、AR叠加数据、智能识别表计与异常、远程协作及自动报告生成,提升工业巡检效率与智能化水平。

热门文章

最新文章