目录

    主要记录最近遇到的一些开发问题,解决方法。

    1. 重启 Kubernetes 中的 Job 任务

    kubectl -n {NAMESPACE} get job {JOB_NAME} -o json | jq 'del(.spec.selector)' | jq 'del(.spec.template.metadata.labels)' | kubectl replace --force -f -
    

    如果提示没有找到 jq 命令,需要先按照 jq ,yum install -y jq

    2. DNS 的 SPF 记录

    在发送邮件时,由于发件人可以任意指定,收件人无法验证发件人是否真实。SPF 就是为了解决伪造发件人问题。

    例如,收件方收到来自主机 IP 10.10.10.10 的邮件,声称发件人为 [email protected]。为了验证发件人信息,收件方会去查询 SPF 记录,是否允许 IP 10.10.10.10 的主机发送邮件。如果不允许,则退信或当作垃圾邮件。

    相关原理和配置可以参考文档,SPF 记录:原理、语法及配置方法简介

    3. 在 Docker 中运行 Java 项目问题

    JVM 不知道运行在容器中,误将物理资源当做容器的可用资源,Java 10 才解决这个问题,

    其他版本处理办法:

    • java5/6/7/8u131-,添加启动参数
    -Xmx`cat /sys/fs/cgroup/memory/memory.limit_in_bytes`
    
    • java8u131+和java9+,添加启动参数
    -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap
    

    参考链接:容器(docker)中运行java需关注的几个小问题