JRockit权威指南 深入理解JVM

JRockit权威指南 深入理解JVM
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
2019-01
版次: 1
ISBN: 9787115500458
定价: 99.00
装帧: 其他
开本: 16开
纸张: 胶版纸
11人买过
  • 本书面向所有以Java编程语言为工作中心的开发人员和系统管理员,分为3大部分。*部分着重介绍了JVM和自适应运行时的工作原理,并以JRockit为例专门介绍到底什么是好的Java代码。第二部分介绍JRockit Mission Control套件的具体功能,以及如何使用JRockit Mission Control套件来查找应用程序的性能瓶颈。第三部分介绍Java发展方向。 马库斯·希尔特(Marcus Hirt),JRockit核心开发者,Appeal Virtual Machines公司联合创始人,目前任职于Oracle Java产品组。

    马库斯·拉杰格伦(Marcus Lagergren),JRockit代码生成器架构和项目负责人,Appeal Virtual Machines创始成员。2016年Java Champion得主,一直致力于Java语言的开发和改进。

    曹旭东,毕业于哈工大,目前就职于滴滴,从事后端应用开发工作,另有译作《深入剖析Tomcat》。 第 1章 起步  1

    1.1 获取JRockit JVM 1

    1.2 将应用程序迁移到JRockit 2

    1.2.1 命令行选项 3

    1.2.2 行为差异 3

    1.3 JRockit版本号的命名规则 4

    1.4 获取帮助 5

    1.5 小结 5

    第 2章 自适应代码生成 6

    2.1 平台无关性 6

    2.2 Java虚拟机 7

    2.2.1 基于栈的虚拟机 8

    2.2.2 字节码格式 8

    2.3 代码生成策略 10

    2.3.1 纯解释执行 10

    2.3.2 静态编译 11

    2.3.3 完全JIT编译 12

    2.3.4 混合模式 12

    2.4 自适应代码生成 13

    2.4.1 判断热方法 14

    2.4.2 优化动态程序 14

    2.5 深入JIT编译器 16

    2.5.1 处理字节码 16

    2.5.2 字节码“优化器” 18

    2.5.3 优化字节码 21

    2.6 代码流水线 22

    2.6.1 为什么JRockit没有字节码解释器 22

    2.6.2 启动 23

    2.6.3 运行时代码生成 24

    2.6.4 代码生成概述 26

    2.7 控制代码生成 38

    2.8 小结 42

    第3章 自适应内存管理 43

    3.1 自动内存管理 43

    3.1.1 自适应内存管理 44

    3.1.2 自动内存管理的优点 44

    3.1.3 自动内存管理的缺点 45

    3.2 堆管理基础 45

    3.2.1 对象的分配与释放 45

    3.2.2 碎片与整理 45

    3.3 垃圾回收算法 47

    3.3.1 引用计数 47

    3.3.2 引用跟踪 47

    3.3.3 STW 50

    3.3.4 分代垃圾回收 55

    3.3.5 吞吐量与延迟 57

    3.3.6 JRockit中的垃圾回收 58

    3.4 性能与伸缩性 60

    3.4.1 线程局部分配 60

    3.4.2 更大的堆内存 61

    3.4.3 缓存友好性 64

    3.4.4 NUMA架构 65

    3.4.5 大内存页 66

    3.4.6 自适应 67

    3.5 近实时垃圾回收 69

    3.5.1 软实时与硬实时 69

    3.5.2 JRockit Real Time 69

    3.6 内存操作相关的API 72

    3.6.1 析构方法 72

    3.6.2 Java中的引用 73

    3.6.3 JVM的行为差异 75

    3.7 陷阱与伪优化 75

    3.8 JRockit中的内存管理 76

    3.8.1 基本参数 76

    3.8.2 压缩引用 78

    3.8.3 高级选项 78

    3.9 小结 79

    第4章 线程与同步 80

    4.1 基本概念 80

    4.1.1 难以调试 82

    4.1.2 难以优化 82

    4.2 Java API 84

    4.2.1 synchronized关键字 84

    4.2.2 java.lang.Thread类 84

    4.2.3 java.util.concurrent包 85

    4.2.4 信号量 85

    4.2.5 volatile关键字 87

    4.3 Java中线程与同步机制的实现 88

    4.3.1 Java内存模型 88

    4.3.2 同步的实现 91

    4.3.3 同步在字节码中的实现 96

    4.3.4 线程的实现 99

    4.4 对于线程与同步的优化 100

    4.4.1 锁膨胀与锁收缩 100

    4.4.2 递归锁 101

    4.4.3 锁融合 101

    4.4.4 延迟解锁 102

    4.5 陷阱与伪优化 105

    4.5.1 Thread.stop、Thread.resume和Thread.suspend 105

    4.5.2 双检查锁 106

    4.6 相关命令行参数 107

    4.6.1 检查锁与延迟解锁 107

    4.6.2 输出调用栈信息 108

    4.6.3 锁分析 110

    4.6.4 设置线程栈的大小 111

    4.6.5 使用命令行参数控制锁的行为 111

    4.7 小结 111

    第5章 基准测试与性能调优 113

    5.1 为何要进行基准测试 113

    5.1.1 制定性能目标 114

    5.1.2 对性能进行回归测试 114

    5.1.3 确定优化方向 115

    5.1.4 商业应用 115

    5.2 如何构建基准测试 116

    5.2.1 置身事外 116

    5.2.2 多次测量 118

    5.2.3 微基准测试 118

    5.2.4 测试前热身 121

    5.3 确定测试目标 122

    5.3.1 吞吐量 122

    5.3.2 兼顾吞吐量、响应时间和延迟 122

    5.3.3 伸缩性 122

    5.3.4 电力消耗 124

    5.3.5 其他问题 124

    5.4 工业级基准测试 124

    5.4.1 SPEC基准测试套件 124

    5.4.2 SipStone基准测试 128

    5.4.3 DaCapo基准测试 128

    5.4.4 真实场景下的应用程序 128

    5.5 基准测试的潜在风险 128

    5.6 性能调优 129

    5.6.1 非规范化行为 129

    5.6.2 调优目标 130

    5.7 常见性能瓶颈与规避方法 138

    5.7.1 命令行参数-XXaggressive 138

    5.7.2 析构函数 139

    5.7.3 引用对象过多 139

    5.7.4 对象池 139

    5.7.5 算法与数据结构 140

    5.7.6 误用System.gc() 141

    5.7.7 线程数太多 141

    5.7.8 锁竞争导致性能瓶颈 142

    5.7.9 不必要的异常 142

    5.7.10 大对象 144

    5.7.11 本地内存与堆内存 144

    5.8 wait方法、notify方法与胖锁 145

    5.8.1 堆的大小设置不当 145

    5.8.2 存活对象过多 145

    5.8.3 Java并非万能 145

    5.9 小结 146

    第6章 JRockit Mission Control套件 147

    6.1 背景介绍 147

    6.1.1 采样分析与准确分析 148

    6.1.2 用途广泛 149

    6.2 概述 150

    6.2.1 JRockit Mission Control的服务器端组件 151

    6.2.2 JRockit Mission Control的客户端组件 151

    6.2.3 术语介绍 153

    6.2.4 独立运行JRockit Mission Control 153

    6.2.5 在Eclipse中运行JRockit Mission Control 154

    6.2.6 远程管理JRockit 155

    6.2.7 安全限制 159

    6.2.8 处理连接问题 160

    6.3 更新点 162

    6.4 调试JRockit Mission Control 162

    6.5 小结 164

    第7章 Management Console 165

    7.1 JMX Management Console 165

    7.2 Management Console 166

    7.2.1 一般信息标签组 166

    7.2.2 MBean标签组 171

    7.2.3 运行时标签组 174

    7.2.4 高级标签组 176

    7.2.5 其他标签组 177

    7.3 扩展JRockit Mission Control Console 178

    7.4 小结 181

    第8章 JRockit Runtime Analyzer 182

    8.1 反馈信息的必要性 182

    8.2 分析JRA记录 185

    8.2.1 一般信息标签组 185

    8.2.2 内存标签组 186

    8.2.3 代码标签组 188

    8.2.4 线程/锁标签组 190

    8.2.5 延迟标签组 192

    8.2.6 使用操作集 195

    8.3 故障排除 197

    8.4 小结 198

    第9章 JRockit Flight Recorder 199

    9.1 JRA进化 199

    9.1.1 关于事件 200

    9.1.2 记录引擎 200

    9.1.3 启动参数 202

    9.2 在JRockit Mission Control中使用JFR 203

    9.3 与JRA的区别 205

    9.3.1 范围选择器 205

    9.3.2 操作集 206

    9.3.3 关联键 206

    9.3.4 延迟分析 206

    9.3.5 异常分析 207

    9.3.6 内存分析 209

    9.4 自定义事件 210

    9.5 扩展JFR 213

    9.6 小结 215

    第 10章 Memory Leak Detector 216

    10.1 Java内存泄漏 216

    10.1.1 静态编程语言中的内存泄漏 216

    10.1.2 自动内存管理中的内存泄漏 217

    10.2 检测Java中的内存泄漏 217

    10.3 Memleak简介 218

    10.4 追踪内存泄漏 219

    10.5 交互式追踪内存泄漏 224

    10.6 通用堆分析器 226

    10.7 追踪内存分配 227

    10.8 问题排查 227

    10.9 小结 228

    第 11章 JRCMD 229

    11.1 简介 229

    11.2 覆盖SIGQUIT信号处理句柄 230

    11.3 JRCMD的限制 232

    11.4 JRCMD命令参考 232

    11.4.1 check_flightrecording(R28) 232

    11.4.2 checkjrarecording(R27) 233

    11.4.3 command_line 234

    11.4.4 dump_flightrecording(R28) 234

    11.4.5 heap_diagnostics(R28) 234

    11.4.6 hprofdump(R28) 237

    11.4.7 kill_management_server 238

    11.4.8 list_vmflags(R28) 238

    11.4.9 lockprofile_print 239

    11.4.10 lockprofile_reset 240

    11.4.11 memleakserver 240

    11.4.12 oom_diagnostics(R27) 240

    11.4.13 print_class_summary 240

    11.4.14 print_codegen_list 241

    11.4.15 print_memusage(R27) 242

    11.4.16 print_memusage(R28) 243

    11.4.17 print_object_summary 247

    11.4.18 print_properties 249

    11.4.19 print_threads 250

    11.4.20 print_utf8pool 251

    11.4.21 print_vm_state 251

    11.4.22 run_optfile(R27) 252

    11.4.23 run_optfile(R28) 252

    11.4.24 runfinalization 253

    11.4.25 runsystemgc 253

    11.4.26 set_vmflag(R28) 253

    11.4.27 start_flightrecording(R28) 253

    11.4.28 start_management_server 254

    11.4.29 startjrarecording(R27) 255

    11.4.30 stop_flightrecording(R28) 256

    11.4.31 timestamp 256

    11.4.32 verbosity 256

    11.4.33 version 257

    11.5 小结 258

    第 12章 JRockit Management API 259

    12.1 JMAPI 259

    12.2 JMXMAPI 263

    12.2.1 JRockit内部性能计数器 264

    12.2.2 使用JMXMAPI构建可远程操作的JRCMD 266

    12.3 小结 270

    第 13章 JRockit Virtual Edition 271

    13.1 虚拟化简介 272

    13.1.1 全虚拟化 272

    13.1.2 半虚拟化 273

    13.1.3 其他虚拟化术语 273

    13.1.4 虚拟机管理程序 273

    13.1.5 虚拟化的优势 275

    13.1.6 虚拟化的劣势 275

    13.2 Java虚拟化 276

    13.2.1 JRockit Virtual Edition 277

    13.2.2 虚拟机镜像与管理框架 279

    13.2.3 JRockit VE的优势 284

    13.2.4 JRockit VE的限制 287

    13.3 虚拟化能媲美真实环境吗 287

    13.3.1 高质量的热点代码采样 288

    13.3.2 自适应堆大小 288

    13.3.3 线程间的页保护 289

    13.4 小结 291

    附录A 参考文献 292

    附录B 术语表 296
  • 内容简介:
    本书面向所有以Java编程语言为工作中心的开发人员和系统管理员,分为3大部分。*部分着重介绍了JVM和自适应运行时的工作原理,并以JRockit为例专门介绍到底什么是好的Java代码。第二部分介绍JRockit Mission Control套件的具体功能,以及如何使用JRockit Mission Control套件来查找应用程序的性能瓶颈。第三部分介绍Java发展方向。
  • 作者简介:
    马库斯·希尔特(Marcus Hirt),JRockit核心开发者,Appeal Virtual Machines公司联合创始人,目前任职于Oracle Java产品组。

    马库斯·拉杰格伦(Marcus Lagergren),JRockit代码生成器架构和项目负责人,Appeal Virtual Machines创始成员。2016年Java Champion得主,一直致力于Java语言的开发和改进。

    曹旭东,毕业于哈工大,目前就职于滴滴,从事后端应用开发工作,另有译作《深入剖析Tomcat》。
  • 目录:
    第 1章 起步  1

    1.1 获取JRockit JVM 1

    1.2 将应用程序迁移到JRockit 2

    1.2.1 命令行选项 3

    1.2.2 行为差异 3

    1.3 JRockit版本号的命名规则 4

    1.4 获取帮助 5

    1.5 小结 5

    第 2章 自适应代码生成 6

    2.1 平台无关性 6

    2.2 Java虚拟机 7

    2.2.1 基于栈的虚拟机 8

    2.2.2 字节码格式 8

    2.3 代码生成策略 10

    2.3.1 纯解释执行 10

    2.3.2 静态编译 11

    2.3.3 完全JIT编译 12

    2.3.4 混合模式 12

    2.4 自适应代码生成 13

    2.4.1 判断热方法 14

    2.4.2 优化动态程序 14

    2.5 深入JIT编译器 16

    2.5.1 处理字节码 16

    2.5.2 字节码“优化器” 18

    2.5.3 优化字节码 21

    2.6 代码流水线 22

    2.6.1 为什么JRockit没有字节码解释器 22

    2.6.2 启动 23

    2.6.3 运行时代码生成 24

    2.6.4 代码生成概述 26

    2.7 控制代码生成 38

    2.8 小结 42

    第3章 自适应内存管理 43

    3.1 自动内存管理 43

    3.1.1 自适应内存管理 44

    3.1.2 自动内存管理的优点 44

    3.1.3 自动内存管理的缺点 45

    3.2 堆管理基础 45

    3.2.1 对象的分配与释放 45

    3.2.2 碎片与整理 45

    3.3 垃圾回收算法 47

    3.3.1 引用计数 47

    3.3.2 引用跟踪 47

    3.3.3 STW 50

    3.3.4 分代垃圾回收 55

    3.3.5 吞吐量与延迟 57

    3.3.6 JRockit中的垃圾回收 58

    3.4 性能与伸缩性 60

    3.4.1 线程局部分配 60

    3.4.2 更大的堆内存 61

    3.4.3 缓存友好性 64

    3.4.4 NUMA架构 65

    3.4.5 大内存页 66

    3.4.6 自适应 67

    3.5 近实时垃圾回收 69

    3.5.1 软实时与硬实时 69

    3.5.2 JRockit Real Time 69

    3.6 内存操作相关的API 72

    3.6.1 析构方法 72

    3.6.2 Java中的引用 73

    3.6.3 JVM的行为差异 75

    3.7 陷阱与伪优化 75

    3.8 JRockit中的内存管理 76

    3.8.1 基本参数 76

    3.8.2 压缩引用 78

    3.8.3 高级选项 78

    3.9 小结 79

    第4章 线程与同步 80

    4.1 基本概念 80

    4.1.1 难以调试 82

    4.1.2 难以优化 82

    4.2 Java API 84

    4.2.1 synchronized关键字 84

    4.2.2 java.lang.Thread类 84

    4.2.3 java.util.concurrent包 85

    4.2.4 信号量 85

    4.2.5 volatile关键字 87

    4.3 Java中线程与同步机制的实现 88

    4.3.1 Java内存模型 88

    4.3.2 同步的实现 91

    4.3.3 同步在字节码中的实现 96

    4.3.4 线程的实现 99

    4.4 对于线程与同步的优化 100

    4.4.1 锁膨胀与锁收缩 100

    4.4.2 递归锁 101

    4.4.3 锁融合 101

    4.4.4 延迟解锁 102

    4.5 陷阱与伪优化 105

    4.5.1 Thread.stop、Thread.resume和Thread.suspend 105

    4.5.2 双检查锁 106

    4.6 相关命令行参数 107

    4.6.1 检查锁与延迟解锁 107

    4.6.2 输出调用栈信息 108

    4.6.3 锁分析 110

    4.6.4 设置线程栈的大小 111

    4.6.5 使用命令行参数控制锁的行为 111

    4.7 小结 111

    第5章 基准测试与性能调优 113

    5.1 为何要进行基准测试 113

    5.1.1 制定性能目标 114

    5.1.2 对性能进行回归测试 114

    5.1.3 确定优化方向 115

    5.1.4 商业应用 115

    5.2 如何构建基准测试 116

    5.2.1 置身事外 116

    5.2.2 多次测量 118

    5.2.3 微基准测试 118

    5.2.4 测试前热身 121

    5.3 确定测试目标 122

    5.3.1 吞吐量 122

    5.3.2 兼顾吞吐量、响应时间和延迟 122

    5.3.3 伸缩性 122

    5.3.4 电力消耗 124

    5.3.5 其他问题 124

    5.4 工业级基准测试 124

    5.4.1 SPEC基准测试套件 124

    5.4.2 SipStone基准测试 128

    5.4.3 DaCapo基准测试 128

    5.4.4 真实场景下的应用程序 128

    5.5 基准测试的潜在风险 128

    5.6 性能调优 129

    5.6.1 非规范化行为 129

    5.6.2 调优目标 130

    5.7 常见性能瓶颈与规避方法 138

    5.7.1 命令行参数-XXaggressive 138

    5.7.2 析构函数 139

    5.7.3 引用对象过多 139

    5.7.4 对象池 139

    5.7.5 算法与数据结构 140

    5.7.6 误用System.gc() 141

    5.7.7 线程数太多 141

    5.7.8 锁竞争导致性能瓶颈 142

    5.7.9 不必要的异常 142

    5.7.10 大对象 144

    5.7.11 本地内存与堆内存 144

    5.8 wait方法、notify方法与胖锁 145

    5.8.1 堆的大小设置不当 145

    5.8.2 存活对象过多 145

    5.8.3 Java并非万能 145

    5.9 小结 146

    第6章 JRockit Mission Control套件 147

    6.1 背景介绍 147

    6.1.1 采样分析与准确分析 148

    6.1.2 用途广泛 149

    6.2 概述 150

    6.2.1 JRockit Mission Control的服务器端组件 151

    6.2.2 JRockit Mission Control的客户端组件 151

    6.2.3 术语介绍 153

    6.2.4 独立运行JRockit Mission Control 153

    6.2.5 在Eclipse中运行JRockit Mission Control 154

    6.2.6 远程管理JRockit 155

    6.2.7 安全限制 159

    6.2.8 处理连接问题 160

    6.3 更新点 162

    6.4 调试JRockit Mission Control 162

    6.5 小结 164

    第7章 Management Console 165

    7.1 JMX Management Console 165

    7.2 Management Console 166

    7.2.1 一般信息标签组 166

    7.2.2 MBean标签组 171

    7.2.3 运行时标签组 174

    7.2.4 高级标签组 176

    7.2.5 其他标签组 177

    7.3 扩展JRockit Mission Control Console 178

    7.4 小结 181

    第8章 JRockit Runtime Analyzer 182

    8.1 反馈信息的必要性 182

    8.2 分析JRA记录 185

    8.2.1 一般信息标签组 185

    8.2.2 内存标签组 186

    8.2.3 代码标签组 188

    8.2.4 线程/锁标签组 190

    8.2.5 延迟标签组 192

    8.2.6 使用操作集 195

    8.3 故障排除 197

    8.4 小结 198

    第9章 JRockit Flight Recorder 199

    9.1 JRA进化 199

    9.1.1 关于事件 200

    9.1.2 记录引擎 200

    9.1.3 启动参数 202

    9.2 在JRockit Mission Control中使用JFR 203

    9.3 与JRA的区别 205

    9.3.1 范围选择器 205

    9.3.2 操作集 206

    9.3.3 关联键 206

    9.3.4 延迟分析 206

    9.3.5 异常分析 207

    9.3.6 内存分析 209

    9.4 自定义事件 210

    9.5 扩展JFR 213

    9.6 小结 215

    第 10章 Memory Leak Detector 216

    10.1 Java内存泄漏 216

    10.1.1 静态编程语言中的内存泄漏 216

    10.1.2 自动内存管理中的内存泄漏 217

    10.2 检测Java中的内存泄漏 217

    10.3 Memleak简介 218

    10.4 追踪内存泄漏 219

    10.5 交互式追踪内存泄漏 224

    10.6 通用堆分析器 226

    10.7 追踪内存分配 227

    10.8 问题排查 227

    10.9 小结 228

    第 11章 JRCMD 229

    11.1 简介 229

    11.2 覆盖SIGQUIT信号处理句柄 230

    11.3 JRCMD的限制 232

    11.4 JRCMD命令参考 232

    11.4.1 check_flightrecording(R28) 232

    11.4.2 checkjrarecording(R27) 233

    11.4.3 command_line 234

    11.4.4 dump_flightrecording(R28) 234

    11.4.5 heap_diagnostics(R28) 234

    11.4.6 hprofdump(R28) 237

    11.4.7 kill_management_server 238

    11.4.8 list_vmflags(R28) 238

    11.4.9 lockprofile_print 239

    11.4.10 lockprofile_reset 240

    11.4.11 memleakserver 240

    11.4.12 oom_diagnostics(R27) 240

    11.4.13 print_class_summary 240

    11.4.14 print_codegen_list 241

    11.4.15 print_memusage(R27) 242

    11.4.16 print_memusage(R28) 243

    11.4.17 print_object_summary 247

    11.4.18 print_properties 249

    11.4.19 print_threads 250

    11.4.20 print_utf8pool 251

    11.4.21 print_vm_state 251

    11.4.22 run_optfile(R27) 252

    11.4.23 run_optfile(R28) 252

    11.4.24 runfinalization 253

    11.4.25 runsystemgc 253

    11.4.26 set_vmflag(R28) 253

    11.4.27 start_flightrecording(R28) 253

    11.4.28 start_management_server 254

    11.4.29 startjrarecording(R27) 255

    11.4.30 stop_flightrecording(R28) 256

    11.4.31 timestamp 256

    11.4.32 verbosity 256

    11.4.33 version 257

    11.5 小结 258

    第 12章 JRockit Management API 259

    12.1 JMAPI 259

    12.2 JMXMAPI 263

    12.2.1 JRockit内部性能计数器 264

    12.2.2 使用JMXMAPI构建可远程操作的JRCMD 266

    12.3 小结 270

    第 13章 JRockit Virtual Edition 271

    13.1 虚拟化简介 272

    13.1.1 全虚拟化 272

    13.1.2 半虚拟化 273

    13.1.3 其他虚拟化术语 273

    13.1.4 虚拟机管理程序 273

    13.1.5 虚拟化的优势 275

    13.1.6 虚拟化的劣势 275

    13.2 Java虚拟化 276

    13.2.1 JRockit Virtual Edition 277

    13.2.2 虚拟机镜像与管理框架 279

    13.2.3 JRockit VE的优势 284

    13.2.4 JRockit VE的限制 287

    13.3 虚拟化能媲美真实环境吗 287

    13.3.1 高质量的热点代码采样 288

    13.3.2 自适应堆大小 288

    13.3.3 线程间的页保护 289

    13.4 小结 291

    附录A 参考文献 292

    附录B 术语表 296
