9 GavinYCF

尚未进行身份认证

我要认证

梦想起飞的地方

等级
TA的排名 3k+

Linux系统将服务器时间与网络时间同步

Linux系统将服务器时间与网络时间同步 登陆到服务器上,输入命令date可以查询服务器的时间,需要同步的时候需要安装ntpdate;1. 安装ntpdate工具 yum -y install ntp ntpdate2. 设置系统时间与网络时间同步ntpdate cn.pool.ntp.org3. 将系统时间写入硬件时间hwclock --systohc每一台服务器都执行一遍,再用date命令查询时间已经同步为一样的啦.转载于:https://www.c...

2020-09-12 15:03:39

kafka生产者Producer参数设置及参数调优建议-kafka 商业环境实战 kafka商业环境实战系列

kafka生产者Producer参数设置及参数调优建议-kafka 商业环境实战kafka商业环境实战系列本套系列博客从真实商业环境抽取案例进行总结和分享,并给出kafka商业应用的调优建议和集群环境容量规划等内容,请持续关注本套博客。版权声明:本套kafka调优系列版权归作者(秦凯新)所有,禁止转载,欢迎学习。作者:秦凯新 地址:于深圳kafka 商业环境实战-kafka生产环境规划 kafka 商业环境实战-kafka生产者和消费者吞吐量测试 kafka 商业环境实战-kafka

2020-08-31 16:44:00

容器JVM分配内存两种方式

容器JVM分配内存两种方式在启动命令添加参数方式一:添加JVM内存参数java -Xms512m -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=128m -jar test.jar-Xms:最小堆内存,默认是物理内存的1/64-Xmx:最大堆内存,默认是物理内存的1/4-XX:PermSize 非堆内存初始值,默认是物理内存的1/64-XX:MaxPermSize 最大非堆内存的大小,默认是物理内存的1/4方式二:配置感知参数自动感知容器资源限制来按

2020-08-19 18:20:42

JVM内存限制和调整

JVM内存限制和调整今天用java -jar执行一个jar文件提示内存不够,需要设置虚拟机的堆大小。以下是参考资料:堆(Heap)和非堆(Non-heap)内存  按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是J..

2020-08-19 18:15:33

docker JVM配置自动感知分配内存

docker JVM配置自动感知分配内存想象一下,你有一个32GB内存的节点,你想使用Docker运行一个限制为1GB的Java应用程序。如果未提供-Xmx参数,则JVM将使用其默认配置:JVM将检查总可用内存。因为JVM不知道Linux容器(特别是限制内存的控制组),所以它认为它在主机上运行并且可以访问完整的32GB可用内存。 默认情况下,JVM将使用MaxMemory / 4,在这种情况下为8GB(32GB / 4)。 随着堆大小的增长并超过1GB,容器将被Docker杀死。早期的Doc.

2020-08-19 18:04:25

Docker——JVM 感知容器的 CPU 和 Memory 资源限制

Docker——JVM 感知容器的 CPU 和 Memory 资源限制 前言对于那些在Java应用程序中使用Docker的CPU和内存限制的人来说,可能会遇到一些挑战。特别是CPU限制,因为JVM在内部透明地设置GC线程和JIT编译器线程的数量。这些可以通过命令行选项-XX:ParallelGCThreads和-XX:CICompilerCount显式设置。对于内存限制,也可以通过JVM命令行选项-Xmx显式设置最大Java堆大小。但是,在没有指定上述JVM命令行选项的情况...

2020-08-19 17:54:17

如何排查 Kubernetes 的内存增长问题

某用户生产环境的 kubernetes 节点遇到的一个问题,大概问题是这样的,用户反馈他的业务所在 pod 一在吃内存,内存占用高达 17 G 并且还是持续在增长。接到用户反馈后,我秒登 VPN ,进到用户的环境开始排查问题。当时想的思路是这样的,既然是内存问题,那先看看这个业务所在 pod 里面到底是哪个进程在吃内存吧。kubectlexec-itpod-nxxx/bin/bash执行 top 命令查看下当前 pod 正在运行的进程,发现在容器里面有一个 7 号进程 VSZ 占...

2020-08-18 18:21:49

idea实现svn拉分支和合并分支的教程

idea实现svn拉分支和合并分支的教程 今天测试了一下svn拉分支和合并分支的教程,决定分享给大家拉分支教程:1、选中某个你要拉分支的项目,右击2、然后会看到这个页面3、选择在svn上的分支路径时,需要注意如下:4、ok,至此如果不报错的情况下,就代表拉分支成功接下来是 切换到分支,进行分支上的代码的开发:切换分支的教程可以参考:http://blog.csdn.net/pltuyuhong/article/details/53068321然后进行分支上的代码,

2020-08-13 10:08:37

Java 锁Lock实例使用

Java 锁Lock实例使用synchronized和Lock区别:synchronized:(如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的线程释放锁)获取锁的线程释放锁情况:1、获取锁的线程执行完了该代码块,然后线程释放对锁的占有。2、线程执行发生异常,此时JVM会让线程自动释放锁。3、这个主要是在等待唤醒机制里面的wait()方法,在等待的时候立即释放锁,方便其他的线程使用锁。而且被唤醒时,就在此

2020-08-12 16:43:12

k8s pod自动重启原因(jvm内存设置)

k8s pod自动重启原因(jvm内存设置)k8s集群环境下,docker容器中运行镜像方式启动springboot项目。由于制作的镜像未对JVM的内存进行配置,那么 JVM 会默认设置堆栈的大小,这个大小是根据物理机的内存进行分配的。 那么物理机的内存越大,默认分配的内存就越大(最大堆栈=1/4 * 物理机内存,初始堆栈=1/64* 物理机内存)。JVM 是不知道自己在Docker容器中运行的,jvm识别的是物理主机的内存,而不是k8s给pod分配的内存或docker容器的内存。因此在没有..

