自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (3)
  • 问答 (5)
  • 收藏
  • 关注

原创 Redis五种基本数据类型

什么是Redisredis是一个高性能的key-value数据库,它是完全开源免费的,而且redis是一个NOSQL类型数据库,是为了解决高并发、高扩展,大数据存储等一系列的问题而产生的数据库解决方案,是一个非关系型的数据库。但是,它也是不能替代关系型数据库,只能作为特定环境下的扩充。Redis常识Redis默认有16个数据库默认使用的是第0个数据库端口号 默认6379可以使用select 数字来切换数据库DBSIZE 查看DB大小keys * 查看数据库所有的keyflushdb 清空

2020-10-07 19:53:05 388

原创 CAP简述

CAP基本概念C 数据一致性弱一致性(不保证总能得到最新的值)最终一致性( 放宽对时间的要求,在被调完成操作响应后的某个时间点,被调多个节点的数据最终达成一致 )强一致性(每个节点的数据都是最新版本)A 可用性 数据具备高可用性P 分区容错性 容忍网络出现分区 分区之间网络不可达C和A都很容易 P到底是什么意思呢?分区分布式的系统,节点之间的通信是通过网络来进行的。如果出现了一些故障,节点之间不连通了,整个网络就被划分成了几块区域。这样数据就被分成了几块不连通的区域。这就叫做分区。例

2020-10-07 19:45:12 467

原创 集群 分布式概念简述

集群计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作。在某种意义上,他们可以被看作是一台计算机。集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式。集群计算机通常用来改进单个计算机的计算速度和/或可靠性。一般情况下集群计算机比单个计算机,比如工作站或超级计算机性能价格比要高得多集群技术特点:通过多台计算机完成同一个工作,达到更高的效率。两机或多机内容、工作过程等完全一样。如果一台死机,另一台可以起作用。

2020-10-07 19:44:17 337 2

原创 单例模式

懒汉式在使用的时候才去检查有没有实例,有就返回,没有就初始化一个。存在线程安全问题,使用双端检索机制解决。class Single{private Single(){}private static Single single = null;public static Single getInstance(){if(single == null){single = new Single();}reutrn single;}}饿汉式一开始就初始化好实例对象,好处是线程安全,坏处是浪

2020-10-07 19:42:58 352

原创 Lock(ReentrantLock)

为什么会出现Locksynchronized是性能低效的。因为这是一个重量级操作,它对性能最大的影响是阻塞的是实现,挂起线程和恢复线程的操作都需要转入内核态中完成,这些操作给系统的并发性带来了很大的压力。相比之下使用Java提供的Lock对象,性能更高一些。到了JDK1.6,发生了变化,对synchronize加入了很多优化措施,有自适应自旋,锁消除,锁粗化,轻量级锁,偏向锁等等。导致在JDK1.6上synchronize的性能并不比Lock差。官方也表示,他们也更支持synchronize,在未来的

2020-10-07 11:15:42 248

原创 Synchronized详解

Synchronized基本理解synchronized关键字是为了解决并发编程中的线程安全问题而实现的关键字。synchronized的思想就是给对象加上一个锁,这锁可以叫做对象锁,也可以叫排他锁。synchronized关键字有三种使用方式:普通同步方法(实例方法),锁是当前实例对象 ,进入同步代码前要获得当前实例的锁静态同步方法,锁是当前类的class对象 ,进入同步代码前要获得当前类对象的锁同步方法块,锁是括号里面的对象,对给定对象加锁,进入同步代码库前要获得给定对象的锁。synch

2020-10-06 21:52:20 576

原创 ThreadLocal详解

基本概念ThreadLocal的基本作用就是数据隔离,填充的数据只属于当前线程,变量的数据对别的线程而言是隔离的。隔离用在哪里?spring实现事务隔离的底层就使用了ThreadLocal。保证单个线程中的数据库操作使用的是同一个数据库连接。同时采用这种返回格式可以使业务层使用事务不需要感知并且管理connection对象,通过传播级别,穷啊秒的管理多个事务配置之间的切换 挂起 和 恢复。Spring框架里面就是用的ThreadLocal来实现这种隔离,主要是在TransactionSynchro

