3A网络 3A网络
2年前
缓存三大问题及解决方案
1.缓存来由随着互联网系统发展的逐步完善,提高系统的qps,目前的绝大部分系统都增加了缓存机制从而避免请求过多的直接与数据库操作从而造成系统瓶颈,极大的提升了用户体验和系统稳定性。2.缓存问题虽然使用缓存给系统带来了一定的质的提升,但同时也带来了一些需要注意的问题。2.1缓存穿透缓存穿透是指查询一个一定不存在的数据,因为缓存中也无该数据的信息,则会
MYSQL-INNODB索引构成详解
对于MYSQL的INNODB存储引擎的索引,大家是不陌生的,都能想到是B树结构,可以加速SQL查询。但对于B树索引,它到底“长”得什么样子,它具体如何由一个个字节构成的,这些的基础知识鲜有人深究。本篇文章从MYSQL行记录开始说起,层层递进,包括数据页,B树聚簇索引,B树二级索引,最后在文章末尾给出MYSQL索引的建议。文章涉及较多基础知识,内容较为枯燥,因此采用较多的图片补充说明,希望能对读者有帮助。
Wesley13 Wesley13
3年前
java实现任务调度
最近的一个小项目是做一个简单的数据仓库,需要将其他数据库的数据抽取出来,并通过而出抽取成页面需要的数据,以空间换时间的方式,让后端报表查询更快。因为在抽取的过程中,有一定的先后顺序,需要做一个任务调度器,某一优先级的会先执行,然后会进入下一个优先级的队列任务中。先定义了一个Map的集合,key是优先级,value是任务的集合,某一个优先级内的任务是并发执
linux 文件权限
当我们部署皕杰报表时,有时需要对文件赋予权限。linux文件对不同用户可以分别设置权限,管理员(root)有所有权限。文件权限解释查看路径下所有文件的命令:ll或者lsl查询结果列出了当前路径下的文件和文件夹,每行数据以相同格式显示。第一个字符常见的两种,d和,d表示文件夹,表示文件。还有l表示链接,软链接比较常见,如图:从第二个字符开始,每三个一组
Wesley13 Wesley13
3年前
SQL 如何计算每个分组的中位数
中位数是指一组数据排序以后,位于中间位置的数据值。如果数据个数是奇数,中位数就是最中间位置那个值;如果是偶数,则是中间位置那两个数的平均值。怎么查询出数据分组以后每个组的中位数呢?用SQL来解决这个问题是很有难度的!SQL的集合是无序的,没有数据位置的概念,需要人为地造出行号,但是要对各分组独立编行号也困难。后来在SQL2003标准中加入了窗口函
专注IP定位 专注IP定位
2年前
Token机制相对于Cookie机制的优势
我们大家在客户端频繁向服务端请求数据时,服务端就会频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,也就是在这样的背景下Token便应运而生。简单来说,Token是服务端生成的一串字符串,以作为客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来
Stella981 Stella981
3年前
Learun FrameWork,.Net Core3.1工作流引擎平台
互联网下的工作流就是业务流程的计算机程序化。在以前,大多数公司都采用纸质表单,手工传递的方式,一级一级审批签字,工作效率相对较低,对于统计报表功能则不能实现。而采用工作流软件,使用者只需在电脑上填写有关表单,系统费会按照定义好的流程自动进行下去,同时在流程进行过程中也可以根据需要修改、管理、查询、统计、打印等,实现了办公自动化,大大提高了审批效率,可以有
Stella981 Stella981
3年前
Google布隆过滤器与Redis布隆过滤器详解
一、什么是布隆过滤器?布隆过滤器可以用来判断一个元素是否在一个集合中。它的优势是只需要占用很小的内存空间以及有着高效的查询效率。对于布隆过滤器而言,它的本质是一个位数组:位数组就是数组的每个元素都只占用1bit,并且每个元素只能是0或者1布隆过滤器除了一个位数组,还有K个哈希函数。当一个元素加入布隆过滤器中的时候,会进行如下操作:
Easter79 Easter79
3年前
SQL Server Profiler使用教程,通俗易懂才是王道(转载)
  做开发,平时难免和数据库打交道,特别是写存储过程,对于我们这些不常写SQL的人来说是一件极其痛苦的事,每次写完运行总是有错,如果用的是本地数据库的话还好,可以在本机调试SQL,那如果在数据库在服务器上面,调试被禁用,那就悲剧了~  最近,由于工作需求,写一个存储过程,有几十个参数,数据库在服务器上面,写完了,测试完查询语句没有问题,但是到了项目里面查
@ControllerAdvice注解使用及原理探究 | 京东物流技术团队
最近在新项目的开发过程中,遇到了个问题,需要将一些异常的业务流程返回给前端,需要提供给前端不同的响应码,前端再在次基础上做提示语言的国际化适配。这些异常流程涉及业务层和控制层的各个地方,如果每个地方都写一些重复代码显得很冗余。然后查询解决方案时发现了@ControllerAdvice这个注解,可以对业务异常进行统一处理。经过仔细了解后,发现这个注解还有更多的用处,都很实用。