Janrs.com | 杨建勇

  • 首页
  • 站点地图
  • 所有文章
  • 加入学习群
所有文章
k8s/云原生

本地开发Kubernetes微服务远程调试工具 - kubefwd

转载请注明来来源:https://janrs.com/87qz 项目地址:https://github.com/txn2/kubefwd kubefwd帮助实现了在本地工作站上开发应用程序和服务的无缝和高效方式。在本地开发打算与Kubernetes集群中的其他服务进行交互的应用程序。 kubefwd允许具有连接字符串(如 http://elasticsearch:9200/ 或 tcp://db:3306) 的应用程序通信到远程集群。kubefwd可用于减少或消除对本地环境特定连接配置的需要。 在微服务架构中开发服…

2023年3月25日 0条评论 56点热度 657人点赞 码仔 阅读全文
所有文章

微服务中的分布式事务管理 - 2/2 Saga异步模式

转载请注明来源:https://janrs.com/h42y 这篇文章是上一篇文章的延续。 在这篇文章中,我们将看到Saga模式,它是一种异步模式,在每个微服务中执行一连串的事务,并发布消息或事件以进行下一步。如果中间有任何步骤失败,Saga模式将执行补偿步骤以逆转交易。 我们可以从上图中看到,Saga模式在每个服务中执行一连串的本地事务。每个服务更新它的数据库,然后发布一个消息或事件,这将触发下一个本地事务。 因此,我们必须写出提交事务的逻辑,并且当事务中的任何地方出错时,也要有一个机制来逆转流程。所有的事务和补…

2023年3月17日 0条评论 65点热度 657人点赞 码仔 阅读全文
所有文章

微服务中的分布式事务管理 - 1/2 2/3阶段提交同步模式

转载请注明来源:https://janrs.com/bkt7 在这篇文章中,我们将看到关于跨微服务的分布式事务管理。 什么是事务 一个事务不过是一系列必须成功执行的操作。即使其中一个操作失败了,整个步骤也必须回滚,以使应用程序处于之前的稳定状态。一个事务具有以下ACID属性。 单体架构和微服务中的事务 在传统的单片机应用程序中,将有一个单一的大型应用程序连接到一个大型数据库,这种应用程序坚持ACID属性。 事务边界从服务层内部开始,可以根据该事务中所有步骤的结果进行提交或回滚。在微服务的情况下,每个微服务运行一个特…

2023年3月17日 0条评论 72点热度 658人点赞 码仔 阅读全文
Go

Golang Grpc 高级使用 - Deadlines, Cancellation, Error Handling, Multiplexing

Golang Grpc 高级使用 转载请注明来源:https://janrs.com/xag1 Deadlines 超时是分布式系统中常用的一种模式。尽管截止日期与超时相似,但对于gRPC来说,有一个关键的区别。超时是一个选项,让客户决定他们愿意等待服务器响应的时间,并且是在每个客户端本地应用。因此,它不可能在gRPC请求的整个生命周期内应用。这就是为什么我们需要使用截止日期。 超时允许你在微服务架构中避免无限期或长期运行的过程。任何服务都可以查询还有多少时间可以完成RPC,如果超过了这个时间,调用就会以DEADL…

2023年3月17日 0条评论 69点热度 658人点赞 码仔 阅读全文
Jaeger

在Kubernetes上使用Jaeger的分布式追踪基础设施

在Kubernetes上使用Jaeger的分布式追踪基础设施 转载请注明来源:https://janrs.com/sptc 作为分布式系统(或任何系统)的一个组成部分,监测基础设施的重要性怎么强调都不过分。监控不仅要跟踪二进制的 "上升 "和 "下降 "模式,还要参与到复杂的系统行为中。监测基础设施的设置可以让人们深入了解性能、系统健康和长期的行为模式。 这篇文章介绍了监控基础设施的一个方面--分布式跟踪。 微服务架构中的可观察性 Kubernetes已经成为微服务基础设施和…

2023年3月2日 2条评论 371点热度 798人点赞 码仔 阅读全文
Go

用GoRoutines高性能同时进行多个Api调用

用GoRoutines高性能同时进行多个Api调用 转载请注明来源:https://janrs.com/ppzi Golang是高效的,非常高效。这种效率在很大程度上要归功于它在处理并发性问题时的独特抽象。例如,Java将其线程映射为操作系统线程,而Go使用自己的goroutines调度器将其轻量级goroutines从操作系统线程中进一步抽象出来。简而言之,Golang在使用操作系统线程方面非常节俭;如果一个goroutine被阻塞了,Go的调度器会在它的位置上切换另一个goroutine,以尽可能地保持线程的忙…

2023年3月2日 0条评论 134点热度 688人点赞 码仔 阅读全文
Go

Go创建Grpc链接池

