备份 VisualSVN 版本库仓库
打开 Windows CMD 命令行,输入以下命令导出版本库;
more >>
生如蝼蚁当立鸿鹄之志, 命如薄纸应有不屈之心!
参考文章: Linux 日志切割神器 logrotate 原理介绍和配置详解
logrotate 是一个 linux 系统日志的管理工具。可以对单个日志文件或者某个目录下的文件按 时间/大小
进行切割,压缩操作;指定日志保存数量;还可以在切割之后运行自定义命令。
logrotate 是基于 crontab 运行的,所以这个时间点是由 crontab 控制的,具体可以查询 crontab 的配置文件 /etc/anacrontab
。系统会按照计划的频率运行 logrotate,通常是每天。在大多数的 Linux 发行版本上,计划每天运行的脚本位于 /etc/cron.daily/logrotate
。
由于redhat 的更新包只对注册的用户生效,所以需要自己手动更改成CentOS 的更新包,CentOS几乎和redhat是一样的,所以无需担心软件包是否可安装,下面是安装步骤。
more >>参考文档: FineBI
强烈建议手动配置 Xmx 参数,并且推荐内存修改在 8GB <= Xmx < 32 GB(一定要 < 32GB)或者40GB <= Xmx <= 64GB
1 | JAVA_OPTS="$JAVA_OPTS -Xms4g -Xmx8g -XX:PerBytecodeRecompilationCutoff=-1 -XX:PerMethodRecompilationCutoff=-1" |
注: -Xmx 配置在 32GB ~ 40GB 会导致性能问题严重,> 64GB 性能变差。
-XX:PerBytecodeRecompilationCutoff=-1
和-XX:PerMethodRecompilationCutoff=-1
参数是为了避免 JVM 的 Bug,JIT 的 Deoptimization 机制可能会导致运行缓慢。
增加 MaxDirectMemorySize 配置,MaxDirectMemorySize 参数为 NIO 最大堆外内存,若不配置,MaxDirectMemorySize
的大小即等于 -Xmx
1 | JAVA_OPTS="$JAVA_OPTS -XX:MaxDirectMemorySize=2g" |
配置 headless 模式参数,该参数只需在使用 Linux 下环境修改。
1 | JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true" |
配置垃圾收集器,建议仅使用默认的 Parallel Scavenge 收集器。
若使用了 CMS(-XX:+UseConcMarkSweepGC) /G1(-XX:+UseG1GC) 收集器,该收集器的 Full GC 是单线程的,可能会导致系统长时间无响应,如非必要,建议去掉「 UseConcMarkSweepGC / UseG1GC 」参数,即可使用默认的 Parallel Scavenge 收集器。
可以通过以下方法查看当前使用的垃圾收集器
1 | % java -XX:+PrintCommandLineFlags -version |
修改 vm.max_map_count
参数
max_map_count 文件包含限制一个进程可以拥有的 VMA(虚拟内存区域)的数量。虚拟内存区域是一个连续的虚拟地址空间区域。在进程的生命周期中,每当程序尝试在内存中映射文件,链接到共享内存段,或者分配堆空间的时候,这些区域将被创建。
调优这个值将限制进程可拥有 VMA 的数量。限制一个进程拥有 VMA 的总数可能导致应用程序出错,因为当进程达到了 VMA 上线但又只能释放少量的内存给其他的内核进程使用时,操作系统会抛出内存不足的错误。
建议调整 vm.max_map_count 参数的值为 262144 ,以免 VMA 数量到了默认的上限,导致 JVM 进程崩溃。
为 Tomcat 设置环境变量,创建 /usr/local/tomcat/bin/setenv.sh 文件,内容如下
more >>主机名 | IP地址 | 角色 | 软件 |
---|---|---|---|
nacos-1 | 192.168.200.13 | nacos, mysql-master | nacos, mysql |
nacos-2 | 192.168.200.14 | nacos, mysql-slave | nacos, mysql |
nacos-3 | 192.168.200.15 | nacos, nginx | nacos, nginx |
由于现在需要部署 nginx 的 Pod 服务,希望 nginx 配置文件里面有关 proxy_pass
的配置在启动服务前动态修改。但是由于 nginx 的配置文件不支持使用环境变量。网上找了好些方案,最终选择使用 envsubst
的方式改写 nginx 配置文件。
envsubst
是一个非常好用的工具,尤其善于处理和环境变量相关的事务。
通常我们需要获取某一个或者几个环境去替换系统中的某些变量,这种情况下我们只需使用sed去简单的替换掉即可,在这种场景中,sed就可以满足我们的需求,但是如果我们需要修改的变量较多,而且不确定到底有哪些变量时,envsubst就排上了用场
envsubst 的使用方法如下: original_file
为模板文件, destination_file
为使用变量后生成的目标文件
1 | envsubst < original_file > destination_file |
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia-plus根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true