分类 架构 中的文章

技术选型详解:Go、Python、Node+Vue、UniApp、Java 各自的适用场景与侧重点

前言

经常有朋友问新项目该用什么语言。没有「最好的语言」,只有合不合适,同一个业务用不同栈做,成本差出几倍很正常。这篇把五种常见技术栈放一起,说说各自擅长什么、不擅长什么、什么场景该用它,最后给几个组合搭配的建议。

1、Go:云原生和高并发服务

擅长:微服务/API 网关、中间件(消息队列、注册中心)、CLI 工具、DevOps 基建(Docker/K8s 本身就是 Go 写的)、高并发 IO 密集服务。

……

阅读全文

LVS+Keepalived原理与安装配置实战

前言

LVS + Keepalived 是经典的四层负载均衡高可用方案:LVS 负责流量转发,Keepalived 负责健康检查与主备切换。这篇整理两者的原理与完整安装配置过程(文中的 IP 均为示例地址)。

一、Keepalived 的三种工作方式

Keepalived 工作在 IP/TCP 协议栈的 IP 层、TCP 层及应用层,对应 Layer3、Layer4、Layer7 三种检测方式:

  • Layer3(IP层):Keepalived 定期向服务器群中的服务器发送 ICMP 数据包(即 Ping),如果发现某台服务器的 IP 地址没有激活,便报告这台服务器失效并将它从服务器群中剔除。典型例子是某台服务器被非法关机。Layer3 以服务器的 IP 地址是否有效作为服务器工作正常与否的标准。
  • Layer4(TCP层):主要以 TCP 端口的状态来决定服务器工作是否正常。如 web server 的服务端口一般是 80,如果 Keepalived 检测到 80 端口没有启动,则将这台服务器从服务器群中剔除。
  • Layer7(应用层):工作在具体的应用层,比 Layer3、Layer4 要复杂一点,在网络上占用的带宽也要大一些。Keepalived 根据用户的设定检查服务器程序的运行是否正常(例如请求一个特定 URL 比对返回内容),与设定不符则剔除。

二、LVS 安装(Active/Standby 模式)

LVS 部署两台,为 Active/Standby 模式:

……

阅读全文

最近文章

分类

标签

其它