随笔分类 - Microservices
使用微服务架构,将应用程序构建为独立的组件,并将每个应用程序进程作为一项服务运行。这些服务使用轻量级 API 通过明确定义的接口进行通信。这些服务是围绕业务功能构建的,每项服务执行一项功能。由于它们是独立运行的,因此可以针对各项服务进行更新、部署和扩展,以满足对应用程序特定功能的需求。
摘要:一、请求相关指标 HTTP请求总量(Counter类型) 指标名称:通常以http_requests_total命名,建议以_total作为后缀。 用途:记录应用接收到的HTTP请求总数。这是一个累积值,只会增加,除非系统重启。 分析:通过PromQL的rate函数,可以计算出单位时间内(如每秒)的
阅读全文
摘要:卷(Volume)和绑定挂载(Bind Mount)都是Docker中用于将主机上的数据与容器内的数据进行关联的机制,但它们在实现方式和性能表现上有所不同。 卷(Volume): 直接操作宿主机磁盘:虽然卷最终的数据存储在宿主机的磁盘上,但卷是由Docker管理的抽象层。Docker在宿主机上创建一
阅读全文
摘要:1、拉取Redis镜像 docker pull redis:6.2 选了一个较为稳定的version 2、创建配置文件 比如在服务器的用户目录下/home/w/(俺的服务器用户目录) mkdir redis_cluster cd redis_cluster mkdir bin mkdir conf
阅读全文
摘要:创建docker网络 docker network create redis-cluster 列表展示所有docker网络 docker network ls 清理无用网络 docker network prune 删除指定网络 docker network rm redis-cluster 查看某
阅读全文
摘要:下载 https://github.com/docker/compose/releases 服务器下载很慢,建议本地下载,然后通过FileZilla上传至服务器 mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose chmod +x
阅读全文
摘要:前提是当前系统具备Docker环境 # 在项目根路径下,根据Dockerfile构建一个Docker镜像 docker build -t mygolang-app . # 如果你的服务器上运行了 Docker Registry,可以用 docker tag 和 docker push 直接推送到私有
阅读全文
摘要:Snowflake(雪花算法): 适用场景:小型微服务架构 特点:Snowflake算法由Twitter开发,能够生成64位的唯一ID,由时间戳、数据中心ID、机器ID和序列号组成。它不依赖于外部系统,可以在本地生成ID,因此适用于小型或中等规模的微服务架构,特别是在对ID生成性能要求不是极端高的情
阅读全文
摘要:准备工作: 服务器配置:2c8g,最好大于等于8g否则可能内存不足 系统环境:CentOS Linux release 7.9.2009 (Core) 安装包:gitlab-ce-11.1.1-ce.0.el7.x86_64.rpm 和 gitlab-runner-11.1.1-1.x86_64.r
阅读全文
摘要:官方文档给出的下载链接,貌似下不动。 因此选择使用清华大学的镜像站来下载社区版的GitLab https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/ 查看可用版本 yum list gitlab-ce --showduplicates 安装指定版本(不
阅读全文
摘要:在微服务架构中,多个节点都单独部署了应用,那么对于应用中的定时任务应该如何避免重复执行呢? 从抽象层面而言,这似乎是一个并发问题,但实际上这是一个选举问题: 1.任务必须执行且仅执行一次(不能重复) 2.当某个微服务实例故障,其他实例仍然可以执行定时任务(故障转移) 3.当某个实例在执行任务过程中失
阅读全文
摘要:限流场景 保护系统资源:限流可用于保护系统资源,防止系统被过度请求而导致资源耗尽或系统崩溃。例如,限制对数据库、缓存、消息队列等关键资源的访问速率,以确保系统的稳定性和可用性。 防止恶意攻击:限流可用于防止恶意攻击和恶意请求,如暴力破解、DDoS 攻击等。通过限制来自单个 IP 地址或单个用户的请求
阅读全文
摘要:yum remove docker-ce docker-ce-cli containerd.io // 卸载docker yum install -y yum-utils // 扩展和增强 yum 包管理器 # 配置docker社区版安装源(aliyun镜像源) yum-config-manager
阅读全文
摘要:微服务系统搭建大致顺序: 建立父项目打包为pom上传到私服Maven 子项目在pom.xml中继承父项目的(公共)依赖 安装Nacos,所有服务都注册到Nacos 搭建Gateway,Gateway是外部请求的统一入口 安装Sentinel,Sentinel会监控经过Gateway的全部流量,实现流
阅读全文
摘要:在微服务系统中,服务被拆分成若干个项目,而这些子项目都有一个共同的父项目,以使用公共依赖,搭建子项目只需继承父项目的依赖即可。而这些公共依赖需要上传到一个在线Maven私服,子项目在构建时就能成功引入公共依赖。Maven私服的还具有节省带宽,加快Maven构建速度等优点。 其实我们个人下载的Mave
阅读全文
摘要:编辑startup.cmd文件 将模式从cluster改为standalone 插入一行指定你的JAVA_HOME路径set JAVA_HOME="C:\dev_files\jdk17" 如果启动时仍然报错: Caused by: org.springframework.beans.factory.
阅读全文
摘要:首先搭建Maven私服,参考我另一篇博客 新建父工程project,删除所有文件,仅保留pom.xml,并做出如下修改,可直接复制粘贴,切记调整你为自己项目的groupId和artifactId <?xml version="1.0" encoding="UTF-8"?> <project xmln
阅读全文

浙公网安备 33010602011771号