- 博客(85)
- 资源 (10)
- 收藏
- 关注
转载 dlib人脸识别
https://github.com/deepinsight/insightfacehttps://www.cnblogs.com/supersayajin/p/8489435.html
2020-02-18 14:09:25 238
原创 大数据下的信息安全
在人们享受互联网带来的便捷和高效时,有一批人将其黑手伸向了 领域,他们利用某些网站的技术和业务漏洞进行作弊,从而满足自 己的灰色利益需求。恶意传播色情、诈骗、谣言、暴力等不正当信息,给互联网环境造成了很大的威胁。 随着作弊场景和手法的不断变化,各个维度的安全技术也在不断升级保护正常用户免受黑色利益链条的侵害,其中包括物理安全、网络安 全、应用安全、数据安...
2020-02-17 16:57:31 765
原创 高吞吐的kafka如何保证消息消费的有序性
producer端发送的message必须指定是发送到哪个topic,但是不需要指定topic下的哪个partition,因为kafka会把收到的message进行load balance,均匀的分布在这个topic下的不同的partition上( hash(message) % [broker数量] )。同组有多个消费者的时候:kafka会按照顺序分配partitions,eg如果有...
2020-01-21 11:07:50 1273
原创 基于HTTP高性能零拷贝zerocopy文件传输
package com.zyp.net;import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.File;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStream;i...
2019-12-20 15:39:50 1337 1
原创 工厂模式 实现读取excel工具类
package com.**.cpic.util.excel;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.util.Ar...
2019-12-17 09:10:10 320 1
原创 网络安全、数据安全、个人信息安全
网络安全:防火墙技术,堡垒机,ssl数字证书,VPN,专网,物理隔离数据安全:数据加密,数据备份个人信息安全:敏感信息加密,数据使用的时候脱敏...
2019-12-16 11:50:35 628
原创 JDK httpConnection实现http代理
package com.proxy.util;import java.io.DataOutputStream;import java.io.IOException;import java.net.HttpURLConnection;import java.net.URL;import java.nio.ByteBuffer;import java.nio.channels.Chan...
2019-12-11 14:10:00 343
原创 hdfs随机读取,seek源码
The default HDFS block size is 128 MB. So you cannot read one line here, one line there. You always read and write 128 MB blocks. This is fine when you want to process the whole file. But it makes HDF...
2019-12-06 09:52:47 819
原创 jdk try with resource字节码
try with resource可以查看编译后的字节码,会分别在程序结束末尾调用close,和抛异常后调用closepackage test_httpserver;import java.io.Closeable;import java.io.IOException;public class TestClose implements Closeable{ @Overri...
2019-12-05 14:25:13 159
原创 ReadableByteChannel 拷贝到WritableByteChannel并实现skip
private static void copyChannel(ReadableByteChannel inChannel,WritableByteChannel outChannel,long skip) throws IOException { ByteBuffer dst = ByteBuffer.allocate(2048); while ...
2019-12-02 15:18:42 878
原创 kafka多消费者处理
它不能像AMQ那样可以多个BET作为consumer去互斥的(for update悲观锁)并发处理message,这是因为多个BET去消费一个Queue中的数据的时候,由于要保证不能多个线程拿同一条message,所以就需要行级别悲观所(for update),这就导致了consume的性能下降,吞吐量不够。而kafka为了保证吞吐量,只允许同一个consumer group下的一个consume...
2019-11-28 17:00:33 1172
原创 InputFormat,OutputFormat,RecordReader
InputFormat提供了两个方法:getSplits实现分片规则,createRecordReader读取数据规则K,V public abstract List<InputSplit> getSplits(JobContext context ) throws IOException, Interr...
2019-11-27 11:23:31 117
原创 hdfs FastCopy源码 copyBlock
1从srcnamenode获取到block的信息,2去dest addblock信息,3判断block进行拷贝,拷贝判断是不是同一个datanode,如果是进行硬链接拷贝。否进行复制数据LocatedBlock存放文件的block信息,通过DatanodeInfo[] getLocations()获取包含了文件所在的DatanodeInfoDatanodeInfo中包...
2019-11-15 10:18:04 476
原创 spring管理mybatis SqlSession的源码
1开启事务 ,同一个事务会共享要给session,request 引用+1,执行完毕,released引用-12如果是没有开启事务的话,每一次执行都会关闭session3如果没有开启事务,一个线程查询两次可能不是同个session/*** Checks if {@code SqlSession} passed as an argument is managed by S...
2019-10-25 10:46:40 402
原创 hdfs fssystem线程安全问题及分布式客户端应用
fssystem的实现类DistributedFileSystem1根据url(建立链接)创建fssystem的时候会先在cache中查找,如果没有就create,close的时候会关闭并清空缓存2缓存的key是根据conf和url来构建的3.1读文件(读取了一个block后,在调用getBlockLocations获取下一个数据的存储位置,如果数据跨block会不会有性能...
2019-10-20 17:48:42 654
原创 centos ssh公钥都追加到authorized_keys免密码登录
1、从各个节点生成公钥 ssh-keygen -t rsa -P '' 一路回车2、从各个节点拷贝id-rsa.pub到主节点:scp /root/.ssh/id_rsa.pub root@master1:/root/.ssh/id_rsa.pub.node1scp /root/.ssh/id_rsa.pub root@master1:/root/.ssh/id_rsa.pub...
2019-10-14 14:03:36 2531
原创 undertow使用IO多路复用,实现非阻塞高性能的http2
jdk9开始支持IO多路复用,jdk11开始在java.net包中实现http2springboot下配置undertow<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent<...
2019-10-12 15:05:01 1096
转载 Java8获取参数名称
Java8获取参数名称前言在mybatis的源码学习中,知道了mybatis可以开始在Java8将参数名称作为映射名称,Java8一项新的特性——在class文件中保留参数名。通过反射获取参数名称Java8中反射包出现了新的方法,Method.getParameters(),可以获取Parameter数组。而以前只能使用Method.getParameterTypes()获取Class数...
2019-10-10 14:37:28 232
原创 hbase多条件过滤优化
数据存储由三部分组成:元数据(什么样的数据结构)+索引(存储在哪里)+数据(具体的数据内容)查询优化,关键看索引,hbase只支持rowkey查询,如果要多条件需要加入索引异构来处理,比如借助redis...
2019-10-01 07:57:23 338
原创 IO阻塞式,非阻塞式,事件驱动,IO密集型和CPU密集型
IO的所以操作都是由操作系统来完成的。IO操作分为应用缓冲区和内核缓冲区,应用是不能直接操作硬件的,都是如内核来完成,读数据,先通过内核读取硬件数据到内核缓冲区然后copy到应用缓冲区,写数据需要将应用缓冲区的数据copy到内核缓冲区。copy过程比较消耗资源,所以在socket传说过程中就有了粘包的情况,应用程序要解决粘包的问题。IO密集型是说,应用线程执行IO过程中会有...
2019-09-29 19:44:07 517
原创 dubbo通过DefualtFeture实现异步回调
TCP是全双工的通信协议,dubbo私有协议采用netty实现的异步非阻塞通信方式,通过DefaultFuture来实现回调
2019-09-25 18:55:06 298
原创 jar上传到maven私有仓库
1、maven插件的E:\apache-maven-3.3.3\conf\settings.xml查看私库登录权限的id <server> <id>deploymentRepo</id> <username>admin</username> <password&g...
2019-08-29 10:16:20 1252
原创 linux expect 远程copy
#!/usr/bin/expectset timeout 10set host app2set username rootset password 12345@set src_file [lindex $argv 0]set dest_file [lindex $argv 1]spawn scp $src_file $username@$host:$dest_fileexpect ...
2019-08-22 18:13:09 141
原创 利用mq解决分布式事务相关问题
采用mq实现数据同步或分布式事务:1防止数据丢失,需要手动确认机制2因为网络原因会导致重复发送,需要解决幂等问题3回滚机制(补偿机制),因为消费者无法处理此数据格式,需要把消息反馈给生产者,让生产者实现补偿机制。...
2019-08-08 17:44:42 326
原创 spring组件开发
容器启动,bean初始化完成会调用实现了SmartLifecycle的类(可以做定时任务或者连接池)bean的生命周期,InitializingBean,DisposableBean会调用init方法,Disposable方法bean创建前后会调用BeanPostProcessor(判断是否有我们自定义的注解类)...
2019-07-30 16:36:41 143
原创 http2长连接
http头部信息:hostmethodcookie connectionrefereragentConnection:Keep-Alive,长连接(需要客户端和服务端的支持,jdk8之前支持1.1jdk9后支持2,在客户端,Java抽象了Keep-Alive,和程序员分享离开来,HttpURLConnection类自动实现了Keep-Alive,如果程序员没有介入去操作Keep-Ali...
2019-07-30 15:34:18 4298
原创 spring bean的生命周期
package spring;import org.springframework.beans.factory.DisposableBean;import org.springframework.beans.factory.InitializingBean;public class Persion implements InitializingBean,DisposableBean{...
2019-07-25 19:27:15 59
原创 mysql事务和锁
读数据加锁(FOR UPDATE),保证读到最新数据start transaction;SELECT * FROM userinfo WHERE id =1 FOR UPDATE;COMMIT用户正在读数据,无法修改,等待读完数据start transaction;UPDATE userinfo SET pwd='ddddcccaaaaa' WHERE id=1;sel...
2019-07-24 17:40:20 63
原创 docker构建springboot项目
DockerfileFROM java:8VOLUME /tmpADD mybatisboot-0.0.1-SNAPSHOT.jar app.jarRUN sh -c 'touch /app.jar'ENV JAVA_OPTS=""ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./u...
2019-07-17 16:58:04 154
原创 redis实现的分布式锁
https://github.com/redisson/redisson/wiki/8.-%E5%88%86%E5%B8%83%E5%BC%8F%E9%94%81%E5%92%8C%E5%90%8C%E6%AD%A5%E5%99%A8#86-%E4%BF%A1%E5%8F%B7%E9%87%8Fsemaphoreredis官方推荐的Redission分布式锁的逻辑如下图:客户端通过循环获取...
2019-07-16 19:45:37 134
原创 redis内存限制和应对策略
可以配置不限制内存,默认情况下是3G如果内存达到了限制,将有几种策略:1返回错误信息2对所有key采用lru淘汰,3对设置了过期时间的key用lru淘汰4随机淘汰,5对设置了过期时间的随机淘汰,6快过期的key进行淘汰...
2019-07-16 11:26:46 274
原创 二叉树,B+和数据库索引
二叉树的性能取决于树的高度,如果二叉树退化成线性表那性能就很差,所以引入了红黑树来确保树的平衡性。为什么不用红黑树来做文件系统的索引:数据量太大无法将整棵树加载在内存中进行搜索,二叉树是链表存储具有无序性,这样会频繁对硬盘IO。B+树考虑了(有序数组+链表)多路搜索,顺序的存储到磁盘的页上,可以有效的减少了磁盘IO。B+树会存在资源的浪费。旋转操作(Rotate)的目的是使...
2019-07-15 15:42:18 187
转载 Spark API 详解RDD、partition、count、collect
RDD是一个数据集合,可以有运行在多个分区(RDD分区),一个RDD分区只能运行在一个机器上。分区的定义:一个RDD有多个RDD分区一个RDD分区只在一个机器上一个机器可有多个RDD分区由数据转换为RDD:举例:从普通数组创建RDD,里面包含了1到9这9个数字,它们分别在3个分区中。这个RDD一共9个元素,每个元素含有一个数字val a = sc.pa...
2019-07-02 14:49:05 579
转载 MySQL查询缓存详解
转载https://www.cnblogs.com/Alight/p/3981999.html一:缓存条件,原理MySQL Query Cache是用来缓存我们所执行的SELECT语句以及该语句的结果集,MySql在实现Query Cache的具体技术细节上类似典型的KV存储,就是将SELECT语句和该查询语句的结果集做了一个HASH映射并保存在一定的内存区域中。当客户端发起SQL查询时,...
2019-06-26 19:42:33 1131
原创 Spring关闭钩子销毁连接池
spring容器关闭的时候会调用DisposableBean的接口DisposableBean的实现是通过jdk关闭钩子来实现的Runtime.getRuntime().addShutdownHook(new Thread(()-> { bossGroup.shutdownGracefully(); wor...
2019-06-26 13:24:50 1195
原创 k8s文件挂载
1在所有节点都要安装nfs工具yum install -y nfs-utils2挂载的服务端yum install -y nfs-utils# 暴露启动挂载的路径vi /etc/exports# ------------/data/nfs *(rw,no_root_squash)# ------------systemctl start nfsps -ef |gre...
2019-06-22 19:38:08 5875
原创 k8s常用命令
在pod里执行shell指令 kubectl exec -it nginx-deployment-test -c nginx -- /bin/sh获取yaml文件资源说明kubectl explainkubectl get svc,podkubectl get pod --all-namespaces -o widekubectl create -f text.yamlku...
2019-06-22 19:32:11 168
转载 k8s入门教程
安装centos最小系统解决网络配置1、打开 vi /etc/sysconfig/network-scripts/ifcfg-np0s3(每个机子都可能不一样,但格式会是“ifcfg-eth数字”),把ONBOOT=no,改为ONBOOT=yes2、重启网络:service network restart配置网络工具yum -y net-toolsnetstat -rn ...
2019-06-20 19:22:40 10422 3
MySQL JDBC驱动
2010-01-16
SQL.Server.2005数据库简明教程.电子教案.rar - RAR 压缩文件, 解包大小为 6,085,120 字节
2009-11-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人