移动端点击事件延迟的诞生消亡史

快速反馈对于任何 UI 的实现都是至关重要的。研究表明,100ms 是界面让用户感到即时的最大延迟。尽管如此,移动网络仍然受到一个巨大的反馈问题的困扰:触摸任何元素后,延迟 300 毫秒。这种延迟是许多用户认为基于 HTML 的 Web 应用程序“卡顿”的最重要原因之一。在本文中,本文将带你了解移动端点击事件延迟的从诞生到消亡的过程。 诞生史 在 2007 年,苹果公司发布首款 iPhone 之前,由于当时的网站普遍为大屏幕设备所设计,为了应对 iPhone 这种小屏幕设备浏览桌面网站的问题,
分类: 其他 发布时间: 07-23 23:55 阅读次数: 0

springBoot集成es查询,使用ElasticsearchTemplate执行滚动查询

使用Elasticsearch查询大量数据时基本的分页查询就会报错,这种情况下可以使用scroll(滚动)查询 直接上代码: // 创建查询条件对象 BoolQueryBuilder queryBuilder = QueryBuilders.boolQuery(); // 拼接查询条件 queryBuilder.must(QueryBuilders.termQuery("status", 1)); 假设查询状态为1的 // 创建查询对象 SearchQuery searchQuery = n
分类: 其他 发布时间: 07-23 23:55 阅读次数: 0

文件上传漏洞,解析漏洞总结

文件上传漏洞、解析漏洞总结 1.文件上传漏洞是什么 文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。常见场景是web服务器允许用户上传图片或者普通文本文件保存,而用户绕过上传机制上传恶意代码并执行从而控制服务器。显然这种漏洞是getshell最快最直接的方法之一,需要说明的是上传文件操作本身是没有问题的,问题在于文件上传到服务器后,服务器怎么处理和解释文件。 文件上传漏洞是指用户上传了一个可执行脚本文件,并通过此文件获得了执行服器端命令的能力。在大
分类: 其他 发布时间: 07-23 23:55 阅读次数: 0

nodejs难点

1. compose compose(middlewares) // middleware应该是回调, 所有用async-await. middlewares = [async (ctx, next)=>{ log1, await next(), log2 }, async (ctx, next) => { log3, await next(), log4 } ] 2. getter/setter 可以使得获取值变短 createContext(req, res) { const ctx =
分类: 其他 发布时间: 07-23 23:55 阅读次数: 0

大并发服务器框架设计

  转自恋恋风辰大并发服务器框架设计   简单谈一谈大并发服务器框架设计的基本思路   基本的服务器框架都是C/S结构的,请求和相应流程是这样的:   这样的框架存在一个很严重的问题,即当并发量过大时,会阻塞很多请求。当客户端大并发请求到来,服务器需要进行大量的数据库操作,假设数据库最大连接数为1000个,此时有10000个请求访问应用服务器,那么应用服务器只能处理1000个请求,剩下99000个等待1000个请求处理好后再进行访问数据库处理。   可以在应用服务器和数据库服务器中间增加中间层
分类: 其他 发布时间: 07-23 23:55 阅读次数: 0

使用Docker安装Portainer

Portainer是Docker的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、 事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。 官方安装教程: https://www.portainer.io/installation/ 按照官方的步骤: $ docker volume create portainer_data $
分类: 其他 发布时间: 07-23 23:55 阅读次数: 0

题解 P4107 【[HEOI2015]兔子与樱花】

思路好想,卡常不好卡 题目链接 Solution [HEOI2015]兔子与樱花 题目大意:给定一个树,每个节点有一个权值。如果删除一个节点的话,就将它的权值加到它父节点上,并将它的儿子接到父节点上。要求在任意时刻每个节点的权值与儿子个数和小于常数\(m\),求最多可以删去多少个节点 贪心 分析: 比较显然的做法是,我们考虑一个节点的”危害":即删去它后,父节点的权值与儿子个数和会增加多少 危害值:\(w[x]=c[x]+son[x]-1\) 那么我们把危害值从小到大排序,贪心能删就删即可 删
分类: 其他 发布时间: 07-23 23:55 阅读次数: 0

java集成小米推送服务

集成小米推送服务 这类推送一般官方文档都比较详细,如果想要更加详细的了解建议查看官方文档 官方文档地址:https://dev.mi.com/console/appservice/push.html 在正式开发前需要做一些准备 1、开发者需要登录开发者网站进入推送服务(申请AppID, AppKey, AppSecret) 2、访问开发者网站下载SDK; 将下载的SDK解压,将文件夹中的2个依赖jar包丢入项目工程的libs目录 接下来就是发送消息了 // 正式环境下使用Push服务,启动时需
分类: 其他 发布时间: 07-23 23:55 阅读次数: 0

串口通讯知识梳理及在Stm32上的应用

文章目录一.前言二.串口数据的发送与接收三.串口波特率四.串口的数据格式(1)起始位(2)数据位(1)奇偶检验位(1)停止位五.物理接口的形式六.TTL、RS232、RS485电平标准六.九针串口(DB9)与四针串口七.串口通讯在Stm32上的应用一.前言二.串口数据的发送与接收三.串口波特率四.串口的数据格式(1)起始位(2)数据位(1)奇偶检验位(1)停止位五.物理接口的形式六.TTL、RS232、RS485电平标准六.九针串口(DB9)与四针串口七.串口通讯在Stm32上的应.
分类: 其他 发布时间: 07-23 23:41 阅读次数: 0

