自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MayMatrix 的博客

MayMatrix , May Sunshine

  • 博客(837)
  • 资源 (23)
  • 论坛 (2)
  • 收藏
  • 关注

转载 IDEA修改背景颜色(护眼绿)

一.IDEA默认有3种背景颜色路径为File->settings->Editor->Color Scheme可以设置软件默认颜色,旁边的小齿轮添加颜色名字第一种方法:IDEA设置一张背景图片,路径:File->Settings->Appearance&Behavior->Appearance绿色图片...

2020-11-09 10:25:42 33

转载 几种等待多线程任务执行完毕的方法

CountDownLatch和Cyclicbarrier概念、区别及原理1、概念  CountDownLatch:具有计数器的功能,等待其他线程执行完毕,主线程在继续执行,用于监听某些初始化操作,并且线程进行阻塞,等初始化执行完毕后,通知主线程继续工作执行。值得注意的是CountDownLatch计数的次数一定要与构造器传入的数字一致,比如构造器传入的是3,则countDown()一定要执行3次,否则线程将一直阻塞。CountDownLatch通常用来控制线程等待,它可以让线程等待倒计时结束,.

2020-09-25 15:17:14 106

转载 架构师不会架构选型,能行吗?常用框架和工具

如果你在做选型方面的工作,或者想了解一些现在正在流行的技术,那么这篇文章正好适合你。图片来自 Pexels本篇内容涵盖 14 个方面,涉及上百个框架和工具。会有你喜欢的,大概也会有你所讨厌的家伙。这是我平常工作中打交道最多的工具,大小公司都适用。如果你有更好的,欢迎留言补充: 消息队列 缓存 分库分表 数据同步 通讯 微服务 分布式工具 监控系统 调度 入口工具 OLT...

2020-09-22 18:05:59 77 1

转载 Java对象深拷贝浅拷贝总结

目录深拷贝 1. 手动new 2. clone方法 3. java自带序列化 4. json序列化 性能测试 深拷贝总结 浅拷贝 1. spring BeanUtils(Apache BeanUtils) 2. mapstruct 性能测试 浅拷贝总结 在java开发的过程中我们很多时候会有深拷贝需求,比如将一个请求体拷贝多次,修改成多个不同版笨,分别发给不同的服务,在比如维护不同的缓存时。还有些时候并不需要深拷贝,只是简单的类型转换,比如到将do对.

2020-09-15 11:50:01 23

转载 Spring AOP:搞清楚advice的执行顺序

文章目录目录 AOP的核心概念 模拟aspect advice的执行过程 同一aspect,不同advice的执行顺序 不同aspect,advice的执行顺序 同一aspect,相同advice的执行顺序 Transactional Aspect的优先级 AOP的核心概念要完全理解Spring AOP首先要理解AOP的核心概念和术语,这些术语并不是Spring指定的,而且很不幸,这些术语并不能直观理解,但是,如果Spring使用自己的术语,那将更加令人困惑。A.

2020-09-11 17:04:11 30

转载 Spring AspectJ切入点语法详解

1、Spring AOP支持的AspectJ切入点指示符切入点指示符用来指示切入点表达式目的,,在Spring AOP中目前只有执行方法这一个连接点,Spring AOP支持的AspectJ切入点指示符如下: execution:用于匹配方法执行的连接点; within:用于匹配指定类型内的方法执行; this:用于匹配当前AOP代理对象类型的执行方法;注意是AOP代理对象的类型匹配,这样就可能包括引入接口也类型匹配; ta...

2020-09-11 16:42:30 19

转载 【Filter操作Request/Response数据】HttpServletRequestWrapper使用技巧(自定义session和缓存InputStream)

