- 博客(2)
- 资源 (7)
- 收藏
- 关注
原创 记CXF中的一次Non-Heap内存泄露
最近遇到一个WebService内存泄露的问题。使用jconsole连接后发现非堆内存和loaded classes在每次执行full GC后都会增长。
2016-11-04 15:08:07
1688
SpringBoot实战(完整带书签电子版可复制含代码)
内容简介 · · · · · ·
本书以Spring应用程序开发为中心,全面讲解如何运用Spring Boot提高效率,使应用程序的开发和管理更加轻松有趣。作者行文亲切流畅,以大量示例讲解了Spring Boot在各类情境中的应用,内容涵盖起步依赖、Spring Boot CLI、Groovy、Grails、Actuator。对于Spring Boot开发应用中较为繁琐的内容,附录奉上整理完毕的表格,一目了然,方便读者查阅。
目录 · · · · · ·
第1章 入门 1
1.1 Spring风云再起 1
1.1.1 重新认识Spring 2
1.1.2 Spring Boot精要 3
1.1.3 Spring Boot不是什么 6
1.2 Spring Boot入门 6
1.2.1 安装Spring Boot CLI 7
1.2.2 使用Spring Initializr初始化Spring Boot项目 10
1.3 小结 18
第2章 开发第一个应用程序 19
2.1 运用Spring Boot 19
2.1.1 查看初始化的Spring Boot新项目 21
2.1.2 Spring Boot项目构建过程解析 24
2.2 使用起步依赖 27
2.2.1 指定基于功能的依赖 28
2.2.2 覆盖起步依赖引入的传递依赖 29
2.3 使用自动配置 30
2.3.1 专注于应用程序功能 31
2.3.2 运行应用程序 36
2.3.3 刚刚发生了什么 38
2.4 小结 41
第3章 自定义配置 42
3.1 覆盖Spring Boot自动配置 42
3.1.1 保护应用程序 43
3.1.2 创建自定义的安全配置 44
3.1.3 掀开自动配置的神秘面纱 48
3.2 通过属性文件外置配置 49
3.2.1 自动配置微调 50
3.2.2 应用程序Bean的配置外置 55
3.2.3 使用Profile进行配置 59
3.3 定制应用程序错误页面 62
3.4 小结 64
第4章 测试 66
4.1 集成测试自动配置 66
4.2 测试Web应用程序 68
4.2.1 模拟Spring MVC 69
4.2.2 测试Web安全 72
4.3 测试运行中的应用程序 74
4.3.1 用随机端口启动服务器 75
4.3.2 使用Selenium测试HTML页面 76
4.4 小结 78
第5章 Groovy与Spring Boot CLI 80
5.1 开发Spring Boot CLI应用程序 80
5.1.1 设置CLI项目 81
5.1.2 通过Groovy消除代码噪声 81
5.1.3 发生了什么 85
5.2 获取依赖 86
5.2.1 覆盖默认依赖版本 87
5.2.2 添加依赖仓库 88
5.3 用CLI运行测试 89
5.4 创建可部署的产物 91
5.5 小结 91
第6章 在Spring Boot中使用Grails 93
6.1 使用GORM进行数据持久化 93
6.2 使用Groovy Server Pages定义视图 98
6.3 结合Spring Boot与Grails 3 100
6.3.1 创建新的Grails项目 100
6.3.2 定义领域模型 103
6.3.3 开发Grails控制器 104
6.3.4 创建视图 105
6.4 小结 107
第7章 深入Actuator 108
7.1 揭秘Actuator的端点 108
7.1.1 查看配置明细 109
7.1.2 运行时度量 115
7.1.3 关闭应用程序 121
7.1.4 获取应用信息 121
7.2 连接Actuator的远程shell 122
7.2.1 查看autoconfig报告 123
7.2.2 列出应用程序的Bean 124
7.2.3 查看应用程序的度量信息 124
7.2.4 调用Actuator端点 125
7.3 通过JMX监控应用程序 126
7.4 定制Actuator 128
7.4.1 修改端点ID 128
7.4.2 启用和禁用端点 129
7.4.3 添加自定义度量信息 129
7.4.4 创建自定义跟踪仓库 132
7.4.5 插入自定义健康指示器 134
7.5 保护Actuator端点 136
7.6 小结 138
第8章 部署Spring Boot应用程序 139
8.1 衡量多种部署方式 139
8.2 部署到应用服务器 140
8.2.1 构建WAR文件 141
8.2.2 创建生产Profile 142
8.2.3 开启数据库迁移 145
8.3 推上云端 150
8.3.1 部署到Cloud Foundry 150
8.3.2 部署到Heroku 153
8.4 小结 155
附录A Spring Boot开发者工具 157
附录B Spring Boot起步依赖 163
附录C 配置属性 169
附录D Spring Boot依赖 202
2019-06-28
SpringCloud微服务实战(完整带书签ORC可复制含代码)
《Spring Cloud微服务实战》从时下流行的微服务架构概念出发,详细介绍了Spring Cloud针对微服务架构中几大核心要素的解决方案和基础组件。对于各个组件的介绍,《Spring Cloud微服务实战》主要以示例与源码结合的方式来帮助读者更好地理解这些组件的使用方法以及运行原理。同时,在介绍的过程中,还包含了作者在实践中所遇到的一些问题和解决思路,可供读者在实践中作为参考。
目录 · · · · · ·
第1章 基础知识 1
什么是微服务架构 1
-- 与单体系统的区别 1
-- 如何实施微服务 2
为什么选择Spring Cloud 6
Spring Cloud简介 7
版本说明 8
第2章 微服务构建:Spring Boot 11
框架简介 12
快速入门 13
-- 项目构建与解析 13
-- 实现RESTful API 17
配置详解 20
-- 配置文件 20
-- 自定义参数 22
-- 参数引用 22
-- 使用随机数 23
-- 命令行参数 23
-- 多环境配置 24
-- 加载顺序 25
监控与管理 26
-- 初识actuator 27
-- 原生端点 28
小结 38
第3章 服务治理:Spring Cloud Eureka 39
服务治理 39
-- Netflix Eureka 40
--搭建服务注册中心 41
--注册服务提供者 43
--高可用注册中心 46
--服务发现与消费 48
Eureka详解 51
--基础架构 52
--服务治理机制 52
--源码分析 56
配置详解 65
--服务注册类配置 65
--服务实例类配置 67
跨平台支持 71
第4章 客户端负载均衡:Spring Cloud Ribbon 73
客户端负载均衡 73
RestTemplate详解 75
-- GET请求 75
-- POST请求 77
-- PUT请求 79
-- DELETE请求 79
源码分析 80
-- 负载均衡器 91
-- 负载均衡策略 109
配置详解 123
--自动化配置 124
-- Camden版本对RibbonClient配置的优化 125
-- 参数配置 127
-- 与Eureka结合 127
重试机制 128
第5章 服务容错保护:Spring Cloud Hystrix 130
快速入门 131
原理分析 135
-- 工作流程 135
-- 断路器原理 144
-- 依赖隔离 148
使用详解 151
-- 创建请求命令 151
-- 定义服务降级 154
-- 异常处理 157
-- 命令名称、分组以及线程池划分 158
-- 请求缓存 159
-- 请求合并 166
属性详解 172
-- Command属性 174
-- collapser属性 184
-- threadPool属性 185
Hystrix仪表盘 187
Turbine集群监控 192
-- 构建监控聚合服务 192
-- 与消息代理结合 196
第6章 声明式服务调用:Spring Cloud Feign 199
快速入门 200
参数绑定 202
继承特性 205
Ribbon配置 209
全局配置 209
指定服务配置 209
重试机制 210
Hystrix配置 211
全局配置 211
禁用Hystrix 211
指定命令配置 212
服务降级配置 212
其他配置 214
第7章 API网关服务:Spring Cloud Zuul 217
快速入门 219
-- 构建网关 220
-- 请求路由 221
-- 请求过滤 223
路由详解 226
-- 传统路由配置 226
-- 服务路由配置 228
-- 服务路由的默认规则 229
-- 自定义路由映射规则 229
-- 路径匹配 230
-- 路由前缀 233
-- 本地跳转 234
-- Cookie与头信息 235
-- Hystrix和Ribbon支持 236
过滤器详解 238
-- 过滤器 238
-- 请求生命周期 239
-- 核心过滤器 240
-- 异常处理 244
-- 禁用过滤器 256
动态加载 257
-- 动态路由 257
-- 动态过滤器 261
第8章 分布式配置中心:Spring Cloud Config 267
快速入门 267
-- 构建配置中心 268
-- 配置规则详解 269
-- 客户端配置映射 272
服务端详解 274
-- 基础架构 274
-- Git配置仓库 276
-- SVN配置仓库 279
-- 本地仓库 279
-- 本地文件系统 279
-- 健康监测 280
-- 属性覆盖 281
-- 安全保护 281
-- 加密解密 282
-- 高可用配置 286
客户端详解 286
-- URI指定配置中心 287
-- 服务化配置中心 287
-- 失败快速响应与重试 290
-- 获取远程配置 292
-- 动态刷新配置 293
第9章 消息总线:Spring Cloud Bus 295
消息代理 295
RabbitMQ实现消息总线 296
-- 基本概念 297
-- 安装与使用 298
-- 快速入门 302
-- 整合Spring Cloud Bus 306
-- 原理分析 307
-- 指定刷新范围 308
-- 架构优化 309
-- RabbitMQ配置 310
Kafka实现消息总线 312
-- Kafka简介 312
-- 快速入门 313
--整合Spring Cloud Bus 315
-- Kafka配置 318
深入理解 318
-- 源码分析 320
-- 其他消息代理的支持 342
第10章 消息驱动的微服务:Spring Cloud Stream 344
快速入门 344
核心概念 349
-- 绑定器 350
-- 发布-订阅模式 351
-- 消费组 353
-- 消息分区 354
使用详解 355
-- 开启绑定功能 355
-- 绑定消息通道 356
-- 消息生产与消费 360
-- 响应式编程 366
-- 消费组与消息分区 368
-- 消息类型 370
绑定器详解 373
-- 绑定器SPI 373
-- 自动化配置 374
-- 多绑定器配置 374
-- RabbitMQ与Kafka绑定器 376
配置详解 376
-- 基础配置 377
-- 绑定通道配置 377
-- 绑定器配置 379
第11章 分布式服务跟踪:Spring Cloud Sleuth 386
快速入门 386
-- 准备工作 386
-- 实现跟踪 389
跟踪原理 390
抽样收集 392
与Logstash整合 394
与Zipkin整合 397
-- HTTP收集 398
-- 消息中间件收集 402
-- 收集原理 404
-- 数据存储 414
-- API接口 417
附录A Starter POMs 419
后记 421
2019-06-28
第一本docker书(完整带书签ORC可复制含代码)
全球第一本Docker技术图书中文版,Docker中文社区鼎力支持!
Docker核心团队成员权威著作,在技术圈中很有影响力。
既是第一本Docker书,也非常适合作为学习Docker的第一本入门书。
第1 章 简介····································1
1.1 Docker 简介·····························2
1.1.1 提供一个简单、轻量的建模方式·························2
1.1.2 职责的逻辑分离················3
1.1.3 快速、高效的开发生命周期··3
1.1.4 鼓励使用面向服务的架构·····3
1.2 Docker 组件·····························3
1.2.1 Docker 客户端和服务器·······4
1.2.2 Docker 镜像······················4
1.2.3 Registry ···························5
1.2.4 容器·······························5
1.3 我们能用Docker 做什么·············6
1.4 Docker 与配置管理····················7
1.5 Docker 的技术组件····················8
1.6 本书的内容·····························9
1.7 Docker 资源··························· 10
第2 章 安装Docker ······················· 11
2.1 安装Docker 的先决条件··········· 12
2.2 在Ubuntu 中安装Docker ·········· 13
2.2.1 检查前提条件················· 14
2.2.2 安装Docker ···················· 16
2.2.3 Docker 与UFW ··············· 17
2.3 在Red Hat 和Red Hat 系发行版中安装Docker ···························17
2.3.1 检查前提条件················· 18
2.3.2 安装Docker···················· 19
2.3.3 在Red Hat 系发行版中启动Docker 守护进程·············· 20
2.4 在OS X 中安装Boot2Docker ····· 21
2.4.1 在OS X 中安装Boot2Docker ··················· 21
2.4.2 在OS X 中启动Boot2Docker ··················· 22
2.4.3 测试Boot2Docker ············ 23
2.5 在Windows 中安装Boot2Docker 23
2.5.1 在Windows 中安装Boot2Docker ··················· 23
2.5.2 在Windows 中启动Boot2Docker ··················· 24
2.5.3 测试Boot2Docker ············ 25
2.6 使用本书的Boot2Docker 示例···· 25
2.7 Docker 安装脚本····················· 26
2.8 二进制安装··························· 27
2.9 Docker 守护进程····················· 28
2.9.1 配置Docker 守护进程······· 28
2.9.2 检查Docker 守护进程是否正在运行······················· 30
2.10 升级Docker ························· 31
2.11 Docker 图形用户界面············· 31
2.12 小结··································· 32
第3 章 Docker 入门······················ 33
3.1 确保Docker 已经就绪·············· 33
3.2 运行我们的第一个容器············ 34
3.3 使用第一个容器····················· 36
3.4 容器命名······························ 38
3.5 重新启动已经停止的容器·········· 39
3.6 附着到容器上························ 39
3.7 创建守护式容器····················· 40
3.8 容器内部都在干些什么············ 41
3.9 查看容器内的进程·················· 42
3.10 在容器内部运行进程·············· 43
3.11 停止守护式容器···················· 44
3.12 自动重启容器······················· 44
3.13 深入容器····························· 45
3.14 删除容器····························· 46
3.15 小结··································· 47
第4 章 使用Docker 镜像和仓库······· 49
4.1 什么是Docker 镜像················· 49
4.2 列出镜像······························ 51
4.3 拉取镜像······························ 54
4.4 查找镜像······························ 56
4.5 构建镜像······························ 57
4.5.1 创建Docker Hub 账号······· 58
4.5.2 用Docker 的commit 命令创建镜像······················· 59
4.5.3 用Dockerfile构建镜像······················· 61
4.5.4 基于Dockerfile构建新镜像····················· 64
4.5.5 指令失败时会怎样············ 66
4.5.6 Dockerfile 和构建缓存·· 67
4.5.7 基于构建缓存的Dockerfile模板····························· 67
4.5.8 查看新镜像···················· 68
4.5.9 从新镜像启动容器··········· 69
4.5.10 Dockerfile 指令········· 72
4.6 将镜像推送到Docker Hub········· 83
4.7 删除镜像······························ 88
4.8 运行自己的Docker Registry······· 90
4.8.1 从容器运行Registry ········· 90
4.8.2 测试新Registry ··············· 91
4.9 其他可选Registry 服务············· 92
4.10 小结··································· 92
第5 章 在测试中使用Docker··········· 93
5.1 使用Docker 测试静态网站········ 93
5.1.1 Sample 网站的初始Dockerfile ················· 94
5.1.2 构建Sample 网站和Nginx镜像····························· 96
5.1.3 从Sample 网站和Nginx 镜像构建容器······················· 97
5.1.4 修改网站······················ 100
5.2 使用Docker 构建并测试Web应用程序·············································· 101
5.2.1 构建Sinatra 应用程序······ 101
5.2.2 创建Sinatra 容器············ 102
5.2.3 构建Redis 镜像和容器····· 104
5.2.4 连接到Redis 容器··········· 106
5.2.5 连接Redis····················· 108
5.2.6 让Docker 容器互连········· 110
5.2.7 使用容器连接来通信······· 114
5.3 Docker 用于持续集成·············· 116
5.3.1 构建Jenkins 和Docker服务器························· 117
5.3.2 创建新的Jenkins 作业······121
5.3.3 运行Jenkins 作业············124
5.3.4 与Jenkins 作业有关的下一步·························126
5.3.5 Jenkins 设置小结·············126
5.4 多配置的Jenkins····················126
5.4.1 创建多配置作业·············126
5.4.2 测试多配置作业·············130
5.4.3 Jenkins 多配置作业小结····132
5.5 其他选择·····························132
5.5.1 Drone ···························132
5.5.2 Shippable ······················132
5.6 小结···································132
第6 章 使用Docker 构建服务·········133
6.1 构建第一个应用····················133
6.1.1 Jekyll 基础镜像···············134
6.1.2 构建Jekyll 基础镜像········135
6.1.3 Apache 镜像···················135
6.1.4 构建Jekylll Apache 镜像···136
6.1.5 启动Jekylll 网站·············137
6.1.6 更新Jekyll 网站··············140
6.1.7 备份Jekyll 卷·················141
6.1.8 扩展Jekyll 示例网站········142
6.2 使用Docker 构建一个Java应用服务·····························143
6.2.1 WAR 文件的获取器·········143
6.2.2 获取WAR 文件··············144
6.2.3 Tomecat7 应用服务器·······145
6.2.4 运行WAR 文件··············146
6.2.5 基于Tomcat 应用服务器的构建服务······················147
6.3 多容器的应用栈····················150
6.3.1 Node.js 镜像··················150
6.3.2 Redis 基础镜像··············· 153
6.3.3 Redis 主镜像·················· 154
6.3.4 Redis 从镜像·················· 155
6.3.5 创建Redis 后端集群········ 156
6.3.6 创建Node 容器·············· 160
6.3.7 捕获应用日志················ 161
6.3.8 Node 程序栈的小结········· 164
6.4 不使用SSH 管理Docker 容器··· 164
6.5 小结··································· 166
第7 章 使用Fig 编配Docker·········· 167
7.1 Fig ····································· 168
7.1.1 安装Fig ······················· 168
7.1.2 获取示例应用················ 169
7.1.3 fig.yml 文件··············· 172
7.1.4 运行Fig ······················· 173
7.1.5 使用Fig ······················· 175
7.1.6 Fig 小结······················· 178
7.2 Consul、服务发现和Docker ····· 178
7.2.1 构建Consul 镜像············ 179
7.2.2 在本地测试Consul 容器··· 182
7.2.3 使用Docker 运行Consul集群···························· 184
7.2.4 启动具有自启动功能的Consul 节点··················· 186
7.2.5 启动其余节点················ 188
7.2.6 配合Consul,在Docker里运行一个分布式服务···· 193
7.3 其他编配工具和组件·············· 201
7.3.1 Fleet 和etcd··················· 202
7.3.2 Kubernetes····················· 202
7.3.3 Apache Mesos················· 202
7.3.4 Helios ·························· 202
7.3.5 Centurion ······················ 203
7.3.6 Libswarm ······················203
7.4 小结···································203
第8 章 使用Docker API ················205
8.1 Docker API ···························205
8.2 初识Remote API····················206
8.3 测试Docker Remote API ··········207
8.3.1 通过API 来管理Docker镜像····························208
8.3.2 通过API 管理Docker容器····························211
8.4 改进TProv 应用····················213
8.5 对Docker Remote API 进行认证··217
8.5.1 建立证书授权中心···········218
8.5.2 创建服务器的证书签名请求和密钥·························220
8.5.3 配置Docker 守护进程······222
8.5.4 创建客户端证书和秘钥·····223
8.5.5 配置Docker 客户端开启认证功能······················224
8.6 小结···································226
第9 章 获得帮助和对Docker进行改进··························· 227
9.1 获得帮助····························· 227
9.1.1 Docker 用户和开发邮件列表······················ 228
9.1.2 IRC 上的Docker ············· 228
9.1.3 GitHub 上的Docker ········· 228
9.2 报告Docker 的问题················ 229
9.3 搭建构建环境······················· 229
9.3.1 安装Docker··················· 229
9.3.2 安装源代码和构建工具···· 229
9.3.3 检出源代码··················· 230
9.3.4 贡献文档······················ 230
9.3.5 构建开发环境················ 231
9.3.6 运行测试······················ 232
9.3.7 在开发环境中使用Docker··· 233
9.3.8 发起pull request ············· 234
9.3.9 批准合并和维护者·········· 236
9.4 小结··································· 236
2019-06-28
How Tomcat works 完整版
"How Tomcat Works" (464 pages, $49.99, ISBN 0-9752128-0-X, by Budi Kurniawan and Paul Deck) covers Tomcat 4 and 5 and is a tutorial on the internal workings of the world most popular Web container. You are welcome to download the sample chapters. You can also purchase the book from the publisher.
2009-11-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人