Hadoop-java
文章平均质量分 61
BDLng
这个作者很懒,什么都没留下…
展开
-
Java消息队列
Java并法包消息队列及在开源软件中的使用:是什么?BlockingQueue也是java.util.concurrent下主要用来控制线程同步的工具。为什么?锁也是用来控制线程同步的,但是锁这个东西有个特点,比如我有一个人抢到一把锁,我去做事,其他人都要等待,然后当我把这把锁释放的瞬间,那些等待的人到底时谁拿到锁,这个没有顺序预测,完全靠运气,拿锁的顺序不可以控制。怎么办?原创 2017-12-06 19:43:40 · 2112 阅读 · 0 评论 -
JMS(Java消息服务)(Activemq简单介绍)
是什么?JMS(java消息服务)是规范,它定义了一些规则,一些接口。具体实现由各种做这个产品的厂家或开源组织来实现。为什么?在JMS还没有诞生前,每个企业都会有自己的一套内部消息系统,比如项目组A需要调用到项目组B的系统,项目组B也有可能会调用到项目组C的系统。这样每个公司都有自己的一套实现。很不规范。怎么办?Java定义了消息服务的规范,不管哪个厂商做的消息服务的中间件,我原创 2017-12-07 09:36:05 · 3358 阅读 · 0 评论 -
进程和线程
进程:用jps 、ps-ef能看见的,就是进程。程序启动之后,这个程序就是进程;但是有些程序会启动多个进程(像nginx)。Jvm会为进程在内存中分配一个独立的运行空间 线程:程序内部的一个独立的空间;在进程内部,再划分一些独立的空间。线程有自己的内存空间,就是有栈(存储局部变量,操作数)。线程在工作的时候本质就是调一些方法,我这个线程和另一个线程调用同一份代码,方法的代原创 2017-12-07 10:14:20 · 384 阅读 · 0 评论 -
jvm 内存划分 栈区 堆区 方法区
JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)堆区:1.存储的全部是对象,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令)2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身栈区:1.每个线程包含一个栈区,栈中只保存基础数据类型的对象和自定义对象的引用(不转载 2017-12-07 10:54:01 · 1529 阅读 · 0 评论 -
java之反射(RPC中应用demo)
在RPC和动态代理中 经常用到反射,反射就相当于解剖,根据一些jdk提供的方法,类里面的方法,成员变量,构造函数,继承的接口或者类 都可以拿到。反射方式总结:1、Class c1 = Class.forName(“Employee”)2、Class c2 = Employee.class3、Employee e = new Employee() Class c3 = e原创 2017-12-04 20:53:29 · 630 阅读 · 0 评论 -
白话动态代理(附demo)
白话动态代理:假设有一个service类,可以完成根据客户发送的商品请求,然后service类可以根据商品,返回一个价格给客户。与此同时,还有很多的其他业务也在用这个类。现在公司来了个新的需求,要给这个类添加打折,现金抵扣的活动,由于其他业务也存在以来于service类,所以我们不能通过修改这个service类,来满足公司的需求 。这个时候我们就要用到动态代理,写一个动态代理的类,去实现原原创 2017-12-04 21:52:01 · 429 阅读 · 0 评论