2020-08-04 14:19:10

jvm在k8s中参数调整

jvm在k8s中参数调整作为一个jvm参数一直是手动调整的码农,本身对自动调整没啥感觉,类似gc线程数等参数都是手动调整的。后面发现这样的好处是各种参数可控,不好处就是调整一次太繁琐了。每一个进程都这么调整,工作量会变的特别大。所以使用默认的参数在前期跑起业务来的作用非常巨大。k8s的问题java进程跑在物理机的时候,就是我们常见的方法,啥也不设置,那么xmx默认就是物理机进程的四分之一。这个问题不大,当跑在k8s的时候,会有一些小意外。默认的gc线程数也是和cpu核数相关的。使用gc线

2020-08-04 13:36:22

k8s实用整理(18)-k8s存储之NFS

k8s实用整理(18)-k8s存储之NFS 1 NFS介绍NFS是Network File System的简写,即网络文件系统,NFS是FreeBSD支持的文件系统中的一种。NFS基于RPC(Remote Procedure Call)远程过程调用实现,其允许一个系统在网络上与它人共享目录和文件。通过使用NFS,用户和程序就可以像访问本地文件一样访问远端系统上的文件。NFS是一个非常稳定的,可移植的网络文件系统。具备可扩展和高性能等特性,达到了企业级应用质量标准。由于网络速度的增加和延迟的降低,NF

2020-07-31 14:10:25

Kubernetes-存储卷Volume

Kubernetes-存储卷Volume1、存储卷概述由于容器本身是非持久化的,因此需要解决在容器中运行应用程序遇到的一些问题。首先,当容器崩溃时,kubelet将重新启动容器,但是写入容器的文件将会丢失,容器将会以镜像的初始状态重新开始;第二,在通过一个Pod中一起运行的容器,通常需要共享容器之间一些文件。Kubernetes通过存储卷解决上述的两个问题。在Docker有存储卷的概念卷,但Docker中存储卷只是磁盘的或另一个容器中的目录,并没有对其生命周期进行管理。Kubernetes.

2020-07-31 14:02:16

自定义注解-aop实现日志记录

自定义注解-aop实现日志记录关于注解,平时接触的可不少,像是 @Controller、@Service、@Autowried 等等,不知道你是否有过这种疑惑,使用 @Service 注解的类成为我们的业务类,使用 @Controller 注解的类就成了请求的控制器,使用 @Autowried 注解的类就会帮我们实现自动注入…以前,我们只知道使用注解,今天我们要手写一个注解。一、以日志记录为例在没有使用注解实现记录日志之前,我们往往自己去调用日志记录的 Service,然后写入数据库表.

2020-07-31 10:48:21

Tomcat内存释放不了

Tomcat内存释放不了今天公司CMS的tomcat又挂掉了,之前挂了一次.出现以下错误,后来把tomcat的内存增大到1024严重: Exception initializing page contextjava.lang.OutOfMemoryError: Java heap space在tomcat\bin\catalina.bat的set CURRENT_DIR=%cd% 前面添加set JAVA_OPTS =-Xms512m -Xmx1024m意思:设置最小虚拟内存512,最大102

2020-07-31 10:45:06

k8s ingress高级配置,动态修改上传文件大小限制参数

k8s ingress高级配置,动态修改上传文件大小限制参数client_max_body_size通常情况下,service和pod的IP可以被集群网络访问。外部访问的所有流量被丢弃或转发到别处。ingress是允许入站连接到达群集服务的规则集合.可以为外部提供可访问服务的URL,流量负载均衡,可被终止的ssl连接,以及基于配置的虚拟主机。k8s ingress配置官网链接:https://github.com/kubernetes/ingress-nginx/blob/master/doc.

2020-07-28 15:54:25

详解Eureka 缓存机制

详解Eureka 缓存机制 原文:https://www.cnblogs.com/yixinjishu/p/10871243.html引言Eureka是Netflix开源的、用于实现服务注册和发现的服务。Spring Cloud Eureka基于Eureka进行二次封装,增加了更人性化的UI,使用更为方便。但是由于Eureka本身存在较多缓存,服务状态更新滞后,最常见的状况是:服务下线后状态没有及时更新,服务消费者调用到已下线的服务导致请求失败。本文基于Spring Cloud Eurek.

2020-07-23 17:48:49

ModifyRequestBodyGatewayFilterFactory获取并修改请求体

spring cloud gateway在GatewayFilter中获取并修改请求参数参考:https://blog.csdn.net/tianyaleixiaowu/article/details/83375246网上查询很多资料,但是都存在一些问题。后来仔细查看官方spring cloud gateway官方文档,发现它有提供相应拦截器官网api:https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.1.0.

2020-07-23 10:46:24

IntelliJ IDEA 2018.3 如何设置本地被修改文件-----提示与svn资源库不同的文件颜色显示

IntelliJ IDEA 在老板本中设置修改文件被修改颜色提示与2018.3不同,这里介绍2018.3版本的修改方式:————————————————版权声明:本文为CSDN博主「DL_jianglin」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/DL_jianglin/article/details/84951493...

2020-07-16 13:05:02

Idea 文件修改后提示星号 / 显示文件是否修改了

Idea 文件修改后提示星号 / 显示文件是否修改了 Eclipse 中,文件修改后没有保存前,文件都会有星号提示。Idea 默认没有这种提示,可以通过如下设置完成:Settings -> Editor -> General -> Editor Tabs,选中 "Mark modified (*)"...

2020-07-16 11:19:47

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。