• 缓存机制让JAVA类反射性能提升30倍

    一次性能提高30倍的JAVA类反射性能优化实践在实际工作中的一些特定应用场景下,JAVA类反射是经常用到、必不可少的技术,在项目研发过程中,我们也遇到了不得不运用JAVA类反射技术的业务需求,并且不可避免地面临这个技术固有的性能瓶颈问题。通过近两年的研究、尝试和验证,我们总结出一套利用缓存机制、大幅度提高JAVA类反射代码运行效率的方法,和没有优化的代码相比,性能提高了20~3...

    Java 2020年03月15日 1652 0
  • js组件-可改变大小的div

    在实现了可拖动div的组件后,又联想到拖拽可改变div大小的需求,话不多说先看效果,再来慢慢分析可所以改变大小的div组件分析给目标div增加四周的边框,并且在边框的八个方向增加拖拽点,分别用方向的首字母组合代替当鼠标落在八个点上时,鼠标形状变成向各个方向拖拽的形状当鼠标按下并拖拽时,计算div新的位置和大小,并改变div逻辑挺简单的,我们一步步实现对目标div增加边框增加边框...

    技术资讯 2020年03月15日 2175 1
  • Javascript正则表达式扫盲

    前言正则表达式应用太广泛了,遍布于各端程序猿日常编码中。这里只是做学习补充,简单阐述一下对?!,?=,?:的理解,知道的大佬就算是温故了,不理解希望能够帮你扫扫盲点。用一个例子开头吧,我在写bolg的注册部分时,密码要求必须为数字、字母、特殊符号组合,并且长度为8-16位。长度很好验证,难点是在必须为数字、字母、特殊符号的组合。哪些是不可行的1. 纯数字不行2. 纯字母不行3....

    Javascript 2020年03月14日 1565 0
  • 6 个接私活的网站,你有技术就有钱

    向大家推荐国内外几个接外包比较靠谱的平台,主旨是贵精不贵多。因此,像「猪x戒」这种会让程序员自贬身价,扰乱市场规则的网站,便不会出现在下方推荐列表中。下面开始进入正题。国外篇如果你打算接国外的软件外包,以下几点能力最好提前掌握:基本的英语沟通能力(能跟阿三哥沟通)良好的统筹规划能力(考虑好时差因素)财务管理能力(报税、回款周期管理)freelancerfreelancer.co...

    技术资讯 2020年03月14日 1518 0
  • 1.3万亿条数据查询如何做到毫秒级响应?

    知乎,在古文中意为“你知道吗?”,它是中国的Quora:一个问答网站,其中各种问题由用户社区创建,回答,编辑和组织。作为中国最大的知识共享平台,知乎平台目前拥有2.2亿注册用户,3000万个问题,网站答案超过1.3亿。随着用户群的增长,应用程序的数据大小无法评估,在一个名为Moneta的应用程序中存储了大约1.3万亿行数据(存储着用户已经阅读过的帖子)。由于每月累计产生大约10...

    MySQL 2020年03月14日 1412 0
  • 高并发环境下如何让Redis和Mysql保持数据统一

    业务场景在高并发的业务场景下,数据库大多数情况都是用户并发访问最薄弱的环节。所以,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问MySQL等数据库。这个业务场景,主要是解决读数据从Redis缓存,一般都是按照下图的流程来进行业务操作。读取缓存步骤一般没有什么问题,但是一旦涉及到数据更新:数据库和缓存更新,就容易出现缓存(Redis)和数据库(MyS...

    MySQL 2020年03月14日 1630 0
  • 超高性能 key-value 数据库 Redis 5.0.8 稳定版发布

    前言Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。官方测评SET操作每秒钟 110000 次,GET操作每秒钟 81000 次,服务器配置如下:Linux 2.6, Xe...

    Redis 2020年03月14日 1800 0
  • 图片MD5秒传、分片上传和断点续传

    互联网的蓬勃发展,从小企业的官方网站、内部的ERP系统等系统,到大型互联网网站,比如天猫、京东、美团等。在这个大背景下,图片上传和存储技术也在快速地发展。1、小网站上传图片上传图片,一个input type="type"控件,外加一个提交按钮,就搞定前端需求。前端一次性,传输文件过来,后端把文件存储在web站点的一个upload文件夹内,以日期为图片文件夹的子目录,时间+随机数...

    Nginx 2020年03月14日 5445 0
  • 3月起,四大浏览器正式停止对TLS 1.1和TLS 1.0的支持

    从2020年3月起,停止支持TLS 1.1及TLS 1.0版本安全协议。 届时谷歌(Chrome)、Mozilla(Firefox)、微软(IE和Edge) 、苹果(Safari) 都会发布新版浏览器执行这个策略。超过850,000个网站仍使用过时的TLS 1.0和1.1协议。超过850,000个网站仍使用旧的TLS 1.0和1.1协议,该协议计划于本月晚些时候从大多数主流浏览...

    技术资讯 2020年03月13日 2044 0
  • JS基础入门:闭包详细讲解

    闭包是函数创建时作用域内所有变量的集合。要使用闭包,需要在另一个函数中创建一个函数,这种函数被称为嵌套函数。内部函数可以访问外部函数作用域中的变量(依靠闭包可以访问外部函数作用域),即使在返回外部函数之后也是如此。每次创建嵌套函数时都会创建闭包。作用域链在继续了解闭包之前,首先了解一下JavaScript中的作用域链。通常,有两种类型的作用域:全局作用域局部作用域在JavaSc...

    Javascript 2020年03月13日 1634 0
  • 短网址(short URL)系统的原理及其实现

    背景提供一个短址服务你有没有发现,我们的任务中出现长 URL 就会比较麻烦?如果有一个短址生成器就好了。虽然市面上有很多,但是我们可以重复发明一个轮子,利用这个机会尝试一下简单的 Web 全栈开发。任务做一个短链接生成器,可以将一个长链接缩短成一个短链接。要发车了 ?发车前,和大家说一下如果不想重复的造轮子,想开箱即用,可以使用基于 PHP 的开源软件 YOURLS。YOURL...

    PHP 2020年03月13日 6486 0
  • JavaScript实现图片合成下载

    背景:最近项目一个功能需求,需实现将两张图片合成后下载的一个功能。分析完功能需求后,决定直接使用前端技术来实现。为提高效率,使用插件(html2canvas)配合编写此功能。有关插件(html2canvas)的介绍,这里不多说明,大家可自行网上查阅。以下直接附上效果演示图以及完整代码效果演示:完整代码:(代码复制可直接使用)注:最好将代码文件放在服务器环境下运行,以防止插件(h...

    Javascript 2020年03月13日 1637 0
  • js组件的开发与简单应用

    什么是js组件我们先理解下什么是组件?通俗的讲,可以认为组件是能满足我们某项或某些需求的“东西”,它是什么无所谓。比如我想要一个能放money的东西,那么钱包就是这个“组件",我不用管它是怎么加工的,用的什么材质。这就是一个”组件“那么回过头来理解下js组件,就可以理解为能够满足我们某个功能需求的js。我们不关心它内部怎么实现的,只要知到怎么用就行了。最简单的js组件任性的需求...

    Javascript 2020年03月13日 1596 0
  • 重写Spring Boot定时任务,支持可动态调整执行时间

    Spring Boot应该是目前最火的java开源框架了,它简化了我们创建一个web服务的过程,让我们可以在很短时间、基本零配置就可以启动一个web服务。定时任务在我们平常的业务开发用的非常多,Spring Boot创建一个定时任务很简单,只需要用@Scheduled注解方法,就可以让方法按照定义的时间进行运行。但是,Spring Boot的@Scheduled默认是单线程的,...

    Java 2020年03月13日 3518 0
  • JavaScript内部原理:浏览器的内幕

    简介Javascript 是一种奇怪语言,有些人喜欢它,有些人讨厌它。它有许多独特的机制,这些机制在其他流行语言中不存在,也没有对应的机制,还有突出明显的就是代码的执行顺序了解浏览器环境,它的组成以及它的工作原理会让我们在编写 JS 时更加自信,并为可能发生的潜在问题做好了充分的准备。在这篇文章中,我们试着解释一下Chrome浏览器下到底发生了什么,来一起看看:V8 Javas...

    Javascript 2020年03月13日 1524 0
  • 2020全网最全的Nginx 性能调优实战

    1、Nginx运行工作进程数量Nginx运行工作进程个数一般设置CPU的核心或者核心数x2。如果不了解cpu的核数,可以top命令之后按1看出来,也可以查看/proc/cpuinfo文件 grep ^processor /proc/cpuinfo | wc -l[root@lx~]# vi/usr/local/nginx1.10/conf/nginx.confworker_pr...

    Nginx 2020年03月13日 1910 0
  • Spring Cloud微服务架构中的数据权限DataPermision实现方案

    Spring Cloud微服务架构中的数据权限DataPermision实现方案一、出现原因 在Spring Cloud的微服务架构中,常见的权限控制除了菜单权限外,还有数据权限DataPermision。菜单权限主要用于控制用户角色所能访问的菜单以及页面按钮的显示与否,而数据权限则控制业务数据显示当前公司,还是所有公司,还是当前公司及其子公司的数据。 近几年Java项目中,数...

    Java 2020年03月13日 10009 0
  • java树形菜单制作

    实际开发中,可能经常需要开发树形菜单,本篇文章就讲述一下树形菜单的制作。用到的技术1、SpringMVC2、Spring3、mybatis4、easyui代码实现dto(适用于easyui的实体类)public class OrgnDto { private String id; private String text; private String iconCls; priv...

    Java 2020年03月12日 1664 0
  • 需要先登录的接口如何做性能测试?

    需要先登录的接口如何做性能测试?我们的实际工作中,需要先登录,然后才能做某些操作的现象非常常见。但是,对于一个刚刚学会用jmeter做性能测试的人来说,这可能是自己的性能测试之路的第一个坎。为什么这么说呢首先,从这个诉求中,我们至少能提取出两个重要信息:1、需要登录2、登录后才能做以为着登录之后的接口,都有登录认证,判断是否登录,登录认证未通过,那么接口请求就会失败。那么好了,...

    技术文章 2020年03月12日 2416 0
  • Linux 命令行中的2>&1究竟是什么意思?

    我们在Linux下经常会碰到:nohup command>/dev/null 2>&1 &这样形式的命令。我们把这条命令大概分解一下。(1)首先,就是一个nohup表示当前用户和系统的会话下的进程忽略响应HUP消息,也就是不挂断地运行命令。(2)& 符号是把该命令以后台的job的形式运行。(3)那么就剩下command>/dev/nul...

    Linux 2020年03月12日 3876 0
  • 妙用CSS变量,让你的CSS变得更心动 Vue

    妙用CSS变量,让你的CSS变得更心动

    前言CSS变量又叫CSS自定义属性,为什么会突然提起这个很少人用到的东西呢?因为最近在重构个人官网,不知道为什么突然喜欢用上CSS变量,可能其自身隐藏的魅力,让笔者对它刮目相看。谈到为什么会在CSS中使用变量,下面举个栗子,估计大家一看就会明白。/* 不使用CSS变量 */.title { background-color: red;}.desc { backgro...

    Vue 2020年03月12日 1506 0
  • 一次SQL查询优化原理分析,900W+数据,从17s到300ms

    有一张财务流水表,未分库分表,目前的数据量为9555695,分页查询使用到了limit,优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),按照下文的方式调整SQL后,耗时347 ms (execution: 163 ms, fetching: 184 ms); 操作:查询条件放到子查询中,子查询只查主...

    MySQL 2020年03月12日 2217 0
  • js防抖动函数

    什么是js防抖动?我是这样理解的,限制某个事件(函数)在指定时间内不重复触发。比如有一个输入框,当用户输入后进行远程搜索,如果不限制频次,用户每输入一个字符就会发起网络请求,但请求的很大可能不是用户想要的,这时候就可以用防抖动机制,规定用户在500ms内没有新的输入才发起网络请求。 一个简单的防抖实现<!DOCTYPE html><html lang="en...

    Javascript 2020年03月12日 1868 0
  • Springboot 2.x 如何解决重复提交 (本地锁的实践)

    有没有遇到过这种情况:网页响应很慢,提交一次表单后发现没反应,然后你就疯狂点击提交按钮(12306就经常被这样怒怼),如果做过防重复提交还好,否则那是什么级别的灾难就不好说了。。。本文主要是应用 自定义注解、 spring AOP、· Guava Cache 生成一种本地锁,来达到的防重复提交效果,由于是基于内存的缓存,所以这种实现方式并不适用于分布式服务Guava是什么?gu...

    Java 2020年03月12日 1714 0
  • Apache Tomcat 被曝重大漏洞,影响过去 13 年的所有版本

    近日,国内安全公司长亭科技披露一个在 Tomcat 中潜伏十多年的安全漏洞——Ghostcat (幽灵猫),其编号为 CVE-2020-1938 。据悉,Ghostcat(幽灵猫)由长亭科技安全研究员发现,它是存在于 Tomcat 中的安全漏洞。由于 Tomcat AJP 协议设计上存在缺陷,攻击者通过 Tomcat AJP Connector 可以读取或包含 Tomcat 上...

    Apache 2020年03月12日 2937 0
  • 腾讯QQ小程序微信上被封暂停使用:违反规定

    3月11日晚间消息,有媒体发现,腾讯QQ在微信上的小程序因违规被暂停服务。未使用过该小程序的用户而言,目前已经无法在微信平台搜索到该小程序。相关页面显示,小程序腾讯QQ由于违反《即时通信工具公众信息服务发展管理暂行规定》,已暂停服务。去年11月,名为“腾讯QQ”的小程序出现在微信平台,用户可以在微信上直接查看QQ消息。QQ小程序可输入任何正确的账密信息,并不要求必须是对应微信的...

    技术资讯 2020年03月12日 1605 0
  • if-else代码优化的八种方案

    前言代码中如果if-else比较多,阅读起来比较困难,维护起来也比较困难,很容易出bug,接下来,本文将介绍优化if-else代码的八种方案。优化方案一:提前return,去除不必要的else如果if-else代码块包含return语句,可以考虑通过提前return,把多余else干掉,使代码更加优雅。优化前:if(condition){ //doSomething}el...

    Java 2020年03月11日 2204 0
  • 我从来不理解JavaScript闭包,直到有人这样向我解释它

    正如标题所述,JavaScript闭包对我来说一直有点神秘,看过很多闭包的文章,在工作使用过闭包,有时甚至在项目中使用闭包,但我确实是这是在使用闭包的知识。最近看到的一些文章,终于,有人用于一种让我明白方式对闭包进行了解释,我将在本文中尝试使用这种方法来解释闭包。准备在理解闭包之前,有个重要的概念需要先了解一下,就是 js 执行上下文。这篇文章是执行上下文 很不错的入门教程,文...

    Javascript 2020年03月11日 1428 0
  • 前端常用设计模式

    前端常见的设计模式主要有以下几种:1. 单例模式2. 工厂模式3. 策略模式4. 代理模式5. 观察者模式6. 模块模式7. 构造函数模式8. 混合模式单例模式这种设计模式的思想是确保一个类只有唯一实例,一般用于全局缓存,比如全局window,唯一登录浮窗等。采用闭包的方式实现如下:工厂模式工厂模式是创建对象的常用设计模式,为了不暴露创建对象的具体逻辑,将逻辑封装在一个函数中,...

    前端技术 2020年03月11日 1577 0
  • Java 14 带来了 5 项新特性,能支持 H5 文本开发了

    Java 14预定于3月17日发布。那么,14版究竟有什么新功能,对于整天写代码、维护代码的Java开发者来说,哪些功能最有用呢?以下为译文:第14版包含的JEP(Java Enhancement Proposals,Java增强提案)比12版和13版加起来还要多。在这篇文章中,我将主要讨论以下几点:改进的switch表达式,第一次出现在Java 12和13中,在Java 14...

    Java 2020年03月11日 1561 0