摘要:
引言 只要你用Springboot,一定会用到各种spring-boot-starter。其实写一个spring-boot-starter,仅需4步。下面我们就写一个starter,它将实现,在日志中打印方法执行时间。 第一步 创建maven项目 在使用spring-boot-starter,会发现 阅读全文
posted @ 2021-09-25 22:56
ludongguoa
阅读(264)
评论(0)
推荐(0)
摘要:
Gson是Android解析Json的老牌子了,它的使用和原理也被大家研究的极其透彻了,可以说这是一个相当成熟的库。但是伴随kotlin的普及,有一个问题也越发明显地暴露了出来。 kotlin里有一个 data class 的概念,倒不是什么“黑科技”的东西,但是确实相当好用,它会自动生成hashc 阅读全文
posted @ 2021-09-25 22:54
ludongguoa
阅读(479)
评论(0)
推荐(0)
摘要:
注:单点登录原理是一个重要知识点,也常被问及,很多童鞋照葫芦画瓢搭建过单点登录,但是被问到原理时可能说不出来,下面简单介绍,抛砖引玉,希望对大家有所帮助。单点登录在现在的系统架构中广泛存在,他将多个子系统的认证体系打通,实现了一个入口多处使用,而在架构单点登录时,也会遇到一些小问题,在不同的应用环境 阅读全文
posted @ 2021-09-25 22:53
ludongguoa
阅读(95)
评论(0)
推荐(0)
摘要:
对于线上系统调优,它本身是个技术活,不仅需要很强的技术实战能力,很强的问题定位,问题识别,问题排查能力,还需要很丰富的调优能力。本篇文章从实战角度,从问题识别,问题定位,问题分析,提出解决方案,实施解决方案,监控调优后的解决方案和调优后的观察等角度来与大家一起交流分享本次线上高并发调优整个闭环过程。 阅读全文
posted @ 2021-09-25 22:52
ludongguoa
阅读(206)
评论(0)
推荐(0)
摘要:
最近与同行科技交流,经常被问到分库分表与分布式数据库如何选择,网上也有很多关于中间件+传统关系数据库(分库分表)与NewSQL分布式数据库的文章,但有些观点与判断是我觉得是偏激的,脱离环境去评价方案好坏其实有失公允。 本文通过对两种模式关键特性实现原理对比,希望可以尽可能客观、中立的阐明各自真实的优 阅读全文
posted @ 2021-09-25 22:51
ludongguoa
阅读(243)
评论(0)
推荐(0)
摘要:
今天是算法数据结构专题的第33篇文章,我们一起来聊聊最短路问题。 最短路问题也属于图论算法之一,解决的是在一张有向图当中点与点之间的最短距离问题。最短路算法有很多,比较常用的有bellman-ford、dijkstra、floyd、spfa等等。这些算法当中主要可以分成两个分支,其中一个是bellm 阅读全文
posted @ 2021-09-25 22:50
ludongguoa
阅读(146)
评论(0)
推荐(0)
摘要:
在日常开发中,我们使用 Redis 存储 key 时通常会设置一个过期时间,但是 Redis 是怎么删除过期的 key,而且 Redis 是单线程的,删除 key 会不会造成阻塞。要搞清楚这些,就要了解 Redis 的过期策略和内存淘汰机制。 Redis采用的是定期删除 + 懒惰删除策略。 定期删除 阅读全文
posted @ 2021-09-25 22:49
ludongguoa
阅读(830)
评论(0)
推荐(0)
摘要:
今天给大家讲一下卷积神经网络,主要包括四个部分:卷积神经网络的历史、全连接层、卷积层和池化层。CNN的英文全称是Convolutional Neural Network,雏形是LeCun在1998年发明的LeNet网络结构。LeNet网络架构那么到底什么是神经网络呢?应该说只要带有卷积层的就可以被叫 阅读全文
posted @ 2021-09-25 22:47
ludongguoa
阅读(439)
评论(0)
推荐(0)
摘要:
一、前言 IDEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具。 不是我说的喔,百度百科说的... IDEA 如此好用,插件库也是很强大的,俗话说:“工欲善其事必先利其器”,不安排几个插件都不好意思说你开发工具用的是 ID 阅读全文
posted @ 2021-09-25 22:46
ludongguoa
阅读(386)
评论(0)
推荐(0)
摘要:
缓存是最直接有效提升系统性能的手段之一。个人认为用好用对缓存是优秀程序员的必备基本素质。本文结合实际开发经验,从简单概念原理和代码入手,一步一步搭建一个简单的二级缓存系统。 一、通用缓存接口 1、缓存基础算法 FIFO(First In First Out),先进先出,和OS里的FIFO思路相同,如 阅读全文
posted @ 2021-09-25 22:44
ludongguoa
阅读(145)
评论(0)
推荐(0)
摘要:
有一类业务场景: (1)超高吞吐量,每秒要处理海量请求; (2)写多读少,大部分请求是对数据进行修改,少部分请求对数据进行读取; 这类业务,有什么实现技巧么? 接下来,一起听我从案例入手,娓娓道来。 快狗打车,场景举例:(1)司机地理位置信息会随时变化,可能每几秒钟地理位置要修改一次;(2)用户打车 阅读全文
posted @ 2021-09-25 22:43
ludongguoa
阅读(253)
评论(0)
推荐(0)
摘要:
Java虚拟机层面所暴露给我们的状态,与操作系统底层的线程状态是两个不同层面的事。具体而言,这里说的 Java 线程状态均来自于 Thread 类下的 State 这一内部枚举类中所定义的状态: 什么是 RUNNABLE? 直接看它的 Javadoc 中的说明: 一个在 JVM 中执行的线程处于这一 阅读全文
posted @ 2021-09-25 22:41
ludongguoa
阅读(91)
评论(0)
推荐(0)
摘要:
多朋友多次问到什么是网关、dns、子网掩码,三层交换机,它们定位的用途;确实,因为网络技术在弱电中确实应用非常广泛,我们平时在vip技术群中也是不断的讨论到网关、vlan、三层交换机或子网掩码等问题,今天我们就一起用通俗方式一次性了解清楚。 一、什么是vlan? VLAN中文是“虚拟局域网”。LAN 阅读全文
posted @ 2021-09-25 22:40
ludongguoa
阅读(1049)
评论(0)
推荐(0)
摘要:
国内现在有大量的公司都在使用 Elasticsearch,包括携程、滴滴、今日头条、饿了么、360安全、小米、vivo等诸多知名公司。除了搜索之外,结合Kibana、Logstash、Beats,Elastic Stack还被广泛运用在大数据近实时分析领域,包括日志分析、指标监控、信息安全等多个领域 阅读全文
posted @ 2021-09-25 22:39
ludongguoa
阅读(92)
评论(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
阅读(265)
评论(0)
推荐(0)
摘要:
本篇是这个系列的最后一篇文章,之前的文章主要讲的是基础原理部分(见上方专辑),在理解原理的基础上,介绍一些实用的技巧给大家,希望能提高大家的开发效率。 这篇文章因为更多的是列举实际应用的技巧,所以文章结构会显得散乱一些,也不会像前两篇文章那样要求大家顺序阅读。每个点都是互相独立的,大家可以根据自己的 阅读全文
posted @ 2021-09-25 22:36
ludongguoa
阅读(59)
评论(0)
推荐(0)
摘要:
目录 一、消息队列的特性二、为什么需要消息队列?三、使用消息队列有什么好处?四、为什么需要分布式?五、分布式环境下需要解决哪些问题?六、如何实现?七、常见消息队列对比和选型 一、消息队列的特性 业务无关,一个具有普适性质的消息队列组件不需要考虑上层的业务模型,只做好消息的分发就可以了,上层业务的不同 阅读全文
posted @ 2021-09-25 22:35
ludongguoa
阅读(450)
评论(0)
推荐(0)
摘要:
同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non-blocking IO 阅读全文
posted @ 2021-09-25 22:34
ludongguoa
阅读(197)
评论(0)
推荐(0)
摘要:
在Java中异步编程,不一定非要使用rxJava, Java本身的库中的CompletableFuture可以很好的应对大部分的场景。 这篇文章介绍 Java 8 的 CompletionStage API和它的标准库的实现 CompletableFuture。API通过例子的方式演示了它的行为,每 阅读全文
posted @ 2021-09-25 22:32
ludongguoa
阅读(142)
评论(0)
推荐(0)
摘要:
今天是算法数据结构专题的第35篇文章,我们来聊聊图论当中的强连通分量分解的Tarjan算法。 Kosaraju算法一看这个名字很奇怪就可以猜到它也是一个根据人名起的算法,它的发明人是S. Rao Kosaraju,这是一个在图论当中非常著名的算法,可以用来拆分有向图当中的强连通分量。 背景知识 这里 阅读全文
posted @ 2021-09-25 22:30
ludongguoa
阅读(152)
评论(0)
推荐(0)
摘要:
老板说 , 页面打开速度过慢? 页面加载性能不达标? 下面我们来看下各个大厂和团队的秒开经典方案,有没有一款适合你去探索? 本页面会列举和总结偏向与客户端结合的hybrid秒开方案,纯前端方案也会部分提及。 常用的加速方法 说起H5性能优化方案,是个老生常谈的话题,通常的web优化方法,基本围绕在资 阅读全文
posted @ 2021-09-25 22:28
ludongguoa
阅读(186)
评论(0)
推荐(0)
摘要:
一、数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看就是,可用数据库连接少甚至无连接可用。接下来就可以想象了吧(并发量、吞吐量、崩溃)。 1、IO瓶颈 第一种:磁盘读IO瓶颈,热点数据太多,数据库缓 阅读全文
posted @ 2021-09-25 14:34
ludongguoa
阅读(854)
评论(0)
推荐(0)
摘要:
大家好,这是一个全新的专题——设计模式。 其实可以选择的专题还有好几个,为什么选择设计模式呢?原因也很简单,首先是设计模式简单、易学。干货的文章固然好,但是普适性往往不强。另外一个很重要的点就是设计模式学习的好处非常明显,如果学得好的话,会觉得自己的编码能力有了质的突破。这并不是夸大其词,很多人包括 阅读全文
posted @ 2021-09-25 14:33
ludongguoa
阅读(103)
评论(0)
推荐(0)
摘要:
今天是数据处理专题的第10篇文章,我们继续来聊聊matplot这个工具库。 在上周的文章当中我们介绍了matplot的基本用法,以及展示了一些简单的例子,让大家直观地了解这个工具包。我们可以简单地将它理解成专门用来作图的工具,但是它作图的功能又非常强大,以至于并不能当成一个简单的内容来对待。道理也很 阅读全文
posted @ 2021-09-25 14:33
ludongguoa
阅读(107)
评论(0)
推荐(0)
摘要:
今天是git专题的第二篇,我们来介绍一下git的基本配置,以及建立一个git仓库的基本方法。 首先申明一点,本文不会介绍git的安装。一方面是大部分个人PC的系统当中都是已经装好了git的,另外一方面是git安装的教程和内容网上太多了,大同小异,所以这部分我们就略过了。如果你打开命令行输入git提示 阅读全文
posted @ 2021-09-25 14:32
ludongguoa
阅读(64)
评论(0)
推荐(0)
摘要:
引子 最近在好好了解http,发现对介绍http的第一句话【http协议是无状态的,无连接的】就无法理解了:无状态的【状态】到底指的是什么?!找了很多资料不仅没有发现有一针见血正面回答这个问题的,而且有些解释还充斥了各种错误,看着看着就觉得心里憋着一股浊气吐不出来于是在看了很多资料之后,我一口吐出浊 阅读全文
posted @ 2021-09-25 14:30
ludongguoa
阅读(187)
评论(0)
推荐(0)
摘要:
前几天马斯克在发布会上发表了neuralink最新的成果,他们成功地将芯片植入进了猪脑子(真的是猪脑子)当中,捕捉到了猪脑的电信号。这个消息一出,朋友圈直接沸腾了,很多公众号疯狂转发表示人工智能的时代要来了,还有很多人发出担忧,未来人工智能会不会真的统治人类,威胁到人类的生存呢? 所以今天这篇文章算 阅读全文
posted @ 2021-09-25 14:28
ludongguoa
阅读(481)
评论(0)
推荐(0)
摘要:
本系列,我们来看看在一种常见的组合游戏——回合制棋盘类游戏中,如何用算法来解决问题。首先,我们会介绍并解决搜索空间较小的问题,引入经典的博弈算法和相关理论,最终实现在大搜索空间中的Deep RL近似算法。在此基础上可以理解AlphaGo的原理和工作方式。本系列的第一篇,我们介绍3个Leetcode中 阅读全文
posted @ 2021-09-25 14:26
ludongguoa
阅读(1157)
评论(0)
推荐(0)
摘要:
一、前言 大家好,又到了Python办公自动化系列。 在日常的办公中,我们经常会从一堆不同格式的文件(夹)中搜索特定的文件,可能你是凭着记忆去找或是借助软件,但你有想过如何用Python实现吗?本文将基于几个常见的搜索操作讲解👇 「如何使用Python制作一款简易的文件搜索工具」 二、扫描路径内的 阅读全文
posted @ 2021-09-25 14:24
ludongguoa
阅读(343)
评论(0)
推荐(0)
摘要:
在遥远的希艾斯星球爪哇国塞沃城中,两名年轻的程序员正在为一件事情苦恼,程序出问题了,一时看不出问题出在哪里,于是有了以下对话: “Debug一下吧。” “线上机器,没开Debug端口。” “看日志,看看请求值和返回值分别是什么?” “那段代码没打印日志。” “改代码,加日志,重新发布一次。” “怀疑 阅读全文
posted @ 2021-09-25 14:23
ludongguoa
阅读(153)
评论(0)
推荐(0)
摘要:
PostgreSQL的逻辑复制对比物理复制的好处总结有以下几点1 灵活: 逻辑复制对比物理复制来说,可以单表进行数据的复制,物理复制则是不可以的,并且大部分时间对于ETL的功能需求来说,物理复制太重了,需要的磁盘,网络,等资源都相对于逻辑复制消耗的要大的多. 2 方便:逻辑复制相对于物理复制,设置会 阅读全文
posted @ 2021-09-25 14:22
ludongguoa
阅读(340)
评论(0)
推荐(0)
摘要:
大家好,欢迎来到周一git专题。 git clone 在上一篇文章当中我们聊了怎么在github当中创建一个属于自己的项目(repository),简称repo。除了建立自己的repo之外,我们更多的情况是拷贝别人的repo,这样才可以获得别人整理好的代码资料什么的,也更符合开源(白嫖)精神嘛。 这 阅读全文
posted @ 2021-09-25 14:21
ludongguoa
阅读(1042)
评论(0)
推荐(0)
摘要:
周末闲来无事,和大家随便聊聊。本来想写的题目是如何成为一个优秀的程序员,后来想想,我自己也未必能算得上。所以还是谦虚一点,就把题目改了。 我这次不写那些方法论或者是感受的东西,这些可能大家get不到,也未必喜欢。这次写一点实际的,只要照着做,基本上不会被认为是个菜鸟,在职场当中也不会踩雷。 相信小习 阅读全文
posted @ 2021-09-25 14:20
ludongguoa
阅读(92)
评论(0)
推荐(0)
摘要:
在生产库中一旦出现坏块就需要及时处理,比如需要确认坏块影响对象范围,对应数据文件是否备份,是否有足够旧的归档,针对不同对象如何恢复,本文给出一个完整的模拟过程,后续讨论了几种坏块恢复方式,以及文件是否备份,归档等的处理方法。我们做过这样的验证,手里有对应的脚本,再遇到类似问题就心里不慌了。 1 模拟 阅读全文
posted @ 2021-09-25 14:18
ludongguoa
阅读(424)
评论(0)
推荐(0)
摘要:
大家好,欢迎阅读周三算法数据结构专题,今天我们来聊聊一个新的数据结构,叫做线段树。 线段树这个数据结构很多人可能会有点蒙,觉得没有听说过,但是它非常非常有名,尤其是在竞赛圈,可以说是竞赛圈的必备技能。所以如果以后遇到有人看了一点算法导论就在你面前装逼,你就可以问他:请问线段树更新的复杂度是多少? 不 阅读全文
posted @ 2021-09-25 14:17
ludongguoa
阅读(96)
评论(0)
推荐(0)
摘要:
并发控制是多个事务在并发运行时,数据库保证事务一致性(Consistency)和隔离性(Isolation)的一种机制。主流商用关系数据库使用的并发控制技术主要有三种:严格两阶段封锁(S2PL)、多版本并发控制(MVCC)和乐观并发控制(OCC)。PostgreSQL使用了多版本并发控制技术的一种变 阅读全文
posted @ 2021-09-25 14:16
ludongguoa
阅读(814)
评论(0)
推荐(0)
摘要:
最近,B 站上涌现出一波画风过于「生草」(B 站黑话,意为魔性搞笑)的视频,播放量动辄上百万,相当火爆。 技能满分的 Up 主们,利用「first order motion 一阶运动模型」的 AI 换脸项目,生成了各种各样画风清奇的视频。 比如,竟然让张学友、杜甫、唐僧、熊猫头表情包声情并茂地演唱《 阅读全文
posted @ 2021-09-25 14:14
ludongguoa
阅读(455)
评论(0)
推荐(0)
摘要:
大家好,欢迎大家阅读周四数据处理专题,我们继续介绍matplotlib作图工具。 在上一篇文章当中我们介绍了matplotlib这个包当中颜色、标记和线条这三种画图的设置,今天我们同样也介绍三种新的设置。分别是标题、轴标签以及图例,这三个内容也是非常实用并且常用的。颜色、线条、标记这些设置的是图像本 阅读全文
posted @ 2021-09-25 14:14
ludongguoa
阅读(747)
评论(0)
推荐(0)
摘要:
本文根据京东数科高级DBA&Apache ShardingSphere PMC 潘娟在ITPUB技术栈系列线上沙龙活动分享整理而成。近些年NewSQL概念盛行,国内外各大公司对NewSQL都有着不同的解读。本次ITPUB技术栈线上沙龙2020上,京东数科高级DBA潘娟分享了有关NewSQL理念、国内 阅读全文
posted @ 2021-09-25 14:12
ludongguoa
阅读(101)
评论(0)
推荐(0)
摘要:
阿里妹导读:用户只需在前端简单配置下指标,系统即可自动生成大宽表,让用户查询到他所需要的实时数据,数据源支持跨库并支持多种目标介质。这样的数据全局实时可视化如何实现?本文从需求分析开始,分享自动生成SQL功能开发中运用到的设计模式和数据结构算法设计。 文末福利:藏经阁100本电子书免费下载。 一 概 阅读全文
posted @ 2021-09-25 14:11
ludongguoa
阅读(328)
评论(0)
推荐(0)
摘要:
大家好,欢迎来到周四数据处理专题,我们今天继续matplotlib作图教程。 在上周的文章当中我们介绍了如何通过xlabel和ylabel设置坐标轴的名称,以及这两个函数的花式设置方法,可以设置出各种各样的名称显示方法。今天我们来介绍介绍其他的设置。 xlim、ylim 我们首先来介绍坐标轴的范围, 阅读全文
posted @ 2021-09-25 14:08
ludongguoa
阅读(526)
评论(0)
推荐(0)
摘要:
在数据查询中,对于有谓词的操作,优化器需要根据数据的分布情况,计算是走索引还是全表扫描,实现数据的Access方法的选择。所以就需要一种方法使得优化器知道该如何选择。直方图是统计学中的一个概念,通过数据的条块分割,统计出不同值的数据分布,比如某个列有10个不同的值,通过直方图可以计算(估计出)每个值 阅读全文
posted @ 2021-09-25 14:07
ludongguoa
阅读(166)
评论(0)
推荐(0)
摘要:
在之前的文章当中我们介绍了最基本的git add、git commit和git push的用法以及基本原理,还介绍了gitignore文件的设置方法,从而让我们可以使用git add .来添加我们想要的文件,而不必要手动区分。 今天我们继续来介绍几个git当中常用并且重要的命令,它们分别是git d 阅读全文
posted @ 2021-09-25 14:06
ludongguoa
阅读(66)
评论(0)
推荐(0)
摘要:
1.迷茫的小黑 小黑最近有点郁闷。 手头的工作不是特别喜欢,技术退步有点严重,于是想出去看看机会。 小黑通过朋友内推,前几天去北京CBD附近的一家名叫宇节蹦跶的公司面试,被一些问题三连击直接跪掉了。 大白安抚小黑说:"黑哥,你要知道没有好工作,只有好工人,其实哪儿都差不多,都是打工嘛!" 小黑说:" 阅读全文
posted @ 2021-09-25 14:05
ludongguoa
阅读(260)
评论(0)
推荐(0)
摘要:
最近有一些小伙伴给我留言说非常想要我开一个推荐系统专题,其实我也有过这个想法,一直没动笔主要有两个原因。第一个原因是担心自己水平不够,班门弄斧或者是误导了一些读者。第二个原因是,我的确不知道这个专题应该怎么写。但是读者有求,总得回应不是,所以咬着牙写了本文。 文章有点长,但是干货不少,希望大家能够耐 阅读全文
posted @ 2021-09-25 14:03
ludongguoa
阅读(92)
评论(0)
推荐(0)
摘要:
在之前的文章当中我们介绍了git merge的用法,明白了通过git merge我们可以合并两个分支的改动。这样我们就可以很方便地进行协同开发了,每个人都在自己的分支下开发代码,开发完毕之后再一起合并到master分支。通过这种方式可以保证大家的代码不会陷入混乱,但是这样有一个隐含的缺陷。 缺陷就是 阅读全文
posted @ 2021-09-25 14:02
ludongguoa
阅读(359)
评论(0)
推荐(0)
摘要:
今天我们来和大家聊聊随机数。 大家如果学过编程对于随机数应该都不陌生,应该或多或少都用到过。再不济我们每周的抽奖都是用随机数抽出来的,我们用随机数的时候,往往都会加一个前缀,说它是伪随机数,那么这个伪随机数的伪字该怎么解释,什么又是真随机数呢? 真伪随机数 目前学界划分真伪随机数的方式非常简单,一句 阅读全文
posted @ 2021-09-25 14:01
ludongguoa
阅读(502)
评论(0)
推荐(0)
摘要:
简介 ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,正式发布与2015年6月。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。 今天我们将会讲解一下ES6中引入的语法新特性。 ECMAScript和JavaSc 阅读全文
posted @ 2021-09-25 14:00
ludongguoa
阅读(77)
评论(0)
推荐(0)

浙公网安备 33010602011771号