隐逸居

  • 首页

  • 标签

  • 分类

  • 归档

  • 关于

  • 搜索

IntelliJ IDEA远程调试(Debug)Tomcat

发表于 2019-09-25

为什么需要这么做?

  • 解决 在我本地是好的啊 这个世界性难题~
  • 测试环境碰到问题,直接连上debug,不用再测试本地,再查看测试环境日志
  • 遇到一些诡异的问题,日志是看不出端倪的
  • 调试一些只能在测试环境执行的流程,如:调用微信/支付宝付款
阅读全文 »

LocalDateTime这么好,你还在犹豫什么?

发表于 2019-09-17 | 更新于 2019-09-25 | 分类于 Java

概述

在项目开发过程中经常遇到时间处理,但是你真的用对了吗,理解阿里巴巴开发手册中禁用static修饰SimpleDateFormat吗

通过阅读本篇文章你将了解到:

  • LocalDate、LocalTime、LocalDateTime有哪些优势?
  • java8新的时间API的使用方式,包括创建、格式化、解析、计算、修改
阅读全文 »

正则表达式入门介绍与使用

发表于 2019-09-16 | 分类于 正则

概述

什么是正则表达式?

正则表达式是一组由字母和符号组成的特殊文本, 它可以用来从文本中找出满足你想要的格式的句子.

一个正则表达式是在一个主体字符串中从左到右匹配字符串时的一种样式. “Regular expression”这个词比较拗口, 我们常使用缩写的术语”regex”或”regexp”. 正则表达式可以从一个基础字符串中根据一定的匹配模式替换文本中的字符串、验证表单、提取字符串等等.

阅读全文 »

JVM-Java内存区域

发表于 2019-09-12 | 分类于 JVM

概述

对于 Java 程序员来说,在虚拟机自动内存管理机制下,不再需要像 C/C++程序开发程序员这样为每一个 new 操作去写对应的 delete/free 操作,不容易出现内存泄漏和内存溢出问题。正是因为 Java 程序员把内存控制权利交给 Java 虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那么排查错误将会是一个非常艰巨的任务。

阅读全文 »

何谓悲观锁与乐观锁?

发表于 2019-09-10 | 分类于 面试

概述

乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展。这两种人各有优缺点,不能不以场景而定说一种人好于另外一种人。

阅读全文 »

【待完善】使用Guava RateLimiter限流入门到深入

发表于 2019-09-03 | 更新于 2019-09-10 | 分类于 高并发

前言

在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流

  • 缓存: 缓存的目的是提升系统访问速度和增大系统处理容量

  • 降级: 降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽掉,待高峰或者问题解决后再打开

  • 限流: 限流的目的是通过对并发访问/请求进行限速,或者对一个时间窗口内的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务、排队或等待、降级等处理

阅读全文 »

生命周期管理-索引策略配置与操作

发表于 2019-08-30 | 更新于 2019-09-04 | 分类于 Elasticsearch

概述

本文是在本人学习研究ElasticSearch的生命周期管理策略时,发现官方未提供中文文档,有的也是零零散散,此文主要是翻译官方文档Policy phases and actions模块。

注:基于6.7版本

索引生命周期中有四个阶段,按执行顺序排列。

名称 描述
hot 该索引正在积极写入
warm 索引通常不会被写入,但仍然会被查询
cold 索引不再更新,很少查询。信息仍然需要搜索,但如果这些查询速度较慢也没关系。
delete 不再需要索引,可以安全删除

​ 这些阶段中的每一个都称为阶段。策略不需要为索引配置每个阶段。例如,一个策略可以仅定义热阶段和删除阶段,而另一个策略可以定义所有四个阶段。

阅读全文 »

JDBC之PreparedStatement 详解

发表于 2019-08-27 | 更新于 2019-08-29 | 分类于 数据库

简介

PreparedStatement 是一个特殊的Statement对象,如果我们只是来查询或者更新数据的话,最好用PreparedStatement代替Statement,因为它有以下有点:

  1. 简化Statement中的操作
  2. 提高执行语句的性能
  3. 可读性和可维护性更好
  4. 安全性更好。
    阅读全文 »

数据库:浅谈DML、DDL、DCL的区别

发表于 2019-08-27 | 分类于 数据库

简介

SQL是一个标准的数据库语言,是面向集合的描述性非过程化语言。它功能强,效率高,简单易学易维护(迄今为止,我还没见过比它还好学的语言)。然而SQL语言由于以上优点,同时也出现了这样一个问题:它是非过程性语言,即大多数语句都是独立执行的,与上下文无关,而绝大部分应用都是一个完整的过程,显然用SQL完全实现这些功能是很困难的。

所以大多数数据库公司为了解决此问题,作了如下两方面的工作:

  1. 扩充SQL,在SQL中引入过程性结构;

  2. 把SQL嵌入到高级语言中,以便一起完成一个完整的应用。

阅读全文 »

数据库:drop、truncate、delete的区别

发表于 2019-08-27 | 更新于 2019-08-30 | 分类于 数据库

近日在删除数据时,发现除了常用的Delete & Drop语句之外,还有Truncate也是与删除数据相关的,针对上述三种有进行简单的比较与整理

用法

drop

用法:drop table 表名

  1. drop是DDL,会隐式提交,所以,不能回滚,不会触发触发器。

  2. drop语句删除表结构及所有数据,并将表所占用的空间全部释放。

  3. drop语句将删除表的结构所依赖的约束,触发器,索引,依赖于该表的存储过程/函数将保留,但是变为invalid状态。

阅读全文 »
123…5

feifuzeng

45 日志
19 分类
38 标签
GitHub E-Mail
© 2020 feifuzeng
由 Hexo 强力驱动 v3.8.0
|
主题 – NexT.Mist v7.1.1