Bluetooth sig mesh 杂谈一(为什么会采用model的概念)

为什么会采用model的概念背景介绍为什么会采用model 这个概念哲学方面1、万物都能抽象成模型软件方面进阶思考背景介绍本文主要参考mesh profile 和 mesh model specification,本文的内容也仅仅是一个思维的探讨。若转载请标明出处:为什么会采用model 这个概念本文主要从背后的哲学和软件实现方面进行探讨。哲学方面我们都知道现在很多软件框架的设计都是有一套背后的哲学逻辑。比如Python 程序语言设计之前也是有一套哲学思想支持着,下面设摘自网友的说法。————
分类: 其他 发布时间: 07-23 23:41 阅读次数: 0

JavaScript学习系列博客_9_JavaScript中的while语句

循环语句 - while循环 - 语法: while(条件表达式){ 语句... } - 执行流程: while语句在执行时,会先对条件表达式进行求值判断, 如果判断结果为false,则终止循环 如果判断结果为true,则执行循环体 循环体执行完毕,继续对条件表达式进行求值判断,依此类推 - do...while循环 - 语法: do{ 语句... }while(条件表达式) - 执行流程 do...while在执行时,会先执行do后的循环体,然后在对条件表达式进行判断, 如果判断判断结果为f
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

Python基础TASK2:条件语句与循环语句

Python基础TASK2:条件语句与循环语句 1.条件语句 assert关键词 assert这个关键词我们称之为“断言”,当这个关键词后边的条件为 False 时,程序自动崩溃并抛出AssertionError的异常。断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况,例如我们的代码只能在 Linux 系统下运行,可以先判断当前系统是否符合条件。 语法格式如下: assert expression 等价于: if not expression: r
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

SpringBoot之配置google kaptcha验证码图片生成工具

1、项目中引入POM: <dependency> <groupId>com.github.axet</groupId> <artifactId>kaptcha</artifactId> <version>0.0.9</version> </dependency> 2、配置参数 import com.google.code.kaptcha.impl.DefaultKaptcha; import com.google.code.kaptcha.util.Config; import org.sp
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

mvn clean install对idea中项目结构的影响

使用maven命令打包时,如果一个父工程下有多个子module存在循环依赖的情况下, 可能会影响Project Structure下Modules中的Dependencies的工程引用, 即直接引用Module,而非依赖Module的jar包, 启动时出现循环依赖错误,不易发现... 提示: 可通过Analyze -> Module Dependecies.. 进行分析, 再查看Project Structure下Modules中的Dependencies进行修改设置...
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

2020 Multi-University Training Contest 2 解题报告

1001 并查集。考虑按点权大到小把点插入图中,每次插入点到图中,我们不妨设集合\(S\)(其中\(s_i\)为第\(i\)个集合的权值)为与当前点相连的连通块组成的集合,\(w\)为当前节点的权值。易得插入一个点得到的新连通块的公式为: \[\sum^S (s_i-w)+w \] 那么维护集合我们很自然的想到用并查集维护。最后扫一遍每个点,保证每个连通块都加入答案。 #include <bits/stdc++.h> using namespace std; #define ll long
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

js中有趣的隐式转化结构

最近在学习js的时候发现了一个有意思的地方,是一个很好的例子,特此记录一下。 var arr = [] console.log(arr == !arr) //输出为true 在这里比较两个时,经过了隐式转化arr数组先是转化为了字符串‘’,‘’有转化成了布尔类型false. !arr因为前面添加了一个!,所以arr直接转化成了布尔类型,而在直接转化成布尔类型中,除了undefined,null,0,'',NaN转化为false外,其余会全部转化为true,所以这里arr直接转化为了t
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

RabbitMQ笔记-消息追踪

11111111111111
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

毕业设计每日博客--第三周4

今天查看了一下网上的数据,发现很多都是处理好的数据,没有找到合适的目标,真是头大。
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

java画图工具来添加水印

用Java代码给图片加水印 不多哔哔,直接上代码: /** * @param srcImgFile 原图片文件对象 * @param outFile 输出图片文件对象 * @param waterMarkContent 水印内容 * @param markContentColor 水印颜色 * @param rate 字体间距 * @param x x轴位置 * @param y y轴位置 * @param font
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0

Qml(二)Quick基本组件 Qt QML Component 学习笔记

参考文章: 1. 使用QML进行界面开发 2. Qt QML Component 学习笔记 一、Rectangle、ListView、Text、Component基本使用 效果如下: 最上面是一个ListView,里面填充100个Component,文本为其索引 中间是个圆角矩形,绑定一个点击事件,点击时改变颜色 下面是三个按钮Component,点击时触发Component本身的的信号函数,在main.qml中通过connect关联槽函数,改变中间的文本 main.qml 代码: impor
分类: 其他 发布时间: 07-23 23:38 阅读次数: 0