摘要: SnowJena What 基于令牌桶算法和漏桶算法实现的纳秒级分布式无锁限流框架,支持熔断降级,支持流量塑型,支持动态配置规则,支持可视化监控,开箱即用。 A nanosecond distributed lock free current limiting plug in based on to阅读全文
posted @ 2019-04-21 20:14 薛勤 阅读(609) 评论(2) 编辑
摘要: Java应用性能远程监控系统(使用C/S架构) 适用于监控所有Java应用,具有堆内存监控、方法区监控、GC监控、类加载监控、类编译监控与线程监控,提供堆快照下载,线程快照下载。体验网址: "http://116.85.23.6:8888/" 一、简介 JavaMonitor 发布之后,受到了很多网阅读全文
posted @ 2018-11-14 20:02 薛勤 阅读(2770) 评论(2) 编辑
摘要: 1.简介 AiPa 是一款小巧,灵活,扩展性高的多线程爬虫框架。 AiPa 依赖当下最简单的HTML解析器Jsoup。 AiPa 只需要使用者提供网址集合,即可在多线程下自动爬取,并对一些异常进行处理。 2.Maven 直接引入 3.如何使用 先来看下一个简单完整的示例程序: 必须实现的接口 mai阅读全文
posted @ 2018-09-27 17:33 薛勤 阅读(1345) 评论(6) 编辑
摘要: 如果你还不了解现在的前后端分离,推荐阅读淘宝前端团队的 "前后端分离的思考与实践" 1、问题 随着现在整个软件开发行业的发展,在开发模式上逐渐由以前的一个人完成服务端和前端web页面,演变为前端和后端逐渐分离的趋势。在安卓、IOS等移动设备开发基本已经成型,前后端达到了完全分离。可是在web网站开发阅读全文
posted @ 2018-09-06 21:01 薛勤 阅读(3378) 评论(1) 编辑
摘要: 0、算法概述 0.1 算法分类 十种常见排序算法可以分为两大类: 比较类排序 :通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。 非比较类排序 :不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线阅读全文
posted @ 2019-06-23 14:58 薛勤 阅读(25) 评论(0) 编辑
摘要: Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。阅读全文
posted @ 2019-06-23 10:04 薛勤 阅读(159) 评论(2) 编辑
摘要: 使用一些MarkDown软件写博客时大都会设置图片自动上传,这样只需要复制一遍MarkDown文本即可粘贴到多个平台发布,很多免费的图床插件都是将图片上传至微博图床,毕竟免费。但微博并不会那么大方,在请求微博图片时会检测request头部 Referer 字段的值,来鉴别请求来源。 解决方法就是将 阅读全文
posted @ 2019-06-22 22:32 薛勤 阅读(20) 评论(0) 编辑
摘要: 1.模拟移动设备 点击 Toggle Device Toolbar 2.限制网络流量和 CPU 占用率 要限制网络流量和 CPU 占用率,请从 Throttle 列表中选择 Mid tier mobile 或 Low end mobile 。 Mid tier mobile 可模拟快速 3G 网络,阅读全文
posted @ 2019-06-22 17:25 薛勤 阅读(22) 评论(0) 编辑
摘要: 1.分布式锁缘由 学习编程初期,我们做的诸如教务系统、成绩管理系统大多是单机架构,单机架构在处理并发的问题上一般是依赖于JDK内置的并发编程类库,如synchronize关键字、Lock类等。随着业务以及需求的提高,单机架构不再满足我们的要求,这个时候我们不免要进行业务上的分离,例如基于Maven进阅读全文
posted @ 2019-06-13 22:52 薛勤 阅读(534) 评论(2) 编辑
摘要: 官方文档:https://developers.google.com/web/tools/chrome devtools/network/ 最近打算写一写Chrome教程文档,不知道大家最感兴趣的是什么内容呢? 1.如何打开 无论是在Windows还是Mac,都可以使用(FN)+F12键打开Chro阅读全文
posted @ 2019-06-09 18:14 薛勤 阅读(1162) 评论(10) 编辑
摘要: 前情回顾 本来学校就是双非,如果再没有些亮点,是很难进大厂的。 我比较幸运,曾在网易实习过一段时间,很感谢这段经历,让我有幸通过腾讯HR们的简历筛选。 对于腾讯春招,其实我是没有参加网申(2.28 3.31)、提前批(2.28 4.1)以及在线笔试(4.5 4.7),我属于常规批(4.13)中的晚期阅读全文
posted @ 2019-05-29 11:29 薛勤 阅读(1678) 评论(2) 编辑
摘要: 今天突然想在自己的博客上插入一首背景音乐,各大音乐厂商都有外链提供,比如网易云音乐,在歌曲的网页版就可以找到外链生成的按钮,如图所示: 点击生成外链,跳转到下面的页面 当你兴冲冲复制html代码到你的博客园,发现是不生效的,因为博客园是不支持 iframe 标签的。所以,你需要动动你的小脑筋。 我的阅读全文
posted @ 2019-05-26 18:01 薛勤 阅读(114) 评论(0) 编辑
摘要: 观察者模式(Observer Pattern)也叫做发布 订阅(Publish/Subscribe)模式、模型 视图(Model/View)模式。这个模式的一个最重要的作用就是解耦。也就是将被观察者和观察者进行解耦,使得他们之间的依赖性更小,甚至做到毫无依赖。 观察者模式的定义:该模式定义了对象之间阅读全文
posted @ 2019-05-24 15:10 薛勤 阅读(101) 评论(0) 编辑
摘要: 在模拟cmd调用Python时遇到一些情况,这类问题可以归类为“超时,阻塞”等,问题原因: Runtime.exec方法将产生一个本地的进程,并返回一个Process子类的实例,该实例可用于控制进程或取得进程的相关信息。 由于调用Runtime.exec方法所创建的子进程没有自己的终端或控制台,因此阅读全文
posted @ 2019-05-13 12:29 薛勤 阅读(100) 评论(0) 编辑
摘要: 网上大多数介绍AspectJ的文章都是和Spring容器混用的,但有时我们想自己写框架就需要抛开Spring造轮子,类似使用原生AspectJ达到面向切面编程。步骤很简单,只需要两步。 1.导入依赖 2.Maven插件 3.使用注解 App.java 这一步就和平常使用Spring AOP注解没有什阅读全文
posted @ 2019-05-11 13:32 薛勤 阅读(90) 评论(0) 编辑
摘要: 谈失败“我觉得人生中最容易的事情就是失败了,啥都不需要做你就会失败,做而不得更是失败,失败的次数多了,便思考是否是自己太过高估自己,但不管是高估或者低估,失败依旧是失败,失败并不会随着你的谦虚或者骄傲的态度而改变,它只会影响你的内心,让你心灰意冷,所谓期望越大,失望越大正是如此。其实在心灰意冷之前你阅读全文
posted @ 2019-05-10 23:26 薛勤 阅读(152) 评论(3) 编辑
摘要: 作为依赖使用的SpringBoot工程很容易出现自身静态资源被主工程忽略的情况。但是作为依赖而存在的Controller方法却不会失效,我们知道,Spring MVC对于静态资源的处理也不外乎是路径匹配,读取资源封装到Response中响应给浏览器,所以,解决的途径就是自己写一个读取Classpat阅读全文
posted @ 2019-05-07 11:36 薛勤 阅读(275) 评论(0) 编辑
摘要: 1.驱动 我们知道,JDBC是JDK自带的接口规范,不同的数据库有不同的实现,只需要引入相应的驱动包即可。 在使用MySQL数据库时,引入的是MySQL驱动,相应的,使用H2数据库时,也需要引入H2驱动包: 2.配置 在SpringBoot的application.properties文件配置相应属阅读全文
posted @ 2019-05-01 19:00 薛勤 阅读(168) 评论(0) 编辑
摘要: 学了两天Lua语言,感叹其短小精悍,上手极快,语法还很舒服,不错!整理下学习过程中经常用到的基础知识,共勉! Lua用法简述 Lua语言是在1993年由巴西一个大学研究小组发明,其设计目标是作为嵌入式程序移植到其他应用程序,它是由C语言实现的,虽然简单小巧但是功能强大,所以许多应用都选用它作为脚本语阅读全文
posted @ 2019-04-30 14:02 薛勤 阅读(696) 评论(4) 编辑
摘要: 记住一点:nginx配置文件很多坑来源自你的空格少了或多了。 OpenResty OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web阅读全文
posted @ 2019-04-29 19:32 薛勤 阅读(247) 评论(2) 编辑
摘要: 如果你对Redis和Lua的关系不太清楚,请先阅读: "Redis进阶之使用Lua脚本开发" 1.RedisScript 首先你得引入spring boot starter data redis依赖,其次把lua脚本放在resources目录下。 在Spring Boot2.0的时候,上述配置没有问阅读全文
posted @ 2019-04-28 19:50 薛勤 阅读(318) 评论(0) 编辑
摘要: 1.在Redis中使用Lua 在Redis中执行Lua脚本有两种方法:eval和evalsha。 1.1 eval 下面例子使用了key列表和参数列表来为Lua脚本提供更多的灵活性: 此时KEYS[1]="redis",ARGV[1]="world",所以最终的返回结果是"hello rediswo阅读全文
posted @ 2019-04-28 19:13 薛勤 阅读(150) 评论(0) 编辑
摘要: 今天和同事在关于foreach编译后是for循环还是迭代器有了不同意见,特做了个Demo,了解一下。 是啥自己来看吧! 编译后查看的源码: 总结: foreach对于数组来说依旧是for循环,对List、Map集合来说是迭代器。阅读全文
posted @ 2019-04-25 13:02 薛勤 阅读(78) 评论(2) 编辑
摘要: 1)漏桶算法 漏桶(Leaky Bucket)算法思路很简单,水(请求)先进入到漏桶里,漏桶以一定的速度出水(接口有响应速率),当水流入速度过大会直接溢出(访问频率超过接口响应速率),然后就拒绝请求,可以看出漏桶算法能强行限制数据的传输速率。示意图如下: 2)令牌桶算法 令牌桶算法(Token Bu阅读全文
posted @ 2019-04-21 20:34 薛勤 阅读(116) 评论(0) 编辑