查看详情
12
相关图书 / 更多
JRockit权威指南 深入理解JVM
JRuby实战
[瑞典]Ola Bini 著;丁雪丰 译
JRockit权威指南 深入理解JVM
JRA育成牧场管理指南:日常管理与驯致
JRA日高育成牧场 编;李蓉丽 译
JRockit权威指南 深入理解JVM
JR上野站公园口(这是一个超现实、极具毁灭性的故事,是一个无家可归的幽灵在东京繁忙的火车站出没的故事)
(日)柳美里
JRockit权威指南 深入理解JVM
JRuby语言实战技术
姜伟 著;[德]骆古道;王德志
JRockit权威指南 深入理解JVM
JRuby Cookbook
Justin、Henry Liu 著
您可能感兴趣 / 更多
JRockit权威指南 深入理解JVM
唐纳兄妹(“我热爱危险、深不可测、悬而未决以及无法控制的东西”,一本只用胜利的微笑与我们身上所有的庸俗主义做斗争的书。)
[瑞士]罗伯特·瓦尔泽
JRockit权威指南 深入理解JVM
比恐龙还老!神奇的海绵动物(中科院南京地质古生物研究所专家审定,超有趣的海绵动物知识)
[瑞士]尼农·阿曼
JRockit权威指南 深入理解JVM
雅各布·冯·贡滕(“我是多么幸运啊,在我身上看不到任何值得珍惜、值得看到的东西!”一本用碌碌无为和幻想对抗内卷的书。)
[瑞士]罗伯特·瓦尔泽
JRockit权威指南 深入理解JVM
动量策略:利用Python构建关键交易模型
[瑞士]安德烈亚斯·F. 克列诺(Andreas F. Clenow) 著;颉腾文化 出品
JRockit权威指南 深入理解JVM
战争之波:现代世界中的民族主义、国家形成与族群排斥
[瑞士]安德烈亚斯·威默 著;杨端程 译
JRockit权威指南 深入理解JVM
作家榜名著:海蒂和爷爷(如果你正在人生低谷,海蒂能瞬间将你治愈!像海蒂一样用纯真善良治愈一切,永远保持对生活的乐观和热爱!)
[瑞士]约翰娜·斯比丽、作家榜经典名 著;高璨 译
JRockit权威指南 深入理解JVM
因果推断与效应评估的计量经济学 经济学精选教材译丛
[瑞士]斯蒂芬·斯珀利奇 著;王可倩 译;[德]马库斯·弗洛里奇;李井奎
JRockit权威指南 深入理解JVM
山是什么样的 5-10岁 导引孩子求知万物的哲学之书,启发孩子遇到问题和困惑时,脚踏实地亲身观察实践
[瑞士]瑞贝卡·古格尔 著;[瑞士]西蒙·罗特利斯伯格 绘
JRockit权威指南 深入理解JVM
心理治疗(荣格心理学系列)
[瑞士]荣格
JRockit权威指南 深入理解JVM
职业康复与残疾评估手册--ICF的应用与实施(精)
[瑞士]耶罗尔德·斯图基 编;[美]鲁本·埃斯科皮佐、[挪]瑟伦·布拉格、[美]德布拉·霍马、李雪萍、许光旭 译
JRockit权威指南 深入理解JVM
早上好,动物们!
[瑞士]安娜·克罗萨文 著
JRockit权威指南 深入理解JVM
坚不可摧的公司:以卓越商业模式重塑组织
[瑞士]亚历山大·奥斯特瓦德 (比利时)伊夫·皮尼厄 (澳大利亚)弗雷德·埃蒂安布勒 (加拿大)阿兰·史密斯