一、前言  javax.servlet.http.HttpServletRequestWrapper 是一个开发者可以继承的类,我们可以重写相应的方法来实现session的自定义以及缓存InputStream,在程序中可以多次获取request body的内容。二、自定义seesionimport javax.servlet.http.*;public class CustomizeHttpServletRequest extends HttpServletRequestWrapper {

2020-09-11 16:33:47 34

转载 【Filter操作Request/Response数据】java使用Filter过滤器对Response返回值进行修改

有时候在开发过程中会有这样一个场景,有时需要对返回的数据进行处理。比如加密啊,添加某些标记啊等等。这种情况我们可以通过过滤器去处理。过滤器是什么就不介绍了,百度一下,你就知道。看看代码吧:返回值输出代理类:这个类主要是为了吧Response里面的返回值获取到,因为直接Response没有提供直接拿到返回值的方法。所以要通过代理来取得返回值package com.channel.filter; import java.io.ByteArrayOutputStream;import j

2020-09-11 16:24:01 87

转载 京东毫秒级热key探测框架设计与实践,已实战于618大促

项目地址:https://gitee.com/jd-platform-opensource/hotkey京东-平台业务中心/hotkey在拥有大量并发用户的系统中,热key一直以来都是一个不可避免的问题。或许是突然某些商品成了爆款,或许是海量用户突然涌入某个店铺,或许是秒杀时瞬间大量开启的爬虫用户, 这些突发的无法预先感知的热key都是系统潜在的巨大风险。风险是什么呢?主要是数据层,其次是服务层。热key对数据层的冲击显而易见,譬如数据存放在redis或者MySQL中,以redis...

2020-09-10 20:02:38 53

转载 【TCP长连接】使用TCP长连接提升服务性能

1、概述在《性能优化篇-理论基础》中,我们知道了提升服务性能的两个思路,分别是提升服务并发能力和降低请求的响应时间(RT)。一个请求的响应时间包括两部分,等待时间和执行时间。在《性能优化篇-减少网络传输包提升服务性能》中分析了如何减少网络包的传输来降低响应的等待时间,从而提升服务的性能。本文继续从网络通信方面来描述如何通过长连接来提升服务性能。2、为什么长连接可以提升服务性能在TCP/IP协议中,传输层负责应用程序之间的网络通信数据的传输,传输层协议主要有UDP和TCP。UDP协议是面向无连接的

2020-09-10 17:39:06 128

转载 【TCP 长连接】Netty源码笔记:TCP长连接和IdleStateHandler

日常工作中TCP长连接在一些优秀的中间件或开源项目中得到大量的使用。比如zookeeper的订阅和监听、日常使用的各种数据库连接池、redis连接池、常用的RPC框架dubbo/美团pigeon、美团的监控系统Cat等等。使用TCP长连接的优势在于:1、有效避免频繁的三次握手、四次挥手开销;2、避免TCP滑动窗口冷启动的低效问题能极大的提升网络通信的效率。缺点也比较明显,当客户端因为断电、网线被拔除等原因突然断开时,服务端没办法及时知道客户端已经断线,不能及时回收socket占用的系统资源。首

2020-09-10 17:34:40 26

转载 【TCP 长连接】聊聊 TCP 长连接和心跳那些事

1 前言可能很多 Java 程序员对 TCP 的理解只有一个三次握手,四次挥手的认识,我觉得这样的原因主要在于 TCP 协议本身稍微有点抽象(相比较于应用层的 HTTP 协议);其次,非框架开发者不太需要接触到 TCP 的一些细节。其实我个人对 TCP 的很多细节也并没有完全理解,这篇文章主要针对微信交流群里有人提出的长连接,心跳的问题,做一个统一的整理。在 Java 中,使用 TCP 通信,大概率会涉及到 Socket、Netty,本文会借用它们的一些 API 和设置参数来辅助介绍。2 长连接

2020-09-10 17:17:26 62

转载 现代化的缓存设计方案:Caffeine Cache

原文地址 译者:简直缓存是提升性能的通用方法,现在大多数的缓存实现都使用了经典的技术。这篇文章中,我们会发掘Caffeine中的现代化的实现方法。Caffeine 是一个开源的 Java 缓存库,它能提供高命中率和出色的并发能力。期望读者们能被这些想法激发,进而将它们应用到任何你喜欢的编程语言中。驱逐策略缓存的驱逐策略是为了预测哪些数据在短期内最可能被再次用到,从而提升缓存的命中率。由于简洁的实现、高效的运行时表现,以及在常规的使用场景下有不错的命中率,LRU(Least Rec...

2020-09-08 09:42:35 45

转载 Count-Min Sketch原理

如果老板让你统计一个实时的数据流中元素出现的频率,并且准备随时回答某个元素出现的频率,不需要的精确的计数,那该怎么办?直觉告诉我们可能需要一个巨大的 HashMap 来统计各个元素的出现频率,但由于不同的元素的个数可能非常大,以至于是个天文数字,要求的内存可能会非常大,从而不切实际。同时,又要求我们实时计算,实时回答,当HashMap的冲突很高时,最坏的情况的时间复杂度可能无法满足实时的要求。加上前面要求不需要精确的计数,这么说来,必须寻找新的算法。那么,Count-Min Sketch 就是用

2020-09-08 09:39:02 124

转载 关于setConnectTimeout和setReadTimeout的问题

1、问题描述因为用户登录记录需要记录登录地址,这个地址获取调用的是阿里的接口,登录的时候由于connect没有响应,造成一直卡在登录界面。2、问题排查和定位思考:网络差不应该报网络异常的错误或者直接抛timeout异常吗?所以马上去检查Http请求的地方.备注:(在DownloadThread中使用HttpURLConnection进行网络请求时只是设置了connectTimeout,这样在建立连接的时候如果网络中断,那么超时以后就会报出错误,这里是没有问题的。会不会是还少设置了..

2020-08-21 10:58:56 162

转载 云技术是什么_三分钟了解云技术的原理与发展

什么是云技术定义云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。最简单

2020-08-11 11:12:48 1251

转载 一文解读云原生

这里我们抛出一个我们自己的理解:云原生代表着原生为云设计。详细的解释是:应用原生被设计为在云上以最佳方式运行,充分发挥云的优势。这个理解有点空泛,但是考虑到云原生的定义和特征在这些年间不停的变化,以及完全可以预料到的在未来的必然变化,我觉得,对云原生的理解似乎也只能回到云原生的出发点,而不是如何具体实现。前言自 2013 年容器(虚拟)技术(Docker)成熟后,后端的架构方式进入快速迭代的阶段,出现了很多新兴概念:微服务 k8s Serverless IaaS...

2020-08-10 12:39:21 412 1

转载 SpringBoot之Configuration注解功能列表

在SpringBoot中可以通过@Configuration对某个类注解将该类申明为配置类,以此在代替先前spring版本中配置xml中的功能,并且增加了可读性与维护性。并且在注解类中的类方法中可以通过@Bean对该类方法返回的对象注入到Spring容器中,其方法名也是该对象在spring容器中的对象名。//简单的配置类及对象注入到spring容器中。@Configurationpublic class DemoConfiguration { @Bean() public Stri

2020-07-30 19:48:27 72

转载 SpringBoot解耦的扩展机制 Spring Factories功能详解

SpringBoot解耦的扩展机制 Spring Factories介绍及使用https://blog.csdn.net/truelove12358/article/details/107697845Spring Factories功能详解:组件提供者如何编写出仅需系统开发者进行包引入就可以对spring进行bean注入等操作?  其实在spring库中有提供自动化配置的库spring-boot-autoconfigure,我们只需要引入这个库包就可以对已引入的AOP、JDBC、TX..

2020-07-30 19:44:15 56

转载 SpringBoot解耦的扩展机制 Spring Factories介绍及使用

Spring Boot中有一种非常解耦的扩展机制:Spring Factories。这种扩展机制实际上是仿照Java中的SPI扩展机制来实现的。什么是 SPI机制SPI的全名为Service Provider Interface.大多数开发人员可能不熟悉,因为这个是针对厂商或者插件的。在java.util.ServiceLoader的文档里有比较详细的介绍。简单的总结下java SPI机制的思想。我们系统里抽象的各个模块,往往有很多不同的实现方案,比如日志模块的方案,xml解析模块、jdbc模块的

2020-07-30 19:28:58 179

转载 Java中的SPI机制

1 SPI是什么SPI全称Service Provider Interface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。整体机制图如下:Java SPI 实际上是“基于接口的编程+策略模式+配置文件”组合实现的动态加载机制。系统设计的各个抽象,往往有很多不同的实现方案,在面向的对象的设计里,一般推荐模块之间基于接口编程,模块之间不对实现类进行硬编码。一旦代码里涉及具体的实现类,就违反了可拔插的原则,如果需要替换一种实现,就需要修改代码.

2020-07-30 19:17:22 37

转载 调用链选型之Zipkin,Pinpoint,SkyWalking,CAT

简介Zipkin是Twitter开源的调用链分析工具,目前基于springcloud sleuth得到了广泛的使用,特点是轻量,使用部署简单。Pinpoint是韩国人开源的基于字节码注入的调用链分析,以及应用监控分析工具。特点是支持多种插件,UI功能强大,接入端无代码侵入。SkyWalking是本土开源的基于字节码注入的调用链分析,以及应用监控分析工具。特点是支持多种插件,UI功能较强,接入端无代码侵入。目前已加入Apache孵化器。CAT是大众点评开源的基于编码和配置的调用链

2020-07-22 16:57:28 85

转载 全链路监控:方案概述与比较

0 问题背景随着微服务架构的流行,服务按照不同的维度进行拆分,一次请求往往需要涉及到多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问题的工具,以便发生故障的时候,能够快速定位和解决问题。全链路监控组件就在这样的问题背景下产生了。最出名的是谷歌公开的论文提到的Google Dapper。想要在这个上下文中理解分布式系统的行为,...

2020-07-22 16:53:42 136

转载 实时抓取MySQL的更新数据到Hadoop(订阅mysql binglog)

关系型数据库和Hadoop生态的沟通越来越密集,时效要求也越来越高。本篇就来调研下实时抓取MySQL更新数据到HDFS。本篇仅作为调研报告。初步调研了canal(Ali)+kafka connect+kafka、maxwell(Zendesk)+kafka和mysql_streamer(Yelp)+kafka。这几个工具抓取MySQL的方式都是通过扫描binlog,模拟MySQL master和slave(Mysql Replication架构–解决了:数据多点备份,提高数据可用性;读写分流,提

2020-07-22 16:25:52 94

转载 数据异构的武器-BINLOG+MQ

1、定义何谓数据异构,上周交易部门商品的同事过来做分享,又看到这个词,他的PPT里面是 数据库异构。其实我们以前做的事情,也是可以成为数据异构。比如我们将DB里面的数据持久化到REDIS里面去,就是一种数据异构的方式。如果要下个定义的话:把数据按需(数据结构、存取方式、存取形式)异地构建存储。2、常见应用场景分库分表中有一个最为常见的场景,为了提升数据库的查询能力,我们都会对数据库做分库分表操作。比如订单库,开始的时候我们是按照订单ID维度去分库分表,那么后来的业务需求想按照商家维度去查询,比如

2020-07-22 15:58:33 45

转载 Sentinel 对比 Hystrix(选型与简介)

总体说明先来看一下 Hystrix 的官方介绍:Hystrix is a library that helps you control the interactions between these distributed services by adding latency tolerance and fault tolerance logic. Hystrix does this by isolating points of access between the services, stoppi

2020-07-22 10:48:41 274

转载 常见的八大排序算法的比较和选择依据

一、八大排序简介:排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外...

2020-07-16 12:26:31 41

转载 还不理解“分布式事务”?这篇给你讲清楚!

这篇文章将介绍什么是分布式事务,分布式事务解决什么问题,对分布式事务实现的难点,解决思路,不同场景下方案的选择,通过图解的方式进行梳理、总结和比较。相信耐心看完这篇文章,谈到分布式事务,不再只是有“2PC”、“3PC”、“MQ的消息事务”、“最终一致性”、“TCC”等这些知识碎片,而是能够将知识连成一片,形成知识体系。什么是事务介绍分布式事务之前,先介绍什么是事务。事务的具体定义事务提供一种机制将一个活动涉及的所有操作纳入到一个不可分割的执行单元,组成事务的所有操作只有在所有操作均能正常

2020-07-10 20:59:08 118

转载 分布式架构之设计篇——刚性事务总结和柔性事务概述

- 刚性事务总结 -在《分布式架构之设计篇-刚性事务之2PC详解》和《分布式架构之设计篇-刚性事务之3PC详解》二文中分析了分布式事务的本质、XA、2PC、3PC等等。但是没有说分布式事务的现象或者场景,我总结了分布式事务的触发场景大约有以下几种:1、跨数据库分布式事务:数据库的物理分割下保障跨库操作的ACID。2、跨服务分布式事务:服务的网络分割下保障多服务的事务完整性。3、混合式分布式事务:跨数据库分布式事务 + 跨服务分布式事务。最根本的原因就是事务参与者出现...

2020-07-10 20:33:09 113

转载 分布式场景之刚性事务-XA/2PC详解

分布式一致性分布式场景下,多个服务同时对服务一个流程,比如电商下单场景,需要支付服务进行支付、库存服务扣减库存、订单服务进行订单生成、物流服务更新物流信息等。如果某一个服务执行失败,或者网络不通引起的请求丢失,那么整个系统可能出现数据不一致的原因。上述场景就是分布式一致性问题,追根到底,分布式一致性的根本原因在于数据的分布式操作,引起的本地事务无法保障数据的原子性引起。分布式一致性问题的解决思路有两种,一种是分布式事务,一种是尽量通过业务流程避免分布式事务。分布式事务是直接解决...

2020-07-10 20:28:51 125

转载 分布式柔性事务之Saga详解

- 起源 -Saga模型起源于1987年 Hector Garcia-Molina,Kenneth Salem 发表的论文《Sagas》,是分布式事务相关概念最早出现的。Saga模型是把一个分布式事务拆分为多个本地事务,每个本地事务都有相应的执行模块和补偿模块(对应TCC中的Confirm和Cancel),当Saga事务中任意一个本地事务出错时,可以通过调用相关的补偿方法恢复之前的事务,达到事务最终一致性。- 组成 -Saga模型主要分: ...

2020-07-10 20:21:14 166

转载 微服务注册中心的选型和思考

概述在微服务时代,注册中心越来越被重视。服务治理逐渐跟业务服务并驾齐驱。所以本文想对注册中心进行体系化探索。注册中心,起源于分布式时代。不管是水平拆分架构,或者垂直拆分架构,对于多服务、多实例的支持,都需要对服务进行治理。注册中心被用于服务治理中的服务注册、服务发现、服务探活等场景。架构师需要追寻事物的本质,并做好设计平衡,才能真正做到降本增效。那么注册中心的本质是什么:1、根据服务发现的需求反推出第一个本质是一个Query函数Si = F(serviceName) serv...

2020-07-10 11:49:23 121

转载 讲清楚分布式事务选型:XA、2PC、TCC、Saga、阿里Seata

微服务兴起的这几年涌现出不少分布式事务框架,比如ByteTCC、TCC-transaction、EasyTransaction以及最近很火爆的Seata。最近刚看了Seata的源码(v0.5.2),借机记录一下自己对分布式事务的一些理解。(3年前这类框架还没成熟,因项目需要自己也写过一个柔性事务框架)。本文分五部分,首先明确分布式事务概念的演变,然后简单说下为什么大家不用XA,第三部分阐述两阶段提交的“提升”,第四部分介绍Seata的架构的亮点与问题,第五部分谈下分布式事务的取舍。限于篇幅...

2020-07-09 16:07:38 352

转载 微服务分布式事务4种解决方案实战

分布式事务分布式事务是指事务的参与者,支持事务的服务器,资源服务器分别位于分布式系统的不同节点之上,通常一个分布式事物中会涉及到对多个数据源或业务系统的操作。典型的分布式事务场景:跨银行转操作就涉及调用两个异地银行服务CAP理论CAP理论:一个分布式系统不可能同时满足一致性,可用性和分区容错性这个三个基本需求,最多只能同时满足其中两项一致性(C):数据在多个副本之间是否能够保持一致的特性。可用性(A):是指系统提供的服务必须一致处于可用状态,对于每一个用户的请求总是在有限的时间内返回

2020-07-08 16:24:16 78

转载 一致性哈希算法-应用

一致性Hash负载均衡算法实现1. Hash函数要将对象和服务器映射到Hash环中,需要计算出来哈希码,这就需要有Hash函数来完成,也就是关系到使用的哈希算法。使用一个好的哈希算法是很重要的,为什么这么说呢,拿我们上面提到的缓存服务来说,一个完美的解决方案是需要数据分配的平衡,假如Hash环的映射是这样的:哈希码聚集.jpgHash码数值落在一个小区间内,出现Hash码聚集情况,那么从上图可以看到缓存数据全部由c3节点的服务器存储,出现数据分配不平衡。那么就需要一个好的哈希处理使得哈希

2020-07-07 18:15:24 52

转载 分布式系统中一致性哈希算法-简介

分布式系统中一致性哈希算法业务场景近年来B2C、O2O等商业概念的提出和移动端的发展,使得分布式系统流行了起来。分布式系统相对于单系统,解决了流量大、系统高可用和高容错等问题。功能强大也意味着实现起来需要更多技术的支持。例如系统访问层的负载均衡,缓存层的多实例主从复制备份,数据层的分库分表等。我们以负载均衡为例,常见的负载均衡方法有很多,但是它们的优缺点也都很明显:随机访问策略。系统随机访问,缺点:可能造成服务器负载压力不均衡,俗话讲就是撑的撑死,饿的饿死。 轮询策略。请求均匀分配,如果服

2020-07-07 18:04:53 59

转载 分布式事务精华总结篇

- 总述 -咱们前面分别对分布式事务的几个分支:XA、2PC、3PC、TCC、Saga、事务消息、最大努力事务进行的详细介绍。本篇作为分布式事务设计的收尾篇,讲对前面的内容查缺补漏和总结,最后对市面的一些开源框架做一些介绍。- 查缺补漏 -1.补偿型事务柔性事务分补偿型事务和通知型事务。但对补偿型事务没有进行详细介绍,那什么是补偿型事务呢,在Atomikos 公司Guy Pardon的论文《Business_Activities》中有这样的描述:...

2020-07-07 11:04:24 48

转载 Keepalived简介、双机热备

Keepalived简介Keepalived是Linux下一个轻量级别的高可用解决方案。高可用(High Avalilability,HA),其实两种不同的含义:广义来讲,是指整个系统的高可用行,狭义的来讲就是之主机的冗余和接管, 它与HeartBeat RoseHA 实现相同类似的功能,都可以实现服务或者网络的高可用,但是又有差别,HeartBeat是一个专业的、功能完善的高可用软件,它提供了HA 软件所需的基本功能,比如:心跳检测、资源接管,检测集群中的服务,在集群节点转移共享IP地址的所有者等等。

2020-06-18 11:20:05 59

转载 负载均衡比较:LVS,HAProxy和Nginx

负载均衡(Load Balance)是应用于互联网后台系统架构设计中的各层,它将请求均匀分摊到多个操作单元上执行。目前,在线上环境中应用较多的负载均衡器硬件有F5 BIG-IP,但是硬件设备昂贵,不如软件适应互联网公司的快速发展。最常用的负载均衡软件有LVS、HAProxy和Nginx,结合高可用软件有Heartbeat、Keepalived,可以搭建出承载海量请求的成熟架构如LVS+Keepalived、HAProxy+keepalived等.专长三种负载均衡软件LVS、HAProxy和Nginx

2020-06-18 11:14:11 119

转载 理解BitMap算法的原理及应用

前言位图:一种常用的数据结构,代表了有限域中的稠集(dense set),每一个元素至少出现一次,没有其他的数据和元素相关联。在索引,数据压缩,海量数据处理等方面有广泛应用。BitMap 的思想的和原理是很多算法的基础,比如 Bloom Filter、Counting Bloom Filter。BitMap的原理BitMap 的基本原理就是用一个 bit 位来存放某种状态,适用于大规模数据,但数据状态又不是很多的情况。通常是用来判断某个数据存不存在的。举个例子在Java里...

2020-06-11 22:08:06 158

WebService+Json DEMO

WebService+Json DEMO 包含net.sf.json ; axis webservice所有JAR包

2014-10-20

activiti-5.15.11.zip

activiti-5.15.11.zip 不包含sample war包

2014-05-29

Activiti5.15 示例war包

Activiti5.15 示例war包 两个示例war包

2014-05-29

gacutil.exe 可单独运行 .net 3.5

gacutil.exe 95kb版 可单独运行 C#com组件注册工具 65kb的不能单独运行

2013-08-13

regasm.exe

regasm.exe 程序集注册工具 程序集注册工具 可单独运行

2013-08-13

C#&VB调用默认邮件程序发邮件

C#&VB调用默认邮件程序发邮件 源码 可加附件

2013-08-13

Java调用C#com方法

Java调用C#com方法 C#COM DLL 不能被java直接调用,必须经过C++封装。 调用成功后,在其他机器上如何注册 请下载我的其他上传的gacutil.exe 和 regasm.exe 然后拷贝到其他机器上在dos下执行 gacutil 和regasm 命令注册即可

2013-08-13

QTP10 插件破解脚本

QTP10-插件破解脚本

2013-08-06

注册表DOS命令

注册表DOS命令

2013-08-06

CMD命令行高级教程

CMD命令行高级教程 CMD命令行高级教程 CMD命令行高级教程 CMD命令行高级教程

2013-08-06

oracle表空间详解

oracle表空间详解

2013-05-15

Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结.pdf

Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结.pdf Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结.pdf

2013-05-15

第8章 Java的多线程机制.pdf

第8章 Java的多线程机制 详细信息 Java的多线程机制.pdf

2012-05-17

第10章 java 泛型.pdf

第10章 java 泛型.pdf

2012-05-17

zdsb_jb51.rar

自动鼠标键盘点击器,附使用方法步骤 。

2020-08-08

博客下载工具

本地debug改了下,30多篇长文,1G大小的都完整下载成功了。博文源码有点bug,可能是htmlparser.jar版本更新引起。htmlparser.jar是一个爬虫工具包。 源代码里面部分写死了csdn域名,想dump其他博客请replace掉所有域名。

2017-06-22

SecureCRT_Por 7.3破解版

SecureCRT_Por 7.3破解版

2016-11-25

扩展屏幕管理工具 DisplayFusionSetup7.0 破解版

扩展屏幕管理工具 DisplayFusionSetup7.0 破解版

2016-09-18

GitHub 3.0.12离线安装包

GitHub 3.0.12.0离线安装包

2016-02-17

C++数据结构 课件 清华大学版 完全版

C++数据结构 清华大学版 课件 完全版

2011-05-30

C++数据结构 清华大学版

C++数据结构 清华大学版C++数据结构 清华大学版

2011-05-30

C++数据结构 清华大学版 清华大学版

C++数据结构 清华大学版 C++数据结构 清华大学版

2011-05-30

C++ 数据结构 课件 清华大学版

清华大学出版 C++ 数据结构 相对有难度和深度

2011-05-30

博客被关闭?

发表于 2017-06-19 最后回复 2020-04-17

MayMatrix的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除