返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:
本店所有商品

  • [正版]Java性能优化实践 JVM调优策略工具与技巧 JAVA程序设计书籍入门零基础自学核心技术深入理解jvm虚拟机
  • 正版图书!品质保证!默认发最新版本!收藏店铺可享优先发货!
    • 作者: 本杰明·J.埃文斯著 | | 曾波译
    • 出版社: 人民邮电出版社
    • 出版时间:1
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    友一个文化制品专营店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品参数
    • 作者: 本杰明·J.埃文斯著| 曾波译
    • 出版社:人民邮电出版社
    • 出版时间:1
    • 开本:16开
    • ISBN:9784099162828
    • 版权提供:人民邮电出版社

            铺公告

      为保障消费者合理购买需求及公平交易机会,避免因非生活消费目的的购买货囤积商品,抬价转售等违法行为发生,店铺有权对异常订单不发货且不进行赔付。异常订单:包括但不限于相同用户ID批量下单,同一用户(指不同用户ID,存在相同/临近/虚构收货地址,或相同联系号码,收件人,同账户付款人等情形的)批量下单(一次性大于5本),以及其他非消费目的的交易订单。

    温馨提示:请务必当着快递员面开箱验货,如发现破损,请立即拍照拒收,如验货有问题请及时联系在线客服处理,(如开箱验货时发现破损,所产生运费由我司承担,一经签收即为货物完好,如果您未开箱验货,一切损失就需要由买家承担,所以请买家一定要仔细验货)。

      关于退货运费:对于下单后且物流已发货货品在途的状态下,原则上均不接受退货申请,如顾客原因退货需要承担来回运费,如因产品质量问题(非破损问题)可在签收后,联系在线客服。

     

     


    内容介绍

    本书从实验科学的角度探讨了Java性能优化的方方面面,重点阐述了*新的实用JVM性能调优策略、工具和技巧。通过本书,我们不仅可以了解Java原理和技术如何充分利用现代硬件和操作系统、衡量Java性能的陷阱以及微基准测试的弊端有哪些,还能深入研究可能使团队烦恼的几种性能测试和常见反模式、JVM垃圾收集、JIT编译和Java语言性能技术等。本书为读者打开了深入理解Java性能的大门,并以路标助力其优化之旅。
    目录

    中文版推荐序一 xv
    中文版推荐序二 xvi
    序 xvii
    前言 xix
    第 1 章 明确优化与性能 1
    1.1 关于Java性能的误解 1
    1.2 Java性能概览 2
    1.3 作为实验科学的性能 3
    1.4 性能分类方法 4
    1.4.1 吞吐量 4
    1.4.2 延迟 5
    1.4.3 容量 5
    1.4.4 利用率 5
    1.4.5 效率 5
    1.4.6 可扩展性 5
    1.4.7 降级 6
    1.4.8 各种性能观测之间的关联 6
    1.5 阅读性能图 7
    1.6 小结 11
    第 2 章 JVM概览 12
    2.1 解释和类加载 12
    2.2 执行字节码 13
    2.3 HotSpot简介 17
    2.4 JVM内存管理 19
    2.5 线程和Java内存模型 20
    2.6 认识不同的JVM 20
    2.7 JVM的监控和工具 22
    2.8 小结 25
    第 3 章 硬件与操作系统 26
    3.1 现代硬件简介 27
    3.2 内存 27
    3.3 现代处理器特性 33
    3.3.1 翻译后备缓冲器 33
    3.3.2 分支预测和推测执行 33
    3.3.3 硬件存储器模型 33
    3.4 操作系统 34
    3.4.1 调度器 35
    3.4.2 时间问题 36
    3.4.3 上下文切换 37
    3.5 一个简单的系统模型 38
    3.6 基本探测策略 39
    3.6.1 利用CPU 40
    3.6.2 垃圾收集 41
    3.6.3 I/O 42
    3.6.4 机械共鸣 43
    3.7 虚拟化 44
    3.8 JVM和操作系统 45
    3.9 小结 46
    第 4 章 性能测试模式与反模式 47
    4.1 性能测试的类型 47
    4.1.1 延迟测试 48
    4.1.2 吞吐量测试 48
    4.1.3 负载测试 49
    4.1.4 压力测试 49
    4.1.5 耐久性测试 49
    4.1.6 容量规划测试 49
    4.1.7 退化测试 50
    4.2 *佳实践入门 50
    4.2.1 自上而下的性能测试 50
    4.2.2 创建一个测试环境 51
    4.2.3 确定性能要求 52
    4.2.4 Java特有的问题 52
    4.2.5 将性能测试当作软件开发生命周期的一部分 52
    4.3 性能反模式 53
    4.3.1 厌倦 53
    4.3.2 填充简历 54
    4.3.3 同侪压力 54
    4.3.4 缺乏理解 54
    4.3.5 被错误理解的问题/不存在的问题 54
    4.4 性能反模式目录 55
    4.4.1 被热门技术分心 55
    4.4.2 被简单分心 55
    4.4.3 性能调优天才 56
    4.4.4 按照坊间传说调优 57
    4.4.5 把责任归咎给驴 58
    4.4.6 忽略大局 59
    4.4.7 用户验收测试环境就是我的计算机 60
    4.4.8 类似生产环境的数据很难表示 61
    4.5 认知偏差与性能测试 62
    4.5.1 还原论思维 62
    4.5.2 确认偏差 63
    4.5.3 战争的迷雾(行动偏差) 63
    4.5.4 风险偏差 64
    4.5.5 埃尔斯伯格悖论 64
    4.6 小结 65
    第 5 章 微基准测试与统计 66
    5.1 Java性能测量 66
    5.2 JMH 70
    5.2.1 不是万不得已,不要做微基准测试(一个真实的故事) 70
    5.2.2 关于何时使用微基准测试的启发 70
    5.2.3 JMH框架 72
    5.2.4 执行基准测试 73
    5.3 JVM性能统计 77
    5.3.1 误差类型 78
    5.3.2 非正态统计 82
    5.4 统计的解释 85
    5.5 小结 88
    第 6 章 理解垃圾收集 89
    6.1 标记和清除 90
    6.2 HotSpot运行时 92
    6.2.1 对象的运行时表示 92
    6.2.2 GC根和Arena 95
    6.3 分配与生命周期 96
    6.4 HotSpot中的垃圾收集 98
    6.4.1 线程本地分配 98
    6.4.2 半空间收集 99
    6.5 并行收集器 100
    6.5.1 新生代并行收集 101
    6.5.2 老年代并行收集 102
    6.5.3 并行收集器的局限性 103
    6.6 分配的作用 104
    6.7 小结 108
    第 7 章 垃圾收集*级话题 109
    7.1 权衡与可插拔的收集器 109
    7.2 并发垃圾收集理论 111
    7.2.1 JVM安全点 111
    7.2.2 三色标记 112
    7.3 CMS 114
    7.3.1 CMS是如何工作的 115
    7.3.2 用于CMS的基本JVM标志 117
    7.4 G1 118
    7.4.1 G1堆布局和区域 118
    7.4.2 G1算法设计 119
    7.4.3 G1的各阶段 120
    7.4.4 用于G1的基本JVM标志 121
    7.5 Shenandoah 121
    7.5.1 并发压缩 123
    7.5.2 获取Shenandoah 123
    7.6 C4(Azul Zing) 124
    7.7 IBM J9中的均衡收集器 127
    7.7.1 J9对象头 128
    7.7.2 Balanced收集器的大数组 129
    7.7.3 NUMA和Balanced收集器 129
    7.8 遗留的HotSpot收集器 130
    7.8.1 Serial和SerialOld 130
    7.8.2 增量式CMS 131
    7.8.3 已被废弃和删除的垃圾收集组合 131
    7.8.4 Epsilon 131
    7.9 小结 132
    第 8 章 垃圾收集日志、监控、调优及工具 133
    8.1 认识垃圾收集日志 133
    8.1.1 开启垃圾收集日志记录 133
    8.1.2 垃圾收集日志与JMX的对比 134
    8.1.3 JMX的缺点 135
    8.1.4 垃圾收集日志数据带来的好处 136
    8.2 日志解析工具 136
    8.2.1 Censum 137
    8.2.2 GCViewer 139
    8.2.3 对于同一数据的不同可视化效果 140
    8.3 基本垃圾收集调优 141
    8.3.1 理解分配行为 142
    8.3.2 理解暂停时间 144
    8.3.3 收集器线程和GC根 145
    8.4 调优Parallel GC 147
    8.5 调优CMS 148
    8.6 调优G1 150
    8.7 jHiccup 152
    8.8 小结 154
    第 9 章 JVM上的代码执行 155
    9.1 字节码解释概览 155
    9.1.1 JVM字节码 158
    9.1.2 简单解释器 163
    9.1.3 HotSpot特定细节 165
    9.2 AOT编译和JIT编译 166
    9.2.1 AOT编译 166
    9.2.2 JIT编译 167
    9.2.3 比较AOT和JIT 168
    9.3 HotSpot JIT基础 168
    9.3.1 Klass字、虚函数表和指针变换 168
    9.3.2 JIT编译日志 169
    9.3.3 HotSpot中的编译器 171
    9.3.4 HotSpot中的分层编译 171
    9.4 代码缓存 172
    9.5 简单JIT调优 173
    9.6 小结 174
    第 10 章 理解即时编译 175
    10.1 认识JITWatch 175
    10.1.1 基本的JITWatch视图 176
    10.1.2 调试JVM和hsdi 180
    10.2 介绍JIT编译 180
    10.3 内联 181
    10.3.1 内联的限制 182
    10.3.2 调优内联子系统 183
    10.4 循环展开 184
    10.5 逃逸分析 186
    10.5.1 消除堆分配 187
    10.5.2 锁与逃逸分析 188
    10.5.3 逃逸分析的限制 189
    10.6 单态分派 192
    10.7 内部函数 195
    10.8 栈上替换 197
    10.9 再谈安全点 199
    10.10 核心库方法 199
    10.10.1 内联方法的大小上限 199
    10.10.2 编译方法的大小上限 203
    10.11 小结 204
    第 11 章 Java语言性能技术 205
    11.1 优化集合 206
    11.2 针对列表的优化考虑 207
    11.2.1 ArrayList 207
    11.2.2 LinkedList 208
    11.2.3 ArrayList与LinkedList的对比 209
    11.3 针对映射的优化考虑 210
    11.3.1 HashMap 210
    11.3.2 TreeMap 212
    11.3.3 缺少MultiMap 213
    11.4 针对集的优化考虑 213
    11.5 领域对象 213
    11.6 避免终结化 216
    11.6.1 血泪史:忘记清理 217
    11.6.2 为什么不使用终结化来解决这个问题 217
    11.6.3 try-with-resources 219
    11.7 方法句柄 223
    11.8 小结 226
    第 12 章 并发性能技术 227
    12.1 并行介绍 228
    12.2 理解JMM 232
    12.3 构建并发库 236
    12.3.1 Unsafe 237
    12.3.2 原子与CAS 238
    12.3.3 锁和自旋锁 239
    12.4 并发库总结 240
    12.4.1 java.util.concurrent中的Lock 240
    12.4.2 读/ 写锁 241
    12.4.3 信号量 242
    12.4.4 并发集合 242
    12.4.5 锁存器和屏障 243
    12.5 执行器和任务抽象 245
    12.5.1 认识异步执行 245
    12.5.2 选择一个ExecutorService 246
    12.5.3 Fork/Join 246
    12.6 现代Java并发 248
    12.6.1 流和并行流 248
    12.6.2 无锁技术 249
    12.6.3 基于Actor的技术 250
    12.7 小结 251
    第 13 章 剖析 252
    13.1 认识剖析 252
    13.2 采样与安全点偏差 253
    13.3 面向开发人员的执行剖析工具 255
    13.3.1 VisualVM剖析器 255
    13.3.2 JProfiler 256
    13.3.3 YourKit 261
    13.3.4 Java Flight Recorder和Java Mission Control 262
    13.3.5 运维工具 266
    13.4 现代剖析器 269
    13.5 分配剖析器 272
    13.6 堆转储分析 278
    13.7 小结 280
    第 14 章 高性能日志和消息系统 281
    14.1 日志 282
    14.2 设计一个影响较低的日志记录器 284
    14.3 使用Real Logic库实现低延迟 286
    14.3.1 Agrona 287
    14.3.2 Simple Binary Encoding 291
    14.3.3 Aeron 294
    14.3.4 Aeron的设计 296
    14.4 小结 299
    第 15 章 Java 9以及Java的未来方向 300
    15.1 Java 9中小的性能增强 301
    15.1.1 分段式代码缓存 301
    15.1.2 紧凑的字符串 301
    15.1.3 新的字符串连接 302
    15.1.4 C2编译器的改进 303
    15.1.5 新版G1收集器 304
    15.2 Java 10和未来版本 305
    15.2.1 新的发布流程 305
    15.2.2 Java 10 305
    15.3 Java 9及更高版本中的Unsafe 307
    15.4 Valhalla项目和值类型 308
    15.5 Graal和Truffle 312
    15.6 字节码的未来方向 313
    15.7 并发的未来方向 315
    15.8 总结 316
    作者介绍 318
    封面介绍 318

    作者介绍

    本杰明·J.埃文斯(Benjamin J.Evans),初创公司jClarity联合创始人和技术Fellow,获得过Java Champion荣誉和JavaOne Rockstar奖,《Java程序员修炼之道》合著者。 詹姆斯·高夫(James Gough),Java*发者和技术图书作者,任职于摩根士丹利,专注构建面向客户的技术。 克里斯·纽兰(Chris Newland),JITWatch项目作者,Java Champion荣誉得主,ADVFN*级*发者和团队负责人,擅长使用Java来处理实时的股市数据。 【译者介绍】 曾波,互联网架构师,拥有13年互联网从业经验,曾任职于微软、什么值得买、京东金融、鹏博士电信传媒集团,曾参与多家公司的技术团队从建立到成熟的过程,主持实施了重大技术决策和技术落地,在大规模复杂系统架构和技术管理方面拥有丰富的实践经验。
    关联推荐

    理论与方法相结合,全面阐释JVM领域新知识和一线生产调优经验
    1
    • 商品详情
    • 内容简介

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购