03 2020 档案
摘要:代码如下: public class Demo{ public synchronized void m1(){ } public synchronized void m2(){ } } 存在两个问题 1. 多个线程分别访问m1()和m2()时是不能并行的。因为访问的锁是对象this。就算加上stat
阅读全文
摘要:在Java中有两类线程:用户线程 (User Thread)、守护线程 (Daemon Thread)。 所谓守护 线程,是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中不可或缺的部分。因此,当所有的非守护线程结束时,程序也就终止了
阅读全文
摘要:1. static关键字修饰变量 被static修饰的成员变量叫做静态变量,也叫做类变量,说明这个变量是属于这个类的,而不是属于是对象, 没有被static修饰的成员变量叫做实例变量,说明这个变量是属于某个具体的对象的。 public class Example{ private static in
阅读全文
摘要:集群 在多个服务器上部署同一个业务(不同的服务器运行同样的代码,干同一件事,可通过负载均衡实现) 通过多台计算机完成同一个工作,达到更高的效率。 两机或多机内容、工作过程等完全一样。如果一台死机,另一台可以起作用。 理解:一个军事团,所有的士兵就是一个服务器,每个人的业务都是一样(杀死敌人)。 分布
阅读全文
摘要:一、Metrics 在应用程序中,通常会记录日志以便事后分析,在很多情况下是产生了问题之后,再去查看日志,是一种事后的静态分析。在很多时候,我们可能需要了解整个系统在当前,或者某一时刻运行的情况,比如一个系统后台服务,我们可能需要了解一些实时监控的数据例如 1、每秒钟的请求数是多少(TPS)? 2、
阅读全文
摘要:注1:这个可能是孤立节点的监控,对于大系统,集群分布式,意义不大。 注2: 监控jvm, tomcat,Oracle随着JDK而发布,例如cup,内存,gc,线程等。 一、VisualVM VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带,能够监
阅读全文
摘要:包安装 sudo apt-get download libsss-nss-idmap0 下载deb包到当前目录dpkg -i *.deb 系统信息 lsb_release -a 查看linux发行版本 uname -a 查看内核信息 cat /proc/version grep MemTotal /
阅读全文
摘要:1. 创建startxxx.service service文件位置 /etc/systemd/system/ - Prio 1 /run/systemd/system/ - Prio 2 /lib/systemd/system/ - Prio 3 /usr/lib/systemd/system/ -
阅读全文
摘要:Oracle官网有一份指导说明:Oracle官网对Jvm调优的说明 方式一:如果用IDEA等开发工具,只需要将参数值设置到VM options中即可。 方式二:适用于在项目部署后,在启动的时候,采用脚本或者命令行运行的时候设置。 执行启动设置Jvm参数的操作。 $ java -jar -XX:Met
阅读全文
摘要:修改配置文件application.properties。SpringBoot项目详细的配置文件修改文档 其中比较重要的有: server.tomcat.max-connections=0 # Maximum number of connections that the server accepts
阅读全文
摘要:意思很明显就是主键重复了。 主键的配置是:PK NN AI 原因是我在数据库手动插入了数据,不管有没有插入id. stackoverflow有建议使用 @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; 实际证明不
阅读全文
摘要:方式一: TaskInfo t = new TaskInfo(); t.setDispatchNumber("DIS123456"); t.setSerialNumber("RS787878"); t.setTaskState(Constants.TASK_STATE_WAIT); String k
阅读全文