## 0. 阅读完本文你将会学会- 写出更优雅高效的Java代码## 1. 前言周六逛B乎的时候正好刷到这样一个问题 **"Java开发手册(黄山版)怎么样?"**,我仔细一看这不是孤尽老师的著作吗?居然已经更新到了黄山版。上次... 如果不允许外部直接通过 new 来创建对象,那么构造方法必须是 private。- 工具类不允许有 public 或 default 构造方法。- 类非 static 成员变量并且与子类共享,必须是 protected。 - 类非 static 成员变量并且...
java -jar arthas-boot.jar```## 三、watch命令 ### 1. [基本用法](https://arthas.aliyun.com/doc/watch.html) - 观察指定函数的调用情况,如 入参、返回值、抛出异常,通过编写 OGNL 表达式查看- 命令格式:`watch 类全名或类名表达式 函数名表达式 {观察表达式} -x 输出深度 -n 次数`- 观察表达式:默认 {params, target, returnObj},分别是 参数列表、被观察对象、返回值- `-x 输出深度`:默认为 1,最大为 4。默认的 观...
## 一、前言- 开发Java项目过程中,难免会碰到一些 性能 问题,这时候就需要一些工具,帮忙排查- 本文主要介绍 JDK自带的上古神器 jstat、jmap,用于分析内存问题,另简单介绍 MAT、gceasy、HeapDump 等- 以 openjdk 11.0.13、G1 垃圾收集器、Linux系统 为例## 二、GC分析:jstat### 1. [jstat 简介](https://docs.oracle.com/en/java/javase/11/tools/jstat.html)- jstat 全称 “Java Virtual Machine statistics monitoring t...
## 关于 Spring Cloud 技术体系我们通过时间线展开整个项目背景:- 在我刚开始工作的时候(2010 年以前),可能还没有云原生社区,当时 Java 体系是企业级开发的首选。- 2010 年, Netflix 推出了 Move to Clo... 只有微服务架构才能保持企业的活力和软件开发的迭代速度。)- 2015 年,Spring 社区围绕之前 Netflix 沉淀的一些组件以及 Martin 提出的微服务理念,推出了Spring Cloud v1.0.0,直到现在 Spring Cloud 还被广泛使...
桶(Bucket)是 TOS 的全局唯一的命名空间,相当于数据的容器,用来储存对象(Object)数据。TOS 支持针对桶设置生命周期(Lifecycle)规则,自动删除过期的对象(Object)和未合并的分片数据,或将到期的对象转化为低频或归档存储类型,从而节约用户存储费用。本文介绍如何通过 TOS Java SDK 管理桶的生命周期规则。 设置生命周期规则您可以通过 TOS Java SDK 的 putBucketLifecycle 接口设置指定桶的生命周期规则。 注意 要为桶配置生命周期...
## 0. 阅读完本文你将会学会- 写出更优雅高效的Java代码## 1. 前言周六逛B乎的时候正好刷到这样一个问题 **"Java开发手册(黄山版)怎么样?"**,我仔细一看这不是孤尽老师的著作吗?居然已经更新到了黄山版。上次... 如果不允许外部直接通过 new 来创建对象,那么构造方法必须是 private。- 工具类不允许有 public 或 default 构造方法。- 类非 static 成员变量并且与子类共享,必须是 protected。 - 类非 static 成员变量并且...
本文介绍如何快速使用 TOS Java SDK 完成常见操作,包括客户端通用示例、创建桶、上传对象、下载对象、列举对象和删除对象。 前提条件安装SDK 初始化客户端 客户端通用示例以下代码以上传对象为例,展示使用 TOS Ja... // 上传文件需要指定存储桶名称 String bucketName = "bucket-example"; // 上传文件需要指定唯一的对象名,TOS 以对象名作为唯一标识符, // 如果同个 objectKey 进行多次上传,则后面...
桶(Bucket)是 TOS 的全局唯一的命名空间,相当于数据的容器,用来储存对象(Object)数据。本文介绍如何通过 TOS Java SDK 的 headBucket 接口获取桶的元数据,包括桶所属地域(Region)和桶的存储类型(StorageClass),以及判断桶是否存在。 注意事项获取桶元数据之前,您必须具有 tos:HeadBucket 权限。具体操作,请参见权限配置概述。 若桶不存在则该接口会返回 404,也常用于判断桶是否存在。 示例代码以下代码展示如何获取桶元数据及判...
普通上传是指通过 TOS Java SDK 的 putObject 接口上传单个对象(Object)。SDK 统一使用 InputStream 类作为上传的数据流参数。您可根据业务需要使用不同形式的数据流传入,如上传字符串或字节数组可以使用 ByteArra... 注意事项上传对象前,您必须具有 tos:PutObject 权限,具体操作,请参见权限配置指南。 上传对象时,对象名必须满足一定规范,详细信息,请参见对象命名规范。 TOS 是面向海量存储设计的分布式对象存储产品,内部分区存储...
桶(Bucket)是 TOS 的全局唯一的命名空间,相当于数据的容器,用来储存对象(Object)数据。本文介绍如何通过 TOS Java SDK 的 createBucket 接口创建一个新的桶。 注意事项存储桶命名规范如下:只能包括小写字母 a~z、数字和短横线(-)。 开头和结尾只能是数字或字母。 长度必须在 3~63 个字符之间。 通过与 TOS 同地域的其他火山引擎产品访问 TOS 时,推荐您使用内网 Endpoint。关于地域和 Endpoint 的更多信息,请参见地域和访问域名。...
桶(Bucket)是 TOS 的全局唯一的命名空间,相当于数据的容器,用来储存对象(Object)数据。当请求桶中的对象数据不存在时,TOS 默认返回 404 错误。但如果您设置了桶的回源规则,填写了对象数据的正确地址,TOS 将会通过回... Java SDK 的 putBucketMirrorBack 接口设置指定桶的回源规则。 注意 要为桶设置镜像回源规则,默认您必须为桶所有者。 一个存储桶仅支持创建一条回源规则。 镜像回源最大能够支持 5GiB 的对象。如果需要请求超过 5G...
桶(Bucket)是 TOS 的全局唯一的命名空间,相当于数据的容器,用来储存对象(Object)数据。本文介绍如何通过 TOS Java SDK 的 listBuckets 接口列举您账号下所有地域的桶(Bucket)列表。 注意事项列举桶之前,您必须具有 tos:ListBuckets 权限。具体操作,请参见 IAM 策略概述。 此接口会返回当前账号所有地域的桶。 示例代码以下代码展示如何列举当前账号所有地域的桶。 java import com.volcengine.tos.TOSV2;import com.volcengine....
TOS 只有对象的概念,内部使用扁平结构存储数据。为方便您对对象进行分组并简化管理,您可以使用目录层次来组织对象。 创建目录TOS 只有对象的概念,可通过创建一个大小为 0 并且对象名以 / 结尾的对象,模拟目录的功能。以下代码展示如何在桶 bucket-example 中创建目录 example_dir/ 和子目录 example_dir/aaa/。 java import com.volcengine.tos.TOSV2;import com.volcengine.tos.TOSV2ClientBuilder;import com.volcengine.tos.T...