Go创建Grpc链接池 转载请注明来源:https://janrs.com/x0gn 常规用法 gRPC 四种基本使用 请求响应模式 客户端数据流模式 服务端数据流模式 双向流模式 常见的gRPC调用写法 func main(){ //... some code // 链接grpc服务 conn , err := grpc.Dial(":8000",grpc.WithInsecure) if err != nil { //...log } defer conn.Close() //...some…

2023年3月2日 0条评论 181点热度 688人点赞 码仔 阅读全文
Docker

docker部署elk

docker 部署 elk 创建docker-compose mkdir -p /databases/elk cd /databases/elk mkdir -p elasticsearch/plugins mkdir -p elasticsearch/data mkdir -p logstash cat > /databases/elk/docker-compose.yaml <<EOF version: '3' services: elasticsearch: image:…

2023年3月1日 0条评论 103点热度 685人点赞 码仔 阅读全文
Docker

Centos7安装Docker

[!Tip] CentOS7安装Docker 转载请注明出处:https://janrs.com Centos7 安装 Docker 1.安装工具 yum install -y yum-utils device-mapper-persistent-data lvm2 2.设置阿里镜像 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 3.更新yum缓存 yum makecache…

2023年2月20日 0条评论 95点热度 685人点赞 码仔 阅读全文
所有文章

cpu是如何实现计算的

[!TIP] 一篇简文让你明白CPU到底是什么?为什么能够实现计算? CPU到底是什么东西?它为什么能够执行数学运算? 简单的物理电路 转载请注明出处:https://janrs.com/kaqy 先来看一张初中学过的物理电路图: 从图中我们可以看出这是一个简单的串联和并联还有反相器的电路。[注:反相器没有按照标准来画] 图中的 a 和 b 代表着控制电路的开关,通过控制这两个开关的通电状态来控制灯泡的亮与不亮。 我们用数字 1 和 0 来表示开关的通电和断电的状态表示,1 表示通电状态,0 表示断电状态。同样的,…

2023年2月20日 0条评论 156点热度 685人点赞 码仔 阅读全文
所有文章

详解5种IO模型

[!TIP] 哪5种IO模型?什么是select/poll/epoll?同步异步阻塞非阻塞有啥区别?全在这讲明白了! 转载请注明出处:https://janrs.com/61mw 5种I/O模型 Blocking I/O【阻塞I/O】 NonBlocking I/O【非阻塞I/O】 Multiplexing I/O【I/O多路复用】 Asynchronous IO【异步I/O】 Signal Driven IO【信号驱动I/O】 这些IO模型具体是怎么工作的,往下看。 前提 整个计算机系统涉及到了硬件基础跟操作系统…

2023年2月19日 0条评论 166点热度 687人点赞 码仔 阅读全文
MySQL

部署高可用主从读写分离Mysql集群01

[!Tip] 部署 mysql 并且设置主从 转载请注明出处:https://janrs.com/pnfq 部署 mysql 主从做读写分离 1.部署 mysql5.7 1.1 安装依赖 apt install lsb-release gnupg wget -y 1.2 安装源 下载脚本直接运行并打开,打开后选择第一个选项按回车,选择 5.7 版本 cd /home && \ wget http://repo.mysql.com/mysql-apt-config_0.8.13-1_all.deb &…

2023年1月20日 1条评论 625点热度 674人点赞 码仔 阅读全文
MySQL

部署高可用主从读写分离Mysql集群02

[!Tip] 部署 mycat 中间件 转载请注明出处:https://janrs.com/jozi 部署 Mycat 中间件 [!NOTE] 安装 Mycat 需要先安装 jdk 版本就按照官方的来 1.安装 jdk1.8 [!NOTE] jdk 要求的版本可能随着 mycat 的升级而变化 此处用的是 jdk1.8 版本 去官网下载或者其他地方下载,解压到设置好到目录 cd /etc/java tar -zxvf jdk-8u311-linux-x64.tar.gz 修改环境变量 vi /etc/profile…

2023年1月16日 0条评论 142点热度 676人点赞 码仔 阅读全文
MySQL

部署高可用主从读写分离Mysql集群03

[!Tip] 部署 HAProxy + keepalived 转载请注明来源:https://janrs.com/53n2 部署 HAPorxy + keepalived 1.开启 ip 转发 打开配置文件 vim /etc/sysctl.conf 打开以下参数 net.ipv4.ip_forward = 1 使配置生效 sysctl -p 2.部署 HAProxy 以及 keepalived 2.1 安装 [!NOTE] 两台服务器都要安装 apt install keepalived haproxy -y 开启…

2023年1月13日 3条评论 196点热度 676人点赞 码仔 阅读全文
Linux

Debian10 安装 Mairadb/Redis/MongoDB

