上一页 1 2 3 4 5 6 7 ··· 10 下一页
摘要: tomcat环境安装 (1)在 liunx 系统安装 tomcat,使用默认端口 8080 * tomcat 安装文件放到 liunx 系统中,解压, tar -xzvf tomcat.xxx * 进入 tomcat 的 bin 目录中,./startup.sh 启动 tomcat 服务器 (2)对 阅读全文
posted @ 2020-07-31 16:51 liuyanntes'cnblogs 阅读(274) 评论(0) 推荐(0) 编辑
摘要: nginx环境安装 1.联网下载 pcre压缩包 解压压缩文件使用命令 tar –xvf pcre-8.37.tar.gz ./configure 完成后,回到 pcre 目录下执行 make,最后执行 make install 2.安装openssl 、zlib 、 gcc 依赖 yum -y i 阅读全文
posted @ 2020-07-31 16:18 liuyanntes'cnblogs 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 正向代理:如果把局域网外的 Internet 想象成一个巨大的资源库,则局域网中的客户端要访问 Internet,则需要通过代理服务器来访问,这种代理服务就称为正向代理。 反向代理 反向代理中客户端对代理是无感知的,因为客户端不需要任何配置就可以访问,我们只需要将请求发送到反向代理服务器,由反向代理 阅读全文
posted @ 2020-07-31 14:41 liuyanntes'cnblogs 阅读(1023) 评论(0) 推荐(1) 编辑
摘要: 一切设计都是为了提高搜索的性能 倒排索引(Inverted Index)也叫反向索引,有反向索引必有正向索引。通俗地来讲,正向索引是通过key找value,反向索引则是通过value找key。 先来回忆一下我们是怎么插入一条索引记录的: curl -X PUT "localhost:9200/use 阅读全文
posted @ 2020-07-29 14:48 liuyanntes'cnblogs 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 垃圾回收器的新发展 GC仍然处于飞速发展之中,目前的默认选项G1 GC在不断的进行改进,很多我们原来认为的缺点,例如串行的Full GC、Card Table扫描的低效等,都已经被大幅改进,例如,JDK 10以后,Fu1l GC已经是并行运行,在很多场景下,其表现还略优于Parallel GC的并行 阅读全文
posted @ 2020-07-23 16:27 liuyanntes'cnblogs 阅读(1399) 评论(0) 推荐(5) 编辑
摘要: 通过阅读GC日志,我们可以了解Java虛拟机内存分配与回收策略。内存分配与垃圾回收的参数列表 一XX: +PrintGC 输出Gc日志。类似: 一verbose:gc 一XX: +PrintGCDetails 输出GC的详细日志 一XX: +PrintGCTimeStamps 输出GC的时间戳(以基 阅读全文
posted @ 2020-07-23 16:20 liuyanntes'cnblogs 阅读(1094) 评论(0) 推荐(0) 编辑
摘要: G1回收器:区域化分代式 既然我们已经有了前面几个强大的GC,为什么还要发布Garbage First (G1)GC? 原因就在于应用程序所应对的业务越来越庞大、复杂,用户越来越多,没有GC就不能保证应用程序正常进行,而经常造成STW的GC又跟不上实际的需求,所以才会不断地尝试对GC进行优化。G1 阅读全文
posted @ 2020-07-23 15:02 liuyanntes'cnblogs 阅读(3908) 评论(2) 推荐(6) 编辑
摘要: GC逻辑分类 垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的JVM来实现。 由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。 从不同角度分析垃圾收集器,可以将GC分为不同的类型。 按线程数分(垃圾回收线程数) 可以分为串行垃圾回收器和并行垃圾回收 阅读全文
posted @ 2020-07-23 12:13 liuyanntes'cnblogs 阅读(5228) 评论(0) 推荐(4) 编辑
摘要: JVM引用 我们希望能描述这样一类对象: 当内存空间还足够时,则能保留在内存中;如果内存空间在进行垃圾收集后还是很紧张,则可以抛弃这些对象。 -【既偏门又非常高频的面试题】强引用、软引用、弱引用、虚引用有什么区别?具体使用.场景是什么? 在JDK 1.2版之后,Java对引用的概念进行了扩充,将引用 阅读全文
posted @ 2020-07-23 11:44 liuyanntes'cnblogs 阅读(1511) 评论(0) 推荐(0) 编辑
摘要: GC安全点(Safepoint) 程序执行时并非在所有地方都能停顿下来开始GC,只有在特定的位置才能停顿下来开始GC,这些位置称为“安全点(Safepoint) ” Safe Point的选择很重要,如果太少可能导致GC等待的时间太长,如果太频繁可能导致运行时的性能问题。大部分指令的执行时间都非常短 阅读全文
posted @ 2020-07-23 10:25 liuyanntes'cnblogs 阅读(1713) 评论(0) 推荐(1) 编辑
摘要: 程序的并行和并发 程序的并发(Concurrent) 在操作系统中,是指一个时间段中有几个程序都处于己启动运行到运行完毕之间,且这几个程序都是在同一个处理器_上运行。 并发不是真正意义上的“同时进行”,只是CPU把一个时间段划分成几个时间片段(时间区间),然后在这几个时间区间之间来回切换,由于CPU 阅读全文
posted @ 2020-07-23 10:15 liuyanntes'cnblogs 阅读(1129) 评论(0) 推荐(0) 编辑
摘要: Stop The World Stop一the一World,简称STW,指的是Gc事件发生过程中,会产生应用程序的停顿。停顿产生时整个应用程序线程都会被暂停,没有任何响应,有点像卡死的感觉,这个停顿称为STW。. 举例: ➢可达性分析算法中枚举根节点(GC Roots)会导致所有Java执行线程停顿 阅读全文
posted @ 2020-07-23 09:54 liuyanntes'cnblogs 阅读(881) 评论(0) 推荐(0) 编辑
摘要: 内存溢出与内存泄漏 内存溢出相对于内存泄漏来说,尽管更容易被理解,但是同样的,内存溢出也是引发程序崩溃的罪魁祸首之一。 由于GC一直在发展,所有一般情况下,除非应用程序占用的内存增长速度非常快,造成垃圾回收已经跟不上内存消耗的速度,否则不太容易出现OOM的情况。 大多数情况下,GC会进行各种年龄段的 阅读全文
posted @ 2020-07-22 19:58 liuyanntes'cnblogs 阅读(763) 评论(0) 推荐(0) 编辑
摘要: System.gc()无法保证GC一定执行 在默认情况下,通过System.gc()或者Runtime.getRuntime().gc()的调用,会显式触发Full GC,同时对老年代和新生代进行回收,尝试释放被丢弃对象占用的内存。 JVM实现者可以通过system.gc()调用来决定JVM的GC行 阅读全文
posted @ 2020-07-22 16:33 liuyanntes'cnblogs 阅读(3853) 评论(0) 推荐(2) 编辑
摘要: 垃圾标记阶段 对象存活判断:在堆里存放着几乎所有的Java对象实例,在GC执行垃圾回收之前,首先需要区分出内存中哪些是存活对象,哪些是已经死亡的对象。只有被标记为己经死亡的对象,GC才会在执行垃圾回收时,释放掉其所占用的内存空间,因此这个过程我们可以称为垃圾标记阶段。 那么在JVM中究竟是如何标记一 阅读全文
posted @ 2020-07-21 15:30 liuyanntes'cnblogs 阅读(1298) 评论(2) 推荐(4) 编辑
摘要: 什么是垃圾 什么是垃圾( Garbage) 呢? ➢垃圾是指在运行程序中没有任何指针指向的对象,这个对象就是需要被回收的垃圾。 ➢外文: An object is considered garbage when it can no longer be reached from any pointer 阅读全文
posted @ 2020-07-21 14:57 liuyanntes'cnblogs 阅读(740) 评论(0) 推荐(1) 编辑
摘要: String的基本特性 String:字符串,使用一对""引起来表示。 String sl = "hello";//字面量的定义方式; String s2 = new String("hello") ; String类是已经被声明为final的, 不可被继承。 String实现了Serializab 阅读全文
posted @ 2020-07-19 18:44 liuyanntes'cnblogs 阅读(1401) 评论(0) 推荐(3) 编辑
摘要: 1.执行引擎是Java虚拟机的核心组成部分之一 2.虚拟机是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器、缓存、指令集和操作系统层面上的。 而虚拟机的执行引擎则是由软件自行实现的,因此可以不受物理条件制约地定制指令集与执行引擎的结构体系,能够执行 阅读全文
posted @ 2020-07-18 10:15 liuyanntes'cnblogs 阅读(4294) 评论(0) 推荐(5) 编辑
摘要: 直接内存 1.直接内存不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域。 2.直接内存是Java堆外的、直接向系统申请的内存区间。 3.简单理解: java process memory = java heap + native memory 示例代码: /** * IO 阅读全文
posted @ 2020-07-18 10:01 liuyanntes'cnblogs 阅读(3062) 评论(0) 推荐(1) 编辑
摘要: 对象的实例化 创建对象的方式 1.new:最常见的方式(本质是构造器) 变形1 : Xxx的静态方法 变形2 : XxBuilder/XxoxFactory的静态方法 2.Class的newInstance():反射的方式,只能调用空参的构造器,权限必须是public 3.Constructor的n 阅读全文
posted @ 2020-07-17 17:21 liuyanntes'cnblogs 阅读(831) 评论(0) 推荐(3) 编辑
上一页 1 2 3 4 5 6 7 ··· 10 下一页