一、持续集成概念理解 白话理解:开发人员将自己写的代码提交到代码管理工具,通过以之前的代码进行整合,发现错误并修改; 持续集成(Continuous integration,简称CI),简单地说就是多个开发人员一天多次地将自己编码的代码提交到主干; 01:快速定位错误(每完成一点代码更新,就提交到主 ...
分类:
其他好文 时间:
2020-02-19 05:43:00
阅读次数:
76
问题 假设我们有 12 万条这样的 IP 区间与归属地的对应关系,如何快速定位出一个 IP 地址的归属地呢? 二分查找的变形 变体一:查找第一个值等于给定值的元素 1 public int bsearch(int[] a, int n, int value) { 2 int low = 0; 3 i ...
分类:
其他好文 时间:
2020-02-18 13:14:32
阅读次数:
82
前言: 内容有点长,但是都是十足的干货,请各位看官耐心批阅!“Write Once , Run Anywhere”。我相信每位Java人对这句话都不陌生,“一次编写,到处运行”,我们说这句话的底气就来自于 JVM( Java Virtual Machine)。 你可能花过很多精力学习 JVM 的知识 ...
分类:
编程语言 时间:
2020-02-07 13:13:42
阅读次数:
79
线上系统突然变得卡顿或无法访问,排除网络异常的情况下,检查服务器资源占用情况,如果CPU、内存、磁盘IO等资源占用过高,就会导致无法继续处理HTTP请求。 如果是CPU占用飙高,有可能是程序中存在死循环、死锁导致的,也有可能是内存紧张从而频繁GC导致的,要具体问题具体分析。 排查过程 这里记录一次线 ...
分类:
其他好文 时间:
2020-02-06 11:07:57
阅读次数:
75
目录 ConcurrentHashMap 2 预备知识 2 Hash 2 位运算 2 1.7中原理和实现 3 ConcurrentHashMap中的数据结构 3 初始化做了什么事? 4 在get和put操作中,是如何快速定位元素放在哪个位置的? 5 get()方法 6 put()方法 6 扩容操作 ...
分类:
其他好文 时间:
2020-02-02 21:44:59
阅读次数:
71
一、背景 以前都是单体应用,都在一个系统内完成。而现在都是微服务,一个请求进来,需要调用多个服务才能完成。出了问题,我们很难定位到底在哪个环节出了问题。 二、作用 1.快速定位问题。通过调用链监控系统,我们能很快定位到哪个服务出了问题。 2.项目拓扑图。当服务越来越复杂时,我们都无法准确知道服务之间 ...
分类:
其他好文 时间:
2020-01-31 01:08:08
阅读次数:
100
原调试debugwindbghangprocess explorer 前言 如果我们自己的程序的CPU Usage(CPU占用率)飙升,并且居高不下,很有可能陷入了死循环。你知道怎么快速定位并解决吗?今天跟大家分享几种定位方法,希望对你有所帮助。 如何判断是否有死循环? 通过电脑风扇的声音猜测。 如 ...
分类:
其他好文 时间:
2020-01-30 12:51:46
阅读次数:
399
约束 作用:是为了保证数据的完整性而实现的摘自一套机制,它具体的根据各个不同的数据库的实现而有不同的工具(约束); 非空约束:not null; 唯一约束:unique; 主键约束:primary key; 主键约束 = not null + unique 外键约束 自增约束:auto_increm ...
分类:
其他好文 时间:
2020-01-29 17:51:52
阅读次数:
78
摘要 在很多情况下,我们需要对GStreamer创建的Pipeline进行调试,来了解其运行机制以解决所遇到的问题。为此,GStreamer提供了相应的调试机制,方便我们快速定位问题。 查看调试日志 使用GST_DEBUG环境变量查看日志 GStreamer框架以及其插件提供了不同级别的日志信息,日 ...
分类:
其他好文 时间:
2020-01-22 16:29:19
阅读次数:
95
打印机打不了东西,发送过去的数据犹如石沉大海。到打印机那里发现,打印机一直在闪灯,就是一直在接收数据,卡住了。将打印机关掉重启后依然是这样,只要把网线扒掉就正常了。怀疑是有某台电脑出错了,一直在给打印机发送数据,导致其他人也无法正常打印。解决办法有:一台台电脑去看,找出有问题的电脑,取消掉打印即可,但是这样太费时费力了。作为一个偷懒的人,绝不能这样。于是就下载了某网络分析软件,将打印机的网线扒掉,
分类:
其他好文 时间:
2020-01-18 16:33:33
阅读次数:
379