上一页 1 2 3 4 5 6 7 8 9 10 ··· 13 下一页

2021年11月30日

摘要: 前言 在实际的开发项目中,一个对外暴露的接口往往会面临很多次请求,我们来解释一下幂等的概念:任意多次执行所产生的影响均与一次执行的影响相同。按照这个含义,最终的含义就是 对数据库的影响只能是一次性的,不能重复处理。如何保证其幂等性,通常有以下手段: 1、数据库建立唯一性索引,可以保证最终插入数据库的 阅读全文
posted @ 2021-11-30 20:35 licj的博客 阅读(428) 评论(0) 推荐(0) 编辑

2021年11月1日

摘要: 异步调用几乎是处理高并发Web应用性能问题的万金油,那么什么是“异步调用”? “异步调用”对应的是“同步调用”,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行;异步调用指程序在顺序执行时,不等待异步调用的语句返回结果就执行后面的程序。 同步调用 下面通过一个简 阅读全文
posted @ 2021-11-01 00:59 licj的博客 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 引言 在开发中,往往会遇到一些关于延时任务的需求。例如 生成订单30分钟未支付,则自动取消 生成订单60秒后,给用户发短信 对上述的任务,我们给一个专业的名字来形容,那就是延时任务 。那么这里就会产生一个问题,这个延时任务 和定时任务 的区别究竟在哪里呢?一共有如下几点区别 定时任务有明确的触发时间 阅读全文
posted @ 2021-11-01 00:32 licj的博客 阅读(1245) 评论(0) 推荐(0) 编辑
摘要: Controller层 VS Service层 一般推荐与业务无关的放在Controller层中进行校验,而与业务有关的放在Service层中进行校验。 那么如何将参数校验写的优雅美观呢,如果都是if - else,就感觉代码写的很low 常用校验工具类 使用Hibernate Validate 引 阅读全文
posted @ 2021-11-01 00:25 licj的博客 阅读(347) 评论(0) 推荐(0) 编辑

2021年9月30日

摘要: 一、写在前面 ES(Elasticsearch下文统一称为ES)越来越多的企业在业务场景是使用ES存储自己的非结构化数据,例如电商业务实现商品站内搜索,数据指标分析,日志分析等,ES作为传统关系型数据库的补充,提供了关系型数据库不具备的一些能力。 ES最先进入大众视野的是其能够实现全文搜索的能力,也 阅读全文
posted @ 2021-09-30 16:11 licj的博客 阅读(381) 评论(0) 推荐(0) 编辑
摘要: Redis 使用规范围绕如下几个纬度展开: 键值对使用规范; 命令使用规范; 数据保存规范; 运维规范。 键值对使用规范 有两点需要注意: 好的 key 命名,才能提供可读性强、可维护性高的 key,便于定位问题和寻找数据。 value要避免出现 bigkey、选择高效的序列化和压缩、使用对象共享池 阅读全文
posted @ 2021-09-30 15:53 licj的博客 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 远程调试,特别是当你在本地开发的时候,你需要调试服务器上的程序时,远程调试就显得非常有用。 JAVA 支持调试功能,本身提供了一个简单的调试工具JDB,支持设置断点及线程级的调试同时,不同的JVM通过接口的协议联系,本地的Java文件在远程JVM建立联系和通信。下面是Intellij IDEA远程调 阅读全文
posted @ 2021-09-30 15:45 licj的博客 阅读(1902) 评论(0) 推荐(0) 编辑

2021年8月31日

摘要: 领域接口化设计 把服务对象(service)和资源库对象(repository)设计成接口是最常见的。但是这对接口化的认识还远远不够,我们需要更深入地去分析接口化设计和更全面地应用接口化编程。所以我们要讨论的是全面接口化,尤其是对领域模型接口化的认识。 领域接口化 通常的情况下我们会把领域模型设计成 阅读全文
posted @ 2021-08-31 22:39 licj的博客 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 一、数据库为什么需要锁? 为了保证数据的一致性。mysql数据库存在多种数据引擎,MySQL各存储引擎使用了三种类型(级别)的锁定机制:表级锁定,行级锁定和页级锁定。 二、表级锁 1.表级锁(表级锁一次会将整个表锁定,所可以很好的避免死锁问题) (1)锁定粒度大,锁冲突概率高、并发度低; (2)好处 阅读全文
posted @ 2021-08-31 22:28 licj的博客 阅读(118) 评论(0) 推荐(0) 编辑
摘要: Nginx 是如何实现高并发的? 异步,非阻塞,使用了epoll 和大量的底层代码优化。 如果一个server采用一个进程负责一个request的方式,那么进程数就是并发数。正常情况下,会有很多进程一直在等待中。 而nginx采用一个master进程,多个woker进程的模式。 master进程主要 阅读全文
posted @ 2021-08-31 22:19 licj的博客 阅读(268) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 13 下一页

导航