[!TIP] Debian 安装 MariaDB Redis MongoDB 转载请注明出处:https://janrs.com Debian 安装 MariaDB/Redis/MongoDB 安装 Redis 安装 apt install redis-server 修改远程连接 修改 bind 参数为 0.0.0.0 ::1 注意 ipv6 不能删除了。 vim /etc/redis/redis.conf 安装 MariaDB 10.3 添加源 10.3 修改为自己需要的版本 deb https://mirror…

2022年12月20日 0条评论 90点热度 685人点赞 码仔 阅读全文
CICD

CICD部署08 - jenkins + gitlab + harbor + k8s

[!TIP] Gitlab flow 常用开发流程实践 转载请注明出处:https://janrs.com Gitlab Flow [!NOTE] 80% 的项目可以用下面的流程规则开发以及交付。 官网介绍文档:(https://docs.gitlab.cn/jh/topics/gitlab_flow.html) 1.分支设置 项目分三个分支:develop 开发分支,test 测试分支,master 分支。测试分支跟发布分支要打 tag 后打包镜像发布,镜像版本跟 tag 版本一致。 代码合并过程:deveplo…

2022年12月19日 0条评论 120点热度 685人点赞 码仔 阅读全文
CICD

CICD部署07 - jenkins + gitlab + harbor + k8s

[!TIP] Jenkins 部署 go 应用到 k8s 转载请注明出处:https://janrs.com Jenkins 部署 go 应用到 k8s 以 go-zero 项目为例构建镜像并推送到 Harbor 镜像仓库中心,并且使用 kubectl 部署到 k8s。 1.设置 Jenkins 参数 Jenkins 使用 Docker 构建镜像需要挂载 Docker 的进程 sock 已经可执行文件。参数如下: 该参数已经在前面部署 Jenkins 的时候设置了 -v /var/run/docker.sock:/…

2022年11月19日 0条评论 97点热度 684人点赞 码仔 阅读全文
CICD

CICD部署06 - jenkins + gitlab + harbor + k8s

[!TIP] 创建 CD 转载请注明出处:https://janrs.com 创建 CD [!NOTE] 创建 CD 采用的是 pipeline SCM 以及 kubectl 的方式。 1.创建 Jenkinsfile [!NOTE] Jenkinsfile 也可以跟项目放在一起,只要指定好文件位置就行了。 这里采用单独的一个项目。 在 gitlab 创建一个用于 pipeline 的 Jenkinsfile,如下图所示 2.链接 gitlab 如法炮制,进入 jenkins 的容器链接 gitlab,省的在 je…

2022年11月19日 0条评论 90点热度 684人点赞 码仔 阅读全文
CICD

CICD部署05 - jenkins + gitlab + harbor + k8s

[!TIP] 创建 CI 转载请注明出处:https://janrs.com 创建 CI 1.建立 gitlab 项目 建立项目属于基操,此处教程省略,自动谷歌。 2.jenkins 连接 gitlab 在部署 Jenkins 的时候已经说明。 3.构建 pipeline 构建 jenkins 的 pipeline 来执行 CICD。 以下为操作步骤 3-1.构建任务 3-1-1.创建任务 3-1-2.选择流水线方式,也就是 pipeline 3-1-3.设置过期时间防止垃圾构建或者历史构建太多 3-1-4.创建 …

2022年10月19日 0条评论 102点热度 684人点赞 码仔 阅读全文
CICD

CICD部署04 - jenkins + gitlab + harbor + k8s

[!TIP] Docker 部署 harbor 转载请注明出处:https://janrs.com docker 部署 harbor 1.下载 docker-composer wget https://github.com/docker/compose/releases/download/v2.10.1/docker-compose-linux-x86_64 2.下载 harbor wget https://github.com/goharbor/harbor/releases/download/v2.6.1/ha…

2022年10月19日 0条评论 133点热度 685人点赞 码仔 阅读全文
1234
有关Go/istio/k8s/云原生直接搜
分类
  • CICD
  • Docker
  • Go
  • Istio
  • Jaeger
  • k8s/云原生
  • Kubeadm部署k8s
  • Linux
  • MySQL
  • PHP
  • Rancher
  • 二进制部署k8s
  • 代码手册
  • 所有文章
  • 架构/微服务
  • 部署k8s服务
归档
  • 2023年3月 / 14篇
  • 2023年2月 / 5篇
  • 2023年1月 / 3篇
  • 2022年12月 / 2篇
  • 2022年11月 / 2篇
  • 2022年10月 / 2篇
  • 2022年9月 / 3篇
  • 2022年8月 / 3篇
  • 2022年7月 / 4篇
  • 2022年6月 / 5篇
  • 2022年5月 / 7篇
  • 2022年4月 / 22篇
  • 2022年3月 / 4篇
  • 2022年2月 / 9篇

COPYRIGHT © 2023 Janrs.com | 杨建勇. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

闽ICP备20002184号