摘要: 引言 只要你用Springboot,一定会用到各种spring-boot-starter。其实写一个spring-boot-starter,仅需4步。下面我们就写一个starter,它将实现,在日志中打印方法执行时间。 第一步 创建maven项目 在使用spring-boot-starter,会发现 阅读全文
posted @ 2021-09-25 22:56 ludongguoa 阅读(228) 评论(0) 推荐(0) 编辑
摘要: Gson是Android解析Json的老牌子了,它的使用和原理也被大家研究的极其透彻了,可以说这是一个相当成熟的库。但是伴随kotlin的普及,有一个问题也越发明显地暴露了出来。 kotlin里有一个 data class 的概念,倒不是什么“黑科技”的东西,但是确实相当好用,它会自动生成hashc 阅读全文
posted @ 2021-09-25 22:54 ludongguoa 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 注:单点登录原理是一个重要知识点,也常被问及,很多童鞋照葫芦画瓢搭建过单点登录,但是被问到原理时可能说不出来,下面简单介绍,抛砖引玉,希望对大家有所帮助。单点登录在现在的系统架构中广泛存在,他将多个子系统的认证体系打通,实现了一个入口多处使用,而在架构单点登录时,也会遇到一些小问题,在不同的应用环境 阅读全文
posted @ 2021-09-25 22:53 ludongguoa 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 对于线上系统调优,它本身是个技术活,不仅需要很强的技术实战能力,很强的问题定位,问题识别,问题排查能力,还需要很丰富的调优能力。本篇文章从实战角度,从问题识别,问题定位,问题分析,提出解决方案,实施解决方案,监控调优后的解决方案和调优后的观察等角度来与大家一起交流分享本次线上高并发调优整个闭环过程。 阅读全文
posted @ 2021-09-25 22:52 ludongguoa 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 最近与同行科技交流,经常被问到分库分表与分布式数据库如何选择,网上也有很多关于中间件+传统关系数据库(分库分表)与NewSQL分布式数据库的文章,但有些观点与判断是我觉得是偏激的,脱离环境去评价方案好坏其实有失公允。 本文通过对两种模式关键特性实现原理对比,希望可以尽可能客观、中立的阐明各自真实的优 阅读全文
posted @ 2021-09-25 22:51 ludongguoa 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 今天是算法数据结构专题的第33篇文章,我们一起来聊聊最短路问题。 最短路问题也属于图论算法之一,解决的是在一张有向图当中点与点之间的最短距离问题。最短路算法有很多,比较常用的有bellman-ford、dijkstra、floyd、spfa等等。这些算法当中主要可以分成两个分支,其中一个是bellm 阅读全文
posted @ 2021-09-25 22:50 ludongguoa 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 在日常开发中,我们使用 Redis 存储 key 时通常会设置一个过期时间,但是 Redis 是怎么删除过期的 key,而且 Redis 是单线程的,删除 key 会不会造成阻塞。要搞清楚这些,就要了解 Redis 的过期策略和内存淘汰机制。 Redis采用的是定期删除 + 懒惰删除策略。 定期删除 阅读全文
posted @ 2021-09-25 22:49 ludongguoa 阅读(786) 评论(0) 推荐(0) 编辑
摘要: 今天给大家讲一下卷积神经网络,主要包括四个部分:卷积神经网络的历史、全连接层、卷积层和池化层。CNN的英文全称是Convolutional Neural Network,雏形是LeCun在1998年发明的LeNet网络结构。LeNet网络架构那么到底什么是神经网络呢?应该说只要带有卷积层的就可以被叫 阅读全文
posted @ 2021-09-25 22:47 ludongguoa 阅读(385) 评论(0) 推荐(0) 编辑
摘要: 一、前言 IDEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具。 不是我说的喔,百度百科说的... IDEA 如此好用,插件库也是很强大的,俗话说:“工欲善其事必先利其器”,不安排几个插件都不好意思说你开发工具用的是 ID 阅读全文
posted @ 2021-09-25 22:46 ludongguoa 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 缓存是最直接有效提升系统性能的手段之一。个人认为用好用对缓存是优秀程序员的必备基本素质。本文结合实际开发经验,从简单概念原理和代码入手,一步一步搭建一个简单的二级缓存系统。 一、通用缓存接口 1、缓存基础算法 FIFO(First In First Out),先进先出,和OS里的FIFO思路相同,如 阅读全文
posted @ 2021-09-25 22:44 ludongguoa 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 有一类业务场景: (1)超高吞吐量,每秒要处理海量请求; (2)写多读少,大部分请求是对数据进行修改,少部分请求对数据进行读取; 这类业务,有什么实现技巧么? 接下来,一起听我从案例入手,娓娓道来。 快狗打车,场景举例:(1)司机地理位置信息会随时变化,可能每几秒钟地理位置要修改一次;(2)用户打车 阅读全文
posted @ 2021-09-25 22:43 ludongguoa 阅读(205) 评论(0) 推荐(0) 编辑
摘要: Java虚拟机层面所暴露给我们的状态,与操作系统底层的线程状态是两个不同层面的事。具体而言,这里说的 Java 线程状态均来自于 Thread 类下的 State 这一内部枚举类中所定义的状态: 什么是 RUNNABLE? 直接看它的 Javadoc 中的说明: 一个在 JVM 中执行的线程处于这一 阅读全文
posted @ 2021-09-25 22:41 ludongguoa 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 多朋友多次问到什么是网关、dns、子网掩码,三层交换机,它们定位的用途;确实,因为网络技术在弱电中确实应用非常广泛,我们平时在vip技术群中也是不断的讨论到网关、vlan、三层交换机或子网掩码等问题,今天我们就一起用通俗方式一次性了解清楚。 一、什么是vlan? VLAN中文是“虚拟局域网”。LAN 阅读全文
posted @ 2021-09-25 22:40 ludongguoa 阅读(1025) 评论(0) 推荐(0) 编辑
摘要: 国内现在有大量的公司都在使用 Elasticsearch,包括携程、滴滴、今日头条、饿了么、360安全、小米、vivo等诸多知名公司。除了搜索之外,结合Kibana、Logstash、Beats,Elastic Stack还被广泛运用在大数据近实时分析领域,包括日志分析、指标监控、信息安全等多个领域 阅读全文
posted @ 2021-09-25 22:39 ludongguoa 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 系统为 Redhat 7.4 数据库为 Redis 5.0.8 1. redis集群规划 节点编号IP地址端口节点类型配置文件 1 172.18.95.83 6379 主 /home/redis/cluster/6379/redis_6379.conf 2 172.18.95.84 6379 主 / 阅读全文
posted @ 2021-09-25 22:38 ludongguoa 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 本篇是这个系列的最后一篇文章,之前的文章主要讲的是基础原理部分(见上方专辑),在理解原理的基础上,介绍一些实用的技巧给大家,希望能提高大家的开发效率。 这篇文章因为更多的是列举实际应用的技巧,所以文章结构会显得散乱一些,也不会像前两篇文章那样要求大家顺序阅读。每个点都是互相独立的,大家可以根据自己的 阅读全文
posted @ 2021-09-25 22:36 ludongguoa 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 目录 一、消息队列的特性二、为什么需要消息队列?三、使用消息队列有什么好处?四、为什么需要分布式?五、分布式环境下需要解决哪些问题?六、如何实现?七、常见消息队列对比和选型 一、消息队列的特性 业务无关,一个具有普适性质的消息队列组件不需要考虑上层的业务模型,只做好消息的分发就可以了,上层业务的不同 阅读全文
posted @ 2021-09-25 22:35 ludongguoa 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non-blocking IO 阅读全文
posted @ 2021-09-25 22:34 ludongguoa 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 在Java中异步编程,不一定非要使用rxJava, Java本身的库中的CompletableFuture可以很好的应对大部分的场景。 这篇文章介绍 Java 8 的 CompletionStage API和它的标准库的实现 CompletableFuture。API通过例子的方式演示了它的行为,每 阅读全文
posted @ 2021-09-25 22:32 ludongguoa 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 今天是算法数据结构专题的第35篇文章,我们来聊聊图论当中的强连通分量分解的Tarjan算法。 Kosaraju算法一看这个名字很奇怪就可以猜到它也是一个根据人名起的算法,它的发明人是S. Rao Kosaraju,这是一个在图论当中非常著名的算法,可以用来拆分有向图当中的强连通分量。 背景知识 这里 阅读全文
posted @ 2021-09-25 22:30 ludongguoa 阅读(111) 评论(0) 推荐(0) 编辑