2020-10-06 21:20:40 253

原创 MySQl三范式 视图触发器存储过程简述

三范式第一范式 原子性表示每一项的信息都是不可再分的比如 你一个字段中存放了 姓名和年龄 这就违反了原子性第二范式 唯一性消除数据之前的部分依赖 使一个表中的非主键部分完全依赖于主键消除非主键部分依赖联合主键中的部分字段需要实现每一 行数据具有唯一 可区分的特性,并不能有部分依赖关系。通常,给一个表加主键(也是推荐做法),就可以做到“唯一可区分”。第三范式 独立性消除传递依赖属性不依赖于其它非主属性数据不能存在传递关系,即每个属性都跟主键有直接关系而不是间接关系。视图从一个或

2020-10-06 14:29:30 198 1

原创 Redis跳跃表

Redis 跳跃表基本概念跳跃表是有序集合的底层表现之一Redis使用跳跃表作为有序集合键的底层实现之一,如果一个有序集合包含的元素数量比较多,又或者有序集合中元素的成员是比较长的字符串时, Redis就会使用跳跃表来作为有序集合健的底层实现。跳跃表(skiplist)是一种****有序数据结构****,它通过在****每个节点中维持多个指向其他节点的指针(注:可以理解为维护了多条路径),从而达到快速访问节点的目的。****Redis的跳跃表由****redis.h/zskiplistNode和r

2020-10-06 14:27:23 338

原创 Redis缓存穿透 缓存雪崩

先查缓存 如果缓存中没有 就会去数据库中查询缓存穿透(查不到)基本概念用户想要查询一个数据,发现redis内存数据库中没有,于是缓存没有命中,于是向持久层数据库查询。发现也没有,于是本次查询失败。当用户很多的时候,缓存都没有命中,于是都去请求了持久层数据库。这就会给持久层数据库带来很大的压力,也就相当于出现了缓存穿透。解决方案布隆过滤器布隆过滤器时一种数据结构 对所有可能查询到的参数用hash的形式存储,在控制层先进行校验,不符合就丢弃,从而避免了对底层存储系统的查询压力。缓存对象当存储层

2020-10-06 14:25:30 253

原创 Redis主从复制

主从复制基本概念最少要一个主节点 二个从节点默认情况下,每台Redis服务器都是主节点 且每一个主机节点可以有多个从几点(或者没有) 而每个从节点只能有一个主节点指将一个Redis服务器的数据,复制到其他的Redis服务器,前者称为主节点,后者称为从节点;数据的赋值时单向的,只能从主节点到从节点。Master以写为主,Slave以读为主。默认情况下,每台Redis服务器都是主节点;且一个主节点可以有多个从节点,但是一个从节点只能有一个主节点。作用数据冗余主从复制实现了数据的热备份,是持久化

2020-10-06 14:23:16 179

原创 简述Jvm运行时数据区域

线程公有堆new对象 存放对象实例的地方此内存地区的唯一目的就是存放对象的实例,Java中几乎所有的对象实例都是在这个地方分配的GC垃圾回收发生的区域方法区存储已经被虚拟机加载的类型信息 常量 静态变量 即时编译器编译器后的代码缓冲等数据线程私有java虚拟机栈生命周期与线程相同。虚拟机栈描述的Java方法执行的线程内存模型:每个方法被执行的时候,Java虚拟机都会同步穿件一个栈帧用于存储局部变量表 操作数栈 动态链接 方法出口等信息。每一个方法被调用直至执行完成的过程,就对应这一个.

2020-10-06 14:16:30 216

原创 java的四大引用类型

