Git 常用命令整理
✨ Git 是一款代码版本控制工具,常用于团队协作开发。本文主要是整理的一些常见的 Git 命令,这些命令覆盖了 Git 常用的操作场景,可以帮助开发者更好地使用 Git 进行版本控制和协作开发。
✨ Git 是一款代码版本控制工具,常用于团队协作开发。本文主要是整理的一些常见的 Git 命令,这些命令覆盖了 Git 常用的操作场景,可以帮助开发者更好地使用 Git 进行版本控制和协作开发。
✨ Kubernetes是一个用于自动部署、扩展和管理容器化应用程序的开源系统。它提供了许多命令行工具和图形用户界面,用于管理和监控Kubernetes集群。其中一些常用的工具包括OpenLens(用于集群概览和资源监控)、K9s(用于实时监控和资源编辑)、kubecm(用于KubeConfig管理)、krew(用于插件管理)等。 这些工具提供了集群状态、资源监控、配置管理、事件和日志显示、可扩展性、集群拓扑、资源编辑、实时监控、快速导航、详细信息查看、KubeConfig管理、插件管理、节点调试、Pod监控、资源关系展示、状态显示、资源分配查看、镜像管理、命令执行、服务访问、Secret管理、网络流量捕获、Ingress管理、YAML文件格式化、日志跟踪等功能。 因此,Kubernetes集群的管理工具和命令行工具提供了丰富的功能,可帮助用户更轻松地管理和监控其Kubernetes环境。
✨ 本文介绍了在 Kubernetes 中实现 Spring Cloud 微服务的优雅滚动更新。通过配置 Eureka 和 Ribbon 的参数来缩短服务注册信息的刷新间隔,并让网关在请求异常时重试一次。另外,通过设置 Pod 的 terminationGracePeriod 和 PreStop 钩子来主动下线旧版本的微服务,保证服务的平滑终止。最后,建议集成 Spring Cloud Kubernetes 来代替 Eureka,进一步提升服务升级的平滑度,实现无感知更新。
✨ 本文介绍了在 Spring Boot 项目中避免 XSS 漏洞的几种方式。首先,可以使用 Spring 框架提供的 HtmlUtils 类对特殊字符进行转义处理。其次,可以使用 Jsoup 库对 HTML 标签进行过滤,保留需要的标签并删除不必要的标签。另外,还可以通过装饰者模式结合过滤器或拦截器对请求参数进行过滤转义。最后,对于 JSON 形式传参的场景,可以定义一个全局的 JSON 反序列化器来进行处理。总之,通过这些方式可以有效地避免 Spring Boot 项目中的 XSS 漏洞。
✨ 这是一个关于我在 Linux 环境下使用的应用程序清单的简要记录。清单中包括了各种应用程序和插件,但不包括浏览器和集成开发环境(IDE)的扩展。 这些应用程序可以帮助我在 Linux 环境下进行开发、办公和日常使用。
✨ 在 Kubernetes (K8s) 的 Pod 中运行的应用,想要获取客户端的真实 IP 地址信息,可以通过检查 "X-Original-Forwarded-For" 请求头来获取。在 K8s 集群中,请求经过 Ingress Controller 处理后,会将真实的客户端 IP 地址添加到该请求头中。因此,应用需要通过提取该请求头来获取客户端 IP 信息。需要注意的是,在 Ingress 资源中配置 "nginx.ingress.kubernetes.io/proxy-real-ip-cidr" 注解来启用对该请求头的支持。通过这种方式,应用可以准确获取到客户端的 IP 地址信息。
✨ 在 IDEA 中,使用 @Autowired 注解会出现警告提示。这是由于最佳实践和设计原则导致的。字段注入方式虽然简洁方便,但存在一些问题,会增加应用程序与框架之间的紧耦合。为了消除警告,可以使用 @Resource 注解替换 @Autowired 注解。三种主要的依赖注入方式是:字段注入、构造函数注入和 Setter 方法注入。推荐使用构造函数注入,并可结合 lombok 来简化代码。
✨ 为 Docker 容器启用 IPv6 支持,需要在 Docker 守护进程中进行配置。在 /etc/docker/daemon.json 文件中添加以下内容:experimental 设置为 true,ipv6 设置为 true,ip6tables 设置为 true,fixed-cidr-v6 设置为一个子网。然后重启 Docker 服务。可以使用命令或 Docker Compose 创建支持 IPv6 的网络。在使用 IPv6 时需要注意修改 /etc/gai.conf 以使其优先级高于 IPv4。具体配置步骤可以参考上述文中的详细说明。
✨ eu.org 是一类免费域名,个人或非营利组织可以注册。注册流程包括:注册账号、申请域名、填写地址和联系信息、添加域名到 CloudFlare。在大陆使用时需要配合 HTTPS,并且在某些运营商下无法解析。
✨ OAuth 2.0 是一种开放标准的授权协议,用于应用程序访问其他网站上用户账户的权限管理。它提供了安全性、便利性和灵活性。OAuth 2.0 支持多种授权类型,包括授权码模式、隐式 / 简化模式、密码模式和客户端凭证模式。授权码模式是最常见的,用户会被重定向到授权服务器进行身份验证,并授权应用程序访问其账户。其他类型则不同程度上降低了安全性和交互性。开发过程中需要前端、后端和授权服务器三个模块来实现授权码模式。前端生成授权请求 URL,用户登录后会重定向到授权服务器,并返回授权码给前端。前端将授权码传递给后端,后端使用授权码交换访问令牌。授权服务器验证授权码,并返回访问令牌给后端。后端可以使用访问令牌来访问受保护的资源。这是一个简单的 OAuth 2.0 授权流程。