自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

赵士杰

learning!!!

  • 博客(9)
  • 收藏
  • 关注

原创 Concurrency

一、简介多线程表示同一应用程序中具有多个执行线程二、说明线程守护线程程序运行时在后台提供服务的线程,不属于程序中不可或缺的部分当所有非守护线程结束时,程序也就终止,同时会杀死所有守护线程JAVA线程状态新建:创建后尚未启动可运行:正在JVM中运行(具体有没有运行要看操作系统的资源调度)阻塞:请求获取 monitor lock (被动)无限期等待:等待其它线程显式地唤醒 (主动)限期等待:在一定时间之后会被系统自动唤醒 (主动)死亡:线程运行结束或产生了异常而结束实

2020-09-29 19:50:24 146

原创 Kafka

一、简介Kafka 是一个分布式消息队列二、说明设计生产者负载均衡批量异步发送消费者批量拉取数据监听轮询、控制传输大小单个分区单个消费者维持偏移量流处理提供持久消费者ID消息传递幂等发送流处理提供恰好一次传递高可用主从复制通过zookeeper心跳机制保持会话从节点同步主节点写入平衡分区主从ISR机制只需两个副本和一次确认无需为崩溃副本恢复完整数据全部崩溃后则等待ISR副本或选择第一个副本ack机制高并发

2020-09-29 14:09:36 280

原创 Redis

一、简介Redis 是一个非关系型内存键值数据库、支持不同类型的值、可持久化到磁盘二、说明相比于MemcachedRedisMemcached支持多种数据类型仅支持字符串RDB和AOF持久化不支持持久化Redis Cluster不支持分布式不固定大小存储、存在碎片固定大小存储、存在浪费使用场景计数器缓存查找表消息队列会话缓存分布式锁实现数据类型STRING值:字符串、整数或者浮点数用例:缓存HTML操作:对整

2020-09-27 14:18:32 103

原创 JAVA IO

一、简介Java对数据的操作是通过流的方式,通过IO流来处理设备之间的数据传输,上传和下载二、说明Java 的 IO 操作有以下几类字节IO:InputStream 和 OutputStream字符IO:Reader 和 Writer对象IO:Serializable磁盘IO:File网络IO:Socket非阻塞IO:NIO字节IO采用装饰者模式实现InputStream:字节输入流,抽象类OutputStream:字节输出流,抽象类FileInputStream:文件输入

2020-09-22 19:21:46 139

原创 Elasticsearch

一、简介Elasticsearch:是一个分布式、可扩展、近实时的搜索与数据分析引擎二、说明应用结构化搜索数据分析复杂的人类语言处理地理位置和对象间关联关系存储//TODO高可用至少三个主节点每个分片至少两个节点每个分片至少有两个副本(一个主副本和一个或多个副本)连接查询过程query1、协调节点广播每一个shard、命中文档的TopN优先级队列2、每个shard返回doc_id和_source给协调节点3、协调节点全局排序fetch4、协调节点发送

2020-09-22 13:57:21 89

原创 Git

一、简介Git 是一个分布式版本控制系统二、说明相比于SVNGit分布式以元数据形式存储无全局版本号分支通过指针维护SVN集中式以文件形式存储有全局版本号分支为全新目录工作区、暂存区、版本库工作区:本地目录暂存区:索引文件版本库:维护版本、分为本地仓库和远程仓库.gitignore 文件提交时忽略的文件:操作系统自动生成的文件,比如缩略图编译生成的中间文件,比如 Java 编译产生的 .class 文件自己的敏感信息,比如存放口令的配置文

2020-09-22 11:57:12 55

原创 Spark

一、简介Spark:是一个并行分布式计算引擎二、说明相比于MapReduce数据处理过程MapReduce:把数据从磁盘读到内存,在内存中完成计算,再写回磁盘。下一个mr程序要继续对这批数据进行处理,又要重复这一过程。有多少个mr程序,就有多少次读磁盘和写磁盘的过程,效率低下。Spark:把数据读到内存之后,在多个RDD之间形成转换流,而RDD借助于exector的缓存,是可以在内存中完成计算。因此只需要一次读和一次写磁盘的过程。任务处理流程1、client提交应用2、mast

2020-09-21 21:38:50 74

原创 Docker

一、简介Docker:主要解决环境配置问题,它是一种虚拟化技术,对进程进行隔离,被隔离的进程独立于宿主操作系统和其它隔离的进程。二、说明相对于虚拟机虚拟机也是一种虚拟化技术,它与 Docker 最大的区别在于它是通过模拟硬件,并在硬件上安装操作系统来实现。启动速度:虚拟机需要先启动虚拟机的操作系统,再启动应用Docker相当于启动宿主操作系统上的一个进程资源占用:虚拟机是一个完整的操作系统,需要占用大量的磁盘、内存和CPU资源,一台机器只能开启几十个的虚拟机Docker是一

2020-09-21 21:25:49 95

原创 Activiti

一、简介Activiti:是领先的轻量级,基于Java的开源BPMN引擎,可满足ERP、OA等项目中的流程自动化需求工作流:是将一组任务组织起来以完成某个经营过程。为了实现某个业务目标,利用计算机在多个参与者之间按某种预定规则自动传递文档、信息或者任务。可以修改配置业务流程,减少代码的修改二、说明1、Activiti的常用概念部署(deployment):一次资源的部署实例(instance):一个流程每发起一次就是一个实例执行(execution):一个流程实例的执行路径任务

2020-09-21 17:39:23 138

空空如也

空空如也

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

TA关注的人

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