Java中的引用类型有四个级别分别为强引用 软引用 弱引用和虚引用强引用:比如一个对象被强引用了,那么垃圾回收机制绝对不会回收它,宁愿抛出 OutOfMemoryError 错误,使程序异常终止。软引用:如果一个对象只具有软引用,那么如果内存空间足够的时候,垃圾回收器就不会回收它,如果内存空间不够了,就会回收这些对象的内存,只要垃圾回收器没有回收,改对象就可以被程序使用。主要用于内存敏感的高速缓存。在 jvm 报告内存不足之前会清除所有的软引用,这样以来 gc 就 有可能收集软引用的对象,可能

2020-10-06 14:15:42 143

原创 类加载机制

什么时候会发生类加载?new对象 创建实例反射访问某个类或接口的静态变量 或是对静态变量赋值调用类的静态方法初始化一个类的子类JVM启动时标明的启动类,即文件名和类名相同的那个类类加载过程当程序主动要使用某个类时,如果该类还没有被加载到内存中,则JVM则会通过加载、连接和初始化来对类进行初始化。加载指把类的class文件读入内存,并且创建一个java.lang.Class对象。类的加载由类记载器来完成。链接当类被加载之后,系统为之生成一个对应的Class对象,接着将会进入连接阶

2020-10-06 14:15:03 183

原创 jvm垃圾回收机制

对象已死?给对象中添加一个引用计数器,每当有一个地方引用他时,计数器值就+1,;当引用失效时,计数器值就-1;任何时刻计数器为0的对象就是不可能在被使用。可达性路径分析法 GC Roots通过一系列的GC Roots的对象作为起始点,从这些根节点开始向下搜索,搜索所走过的路径称为引用链(Reference Chain),当一个对象到GC Roots没有任何引用链相连时,则证明此对象是不可用的。可以作为GC Roots的对象包括以下几点虚拟机栈(栈帧中的本地变量表)中引用的对象。方法区中的类静态属

2020-10-06 14:14:02 238

校园网的设计(计算机网络大作业)

今时代网络发展速度如同光速,计算机变的越来越强大,更多应用软件使计算机变的越来越容易使用,它们正在迅速改变着人们的生活、学习工作方式,人们能够明显感觉到这种变化,总之整个世界正进行着- -次又一次深刻的变革。 学校利用计算机辅助教学、计算机辅助管理将大大提高办学效益,而计算机及校园网络建设是学校计算机辅助管理的"重中之重”。我校作为一.所刚沐浴春风的大学,建设经济、适用、发展的校园网势在必行。建设好校园网,同时也要努力用好校园网,充分发挥校园网络资源在计算机辅助管理中的作用。

2020-09-15

辅导信息管理系统.rar

使用JDBC链接MySQL数据库,实现登录注册功能,以及对信息增删改查。 通过JSP和Layui实现简洁美观的界面,前后端数据交互使用Json对象。  访问JSP界面通过Action实现,不能直接访问网页,保证了安全性。 项目技术:在Java开发环境下,Eclipse编写和MVC框架搭建,前端使用JSP、Layui和Json对象实现,通过JDBC链接数据库,运行在Tomcat服务器上。

2020-09-15

仿qq音乐播放器.rar

Android编写的模仿qq音乐的简单播放器 有登录注册播放音乐等功能  使用Relam数据库实现手机号登录注册和修改密码功能,通过引入AndroidUtilCode工具类实现手机号合法性验证和密码的MD5加密功能,保证了安全性。  使用task栈(默认后进先出)和intent标识符实现界面的合理切换。  引入Gilde读取网络图片和网路音乐资源,使用MediaPlayer实现播放暂停音乐功能。  使用RecyclerView线性布局并且引入Banner实现主界面轮播图,界面美观友好。  项目已经打包为Apk格式,测试已可以在真机上安装并且运行。 带设计文档!!!!!!!!!!!!

2020-09-14

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

TA关注的人

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