上一页 1 2 3 4 5 6 7 8 9 ··· 22 下一页
摘要: 本篇原文作者是 LinkedIn 的 Swapnil Ghike,这篇文章讲述了 LinkedIn 的 Feed 产品的 GC 优化过程,虽然文章写作于 April 8, 2014,但其中的很多内容和知识点非常有学习和参考意义。 背景 高性能应用构成了现代网络的支柱。LinkedIn 内部有许多高吞 阅读全文
posted @ 2020-03-10 10:49 CQqfjy 阅读(497) 评论(0) 推荐(0) 编辑
摘要: 最近一直在做性能压测相关的事情,有公众号的读者朋友咨询有赞的数据库服务器有没有开启huge page,我听说过huge page会对性能有所提升,本文就一探究竟。对过程没有兴趣的可以直接看结论。 二 Huge Page 来龙去脉 2.1 为什么需要Huge Page 在 Linux 操作系统上运行内 阅读全文
posted @ 2020-03-10 10:47 CQqfjy 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 一、经典的生产者消费者案例 上一篇文章我们提到一个应用可以创建多个线程去执行不同的任务,如果这些任务之间有着某种关系,那么线程之间必须能够通信来协调完成工作。 生产者消费者问题(英语:Producer-consumer problem)就是典型的多线程同步案例,它也被称为有限缓冲问题(英语:Boun 阅读全文
posted @ 2020-03-10 10:41 CQqfjy 阅读(1185) 评论(0) 推荐(0) 编辑
摘要: 目录 dubbo 的 Consumer 消费者如何使用 Netty dubbo 的 Provider 提供者如何使用 Netty 总结 前言 众所周知,国内知名框架 Dubbo 底层使用的是 Netty 作为网络通信,那么内部到底是如何使用的呢?今天我们就来一探究竟。 1. dubbo 的 Cons 阅读全文
posted @ 2020-03-10 10:40 CQqfjy 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 目录: 1. Nginx的整体架构 2. Nginx的模块化设计 3. Nginx的请求方式处理 4. Nginx事件驱动模型 5. Nginx进程处理模型 写在前面 Nginx 是一个 免费的,开源的,高性能的 HTTP 服务器和反向代理。以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻 阅读全文
posted @ 2020-03-10 10:38 CQqfjy 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 什么是自动垃圾回收? 第一步:标记 第二步:清除 压缩 为什么需要分代垃圾收集? JVM 分代 世代垃圾收集过程 什么是自动垃圾回收? 自动垃圾回收是一种在堆内存中找出哪些对象在被使用,还有哪些对象没被使用,并且将后者删掉的机制。 所谓使用中的对象(已引用对象),指的是程序中有指针指向的对象;而未使 阅读全文
posted @ 2020-03-10 10:37 CQqfjy 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 数据库优化一方面是找出系统的瓶颈,提高MySQL数据库的整体性能,而另一方面需要合理的结构设计和参数调整,以提高用户的相应速度,同时还要尽可能的节约系统资源,以便让系统提供更大的负荷. 1. 优化一览图 2. 优化 笔者将优化分为了两大类,软优化和硬优化,软优化一般是操作数据库即可,而硬优化则是操作 阅读全文
posted @ 2020-03-10 10:35 CQqfjy 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 单例,大家肯定都不陌生,这是Java中很重要的一个设计模式。稍微了解一点单例的朋友也都知道实现单例是要考虑并发问题的,一般情况下,我们都会使用synchronized来保证线程安全。 那么,如果有这样一道面试题:不使用synchronized和lock,如何实现一个线程安全的单例?你该如何回答? C 阅读全文
posted @ 2020-03-10 10:34 CQqfjy 阅读(240) 评论(0) 推荐(0) 编辑
摘要: Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。也是几乎所有Java工作者必须要掌握的框架之一,其优秀的设计思想以及其代码实现上的艺术也是我们需要掌握的。 要学习Spring,除了在我们的项目中使用之外,也需要对它的源码进行研读,但是Spring的实现涵盖 阅读全文
posted @ 2020-03-10 10:31 CQqfjy 阅读(349) 评论(0) 推荐(0) 编辑
摘要: knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案(在非Java项目中也提供了前端UI的增强解决方案),前身是swagger-bootstrap-ui,取名knife4j是希望她能像一把匕首一样小巧,轻量,并且功能强悍! 二、开源仓库 Github https:// 阅读全文
posted @ 2020-03-10 10:29 CQqfjy 阅读(828) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 22 下一页