爆款云主机低至25.83元/年
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 云聚517 · 好价翼起拼 NEW 爆款云主机低至25.83元/年,参与拼团享更多优惠,拼成得额外优惠券
  • 安全隔离版OpenClaw NEW OpenClaw云服务器专属“龙虾“套餐低至1.5折起
  • 聚力AI赋能 天翼云大模型专项 大模型特惠专区·Token Plan 轻享包低至9.9元起
  • 青云志云端助力计划 NEW 一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云
  • 企业出海解决方案 NEW 助力您的业务扬帆出海,通达全球!
  • 天翼云信创专区 NEW “一云多芯、一云多态”,国产化软件全面适配,国产操作系统及硬件芯片支持丰富
  • 中小企业服务商合作专区 国家云助力中小企业腾飞,高额上云补贴重磅上线
  • 云上钜惠 爆款云主机全场特惠,2核4G只要1.8折起!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

息壤智算

领先开放的智算服务平台,提供算力、平台、数据、模型、应用“五位一体”智算服务体系,构建全流程的AI基础设施能力
AI Store
  • 算力市场
  • 模型市场
  • 应用市场
公共算力服务
  • 裸金属
  • 定制裸金属
训推服务
  • 模型开发
  • 训练任务
  • 服务部署
星辰TokenHub
  • 模型广场
  • 体验中心
  • 服务接入
应用托管
  • 应用实例
科研助手
  • 科研智能体
  • 科研服务
  • 开发机
  • 并行计算
大模型
  • DeepSeek-V4-Flash
  • GLM-5.1
  • Qwen3.5-122B-A10B
  • DeepSeek-V3.2(旗舰版)
  • GLM-5(正式版)
智算一体机
  • 智算一体机
智能体引擎
  • 智能体引擎
可信数据空间
  • 可信数据空间
模型适配专家服务
  • 模型适配专家服务
算力服务商
  • 入驻算力服务商

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场进入AI Store创新解决方案公有云生态专区智云上海应用生态专区
建站工具
  • 新域名服务
  • SSL证书
  • 翼建站
企业办公
  • 安全邮箱
  • WPS 365 天翼云版
  • 天翼企业云盘(标准服务版)
灾备迁移
  • 云管家2.0
  • 翼备份(SaaS版)

定价

协助您快速了解云产品计费模式、价格详情,轻松预估上云成本
价格计算器
  • 动态测算产品价格
定价策略
  • 快速了解计费模式

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼信创云专区
  • 信创云专区
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
培训与认证
  • 天翼云学堂
  • 天翼云认证
开源社区
  • 魔乐社区
  • OpenTeleDB

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 服务保障
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家
我要反馈
  • 建议与反馈
  • 用户体验官
信息公告
  • 客户公告

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2026智能云生态大会
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 息壤智算
  • 产品
  • 解决方案
  • 应用商城
  • 定价
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      企业主机安全_相关内容
      • Java调用示例
        1. com.ffcs.ebp.ebpsdk.common.Response plaintext package com.ffcs.ebp.ebpsdk.common; import java.util.Map; public class Response { private int statusCode; private String body; private Map headers; public int getStatusCode() { return statusCode; } public void setStatusCode(int statusCode) { this.statusCode statusCode; } public String getBody() { return body; } public void setBody(String body) { this.body body; } public Map getHeaders() { return headers; } public void setHeaders(Map headers) { this.headers headers; } } 2. com.ffcs.ebp.ebpsdk.YunSign plaintext package com.ffcs.ebp.ebpsdk; import com.ffcs.ebp.ebpsdk.common.Response; import org.apache.commons.lang.StringUtils; import org.apache.http.Header; import org.apache.http.HttpEntity; import org.apache.http.client.config.AuthSchemes; import org.apache.http.client.config.CookieSpecs; import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.; import org.apache.http.config.Registry; import org.apache.http.config.RegistryBuilder; import org.apache.http.conn.socket.ConnectionSocketFactory; import org.apache.http.conn.socket.PlainConnectionSocketFactory; import org.apache.http.conn.ssl.NoopHostnameVerifier; import org.apache.http.conn.ssl.SSLConnectionSocketFactory; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.apache.http.util.EntityUtils; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; import java.io.; import java.net.URLEncoder; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.security.KeyManagementException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.cert.X509Certificate; import java.text.SimpleDateFormat; import java.util.; public class YunSign { private String url; private String body; private String ak; private String sk; private String uuId; private int temp; private String contentType; private String queryStr; private Map headerMap; private String afterQuery; public YunSign(String url, String ak, String sk, String uuId, String body, int temp, String contentType, String queryStr, Map headerMap) { this.url url; if(body.equals("{}")){ body ""; } this.body body; this.ak ak; this.sk sk; this.uuId uuId; this.temp temp; this.contentType contentType; this.queryStr queryStr; this.headerMap headerMap; } public Response toDo(String method, int connectTimeout, int connectionRequestTimeout, int socketTimeout) { Response response null; method method.toUpperCase(); switch (method) { case "POST": response doPost(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "GET": if (StringUtils.isNotEmpty(this.body)) { response sendJsonByGetReq(connectTimeout, connectionRequestTimeout, socketTimeout); } else { response doGet(connectTimeout, connectionRequestTimeout, socketTimeout); } break; case "DELETE": if (StringUtils.isNotEmpty(this.body)) { response sendJsonByDeleteReq(connectTimeout, connectionRequestTimeout, socketTimeout); } else { response doDelete(connectTimeout, connectionRequestTimeout, socketTimeout); } break; case "PUT": response doPut(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "PATCH": response doPatch(connectTimeout, connectionRequestTimeout, socketTimeout); break; case "HEAD": response doHead(connectTimeout, connectionRequestTimeout, socketTimeout); break; } return response; } private String getSign(Date eopDate) { String calculateContentHash getSHA256(body); //报文原封不动进行sha256摘要 // System.out.println("calculateContentHash:" + calculateContentHash); SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); SimpleDateFormat DATEFORMATTER new SimpleDateFormat("yyyyMMdd"); String singerDate TIMEFORMATTER.format(eopDate); String singerDd DATEFORMATTER.format(eopDate); //header的key按照26字母进行排序, 以&作为连接符连起来 try { String CampmocalHeader String.format("ctyuneoprequestid:%sneopdate:%sn", this.uuId, singerDate); String sigture CampmocalHeader + "n" + this.afterQuery + "n" + calculateContentHash; // System.out.println("sigture:" + sigture); byte[] ktime HmacSHA256(singerDate.getBytes(), sk.getBytes()); // System.out.println("ktime:" + HexUtils.bytes2Hex(ktime)); byte[] kAk HmacSHA256(ak.getBytes(), ktime); // System.out.println("kAk:" + HexUtils.bytes2Hex(kAk)); byte[] kdate HmacSHA256(singerDd.getBytes(), kAk); // System.out.println("kdate:" + HexUtils.bytes2Hex(kdate)); String Signature Base64.getEncoder().encodeToString(HmacSHA256(sigture.getBytes("UTF8"), kdate)); // System.out.println("Signature:" + Signature); String signHeader String.format("%s Headersctyuneoprequestid;eopdate Signature%s", ak, Signature); // System.out.println("signHeader:" + signHeader); return signHeader; } catch (Exception e) { e.printStackTrace(); } return null; } / 在调用SSL之前需要重写验证方法,取消检测SSL 创建ConnectionManager,添加Connection配置信息 @return HttpClient 支持https / private static CloseableHttpClient sslClient() { try { // 在调用SSL之前需要重写验证方法,取消检测SSL X509TrustManager trustManager new X509TrustManager() { @Override public X509Certificate[] getAcceptedIssuers() { return null; } @Override public void checkClientTrusted(X509Certificate[] xcs, String str) { } @Override public void checkServerTrusted(X509Certificate[] xcs, String str) { } }; SSLContext ctx SSLContext.getInstance(SSLConnectionSocketFactory.TLS); ctx.init(null, new TrustManager[]{trustManager}, null); SSLConnectionSocketFactory socketFactory new SSLConnectionSocketFactory(ctx, NoopHostnameVerifier.INSTANCE); // 创建Registry RequestConfig requestConfig RequestConfig.custom().setCookieSpec(CookieSpecs.STANDARDSTRICT) .setExpectContinueEnabled(Boolean.TRUE).setTargetPreferredAuthSchemes(Arrays.asList(AuthSchemes.NTLM, AuthSchemes.DIGEST)) .setProxyPreferredAuthSchemes(Arrays.asList(AuthSchemes.BASIC)).build(); Registry socketFactoryRegistry RegistryBuilder. create() .register("http", PlainConnectionSocketFactory.INSTANCE) .register("https", socketFactory).build(); // 创建ConnectionManager,添加Connection配置信息 PoolingHttpClientConnectionManager connectionManager new PoolingHttpClientConnectionManager(socketFactoryRegistry); CloseableHttpClient closeableHttpClient HttpClients.custom().setConnectionManager(connectionManager) .setDefaultRequestConfig(requestConfig).build(); return closeableHttpClient; } catch (KeyManagementException ex) { throw new RuntimeException(ex); } catch (NoSuchAlgorithmException ex) { throw new RuntimeException(ex); } } public Response doGet(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); //创建HttpGet远程连接实例 HttpGet httpGet; if (StringUtils.isNotEmpty(this.afterQuery)) { httpGet new HttpGet(this.url + "?" + this.afterQuery); } else { httpGet new HttpGet(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpGet.setHeader("ContentType", this.contentType); httpGet.setHeader("ctyuneoprequestid", this.uuId); httpGet.setHeader("EopAuthorization", getSign(eopDate)); httpGet.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpGet.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpGet.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 httpGet.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(httpGet); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response sendJsonByGetReq(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { Response result new Response(); CloseableHttpClient client null; CloseableHttpResponse response null; try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL client sslClient(); } else { client HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpGetWithEntity远程连接实例 HttpGetWithEntity httpGetWithEntity; if (StringUtils.isNotEmpty(this.afterQuery)) { httpGetWithEntity new HttpGetWithEntity(this.url + "?" + this.afterQuery); } else { httpGetWithEntity new HttpGetWithEntity(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为HttpGetWithEntity实例设置配置 httpGetWithEntity.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpGetWithEntity.setHeader("ContentType", this.contentType); httpGetWithEntity.setHeader("ctyuneoprequestid", this.uuId); httpGetWithEntity.setHeader("EopAuthorization", getSign(eopDate)); httpGetWithEntity.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpGetWithEntity.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpGetWithEntity.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); HttpEntity httpEntity new StringEntity(body, Charset.forName("UTF8")); httpGetWithEntity.setEntity(httpEntity); //执行请求操作,并拿到结果(同步阻塞) response client.execute(httpGetWithEntity); //获取结果实体 HttpEntity entity response.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! client) { try { client.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPost(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpPost远程连接实例 HttpPost httpPost; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPost new HttpPost(this.url + "?" + this.afterQuery); } else { httpPost new HttpPost(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPost.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpPost.setHeader("ContentType", this.contentType); httpPost.setHeader("ctyuneoprequestid", this.uuId); httpPost.setHeader("EopAuthorization", getSign(eopDate)); httpPost.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPost.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPost.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPost.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPost); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPut(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpPut远程连接实例 HttpPut httpPut; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPut new HttpPut(this.url + "?" + this.afterQuery); } else { httpPut new HttpPut(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPut.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(20321900,01,05); httpPut.setHeader("ContentType", this.contentType); httpPut.setHeader("ctyuneoprequestid", this.uuId); httpPut.setHeader("EopAuthorization", getSign(eopDate)); httpPut.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPut.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPut.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPut.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPut); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doPatch(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse httpResponse null; Response result new Response(); try { // 创建httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建HttpPatch远程连接实例 HttpPatch httpPatch; if (StringUtils.isNotEmpty(this.afterQuery)) { httpPatch new HttpPatch(this.url + "?" + this.afterQuery); } else { httpPatch new HttpPatch(this.url); } // 配置请求参数实例 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 设置连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 设置连接请求超时时间 .setSocketTimeout(socketTimeout)// 设置读取数据连接超时时间 .build(); // 为httpPost实例设置配置 httpPatch.setConfig(requestConfig); // 设置请求头 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpPatch.setHeader("ContentType", this.contentType); httpPatch.setHeader("ctyuneoprequestid", this.uuId); httpPatch.setHeader("EopAuthorization", getSign(eopDate)); httpPatch.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpPatch.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpPatch.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 为httpPost设置封装好的请求参数 StringEntity data new StringEntity(body, Charset.forName("UTF8")); httpPatch.setEntity(data); // httpClient对象执行post请求,并返回响应参数对象 httpResponse httpClient.execute(httpPatch); // 从响应对象中获取响应内容 HttpEntity entity httpResponse.getEntity(); result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(httpResponse.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : httpResponse.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! httpResponse) { try { httpResponse.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doDelete(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpGet远程连接实例 HttpDelete httpDelete; if (StringUtils.isNotEmpty(this.afterQuery)) { httpDelete new HttpDelete(this.url + "?" + this.afterQuery); } else { httpDelete new HttpDelete(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpDelete.setHeader("ContentType", this.contentType); httpDelete.setHeader("ctyuneoprequestid", this.uuId); httpDelete.setHeader("EopAuthorization", getSign(eopDate)); httpDelete.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpDelete.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpDelete.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 httpDelete.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(httpDelete); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response sendJsonByDeleteReq(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpGet远程连接实例 HttpDeleteWithBody delete; if (StringUtils.isNotEmpty(this.afterQuery)) { delete new HttpDeleteWithBody(this.url + "?" + this.afterQuery); } else { delete new HttpDeleteWithBody(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); delete.setHeader("ContentType", this.contentType); delete.setHeader("ctyuneoprequestid", this.uuId); delete.setHeader("EopAuthorization", getSign(eopDate)); delete.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { delete.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : delete.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); HttpEntity httpEntity new StringEntity(body, Charset.forName("UTF8")); delete.setEntity(httpEntity); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpGet实例设置配置 delete.setConfig(requestConfig); // 执行get请求得到返回对象 response httpClient.execute(delete); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } public Response doHead(int connectTimeout, int connectionRequestTimeout, int socketTimeout) { CloseableHttpClient httpClient null; CloseableHttpResponse response null; Response result new Response(); try { // 通过址默认配置创建一个httpClient实例 if (temp 0) {//绕过SSL httpClient sslClient(); } else { httpClient HttpClients.createDefault(); } String query this.queryStr; this.afterQuery encodeQueryStr(query); // 创建httpHead远程连接实例 HttpHead httpHead; if (StringUtils.isNotEmpty(this.afterQuery)) { httpHead new HttpHead(this.url + "?" + this.afterQuery); } else { httpHead new HttpHead(this.url); } // 设置请求头信息,鉴权 SimpleDateFormat TIMEFORMATTER new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); Date eopDate new Date(); httpHead.setHeader("ContentType", this.contentType); httpHead.setHeader("ctyuneoprequestid", this.uuId); httpHead.setHeader("EopAuthorization", getSign(eopDate)); httpHead.setHeader("Eopdate", TIMEFORMATTER.format(eopDate)); if (this.headerMap ! null) { for (String key : this.headerMap.keySet()) { if (StringUtils.isNotEmpty(key)) { httpHead.setHeader(key, this.headerMap.get(key).toString()); } } } System.out.println("请求头部 "); for (Header header : httpHead.getAllHeaders()) { System.out.println(header.getName() + ":" + header.getValue()); } System.out.println(); // 设置配置请求参数 RequestConfig requestConfig RequestConfig.custom().setConnectTimeout(connectTimeout)// 连接主机服务超时时间 .setConnectionRequestTimeout(connectionRequestTimeout)// 请求超时时间 .setSocketTimeout(socketTimeout)// 数据读取超时时间 .build(); // 为httpHead实例设置配置 httpHead.setConfig(requestConfig); // 执行head请求得到返回对象 response httpClient.execute(httpHead); // 通过返回对象获取返回数据 HttpEntity entity response.getEntity(); // 通过EntityUtils中的toString方法将结果转换为字符串 result.setBody(EntityUtils.toString(entity, "UTF8")); result.setStatusCode(response.getStatusLine().getStatusCode()); Map headerMap new HashMap (); for (Header header : response.getAllHeaders()) { headerMap.put(header.getName(), header.getValue()); } result.setHeaders(headerMap); } catch (Exception e) { e.printStackTrace(); } finally { // 关闭资源 if (null ! response) { try { response.close(); } catch (IOException e) { e.printStackTrace(); } } if (null ! httpClient) { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } return result; } private String toHex(byte[] data) { StringBuilder sb new StringBuilder(data.length 2); byte[] var2 data; int var3 data.length; for (int var4 0; var4 2) { String encodeStr null; encodeStr URLEncoder.encode(s[1], "UTF8"); str s[0] + "" + encodeStr; afterQuery afterQuery + str; } else { String encodeStr ""; str s[0] + "" + encodeStr; afterQuery afterQuery + str; } } else { String[] s str.split(""); if (s.length > 2) { String encodeStr URLEncoder.encode(s[1], "UTF8"); str s[0] + "" + encodeStr; afterQuery afterQuery + "&" + str; } else { String encodeStr ""; str s[0] + "" + encodeStr; afterQuery afterQuery + "&" + str; } } } } } catch (Exception e) { e.printStackTrace(); } return afterQuery; } } 3. HexUtils.java plaintext package com.ffcs.ebp.ebpsdk; public class HexUtils { private static final char[] HEXES { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; / byte数组 转换成 16进制小写字符串 / public static String bytes2Hex(byte[] bytes) { if (bytes null bytes.length 0) { return null; } StringBuilder hex new StringBuilder(); for (byte b : bytes) { hex.append(HEXES[(b >> 4) & 0x0F]); hex.append(HEXES[b & 0x0F]); } return hex.toString(); } / 16进制字符串 转换为对应的 byte数组 / public static byte[] hex2Bytes(String hex) { if (hex null hex.length() 0) { return null; } char[] hexChars hex.toCharArray(); byte[] bytes new byte[hexChars.length / 2]; // 如果 hex 中的字符不是偶数个, 则忽略最后一个 for (int i 0; i headerMap new HashMap<>(); // headerMap.put("queryMetricDataInfo", "{"regionId":"cnsz1","dim":"instanceid,98cdcc8a8e544788ab9cc94ccee429c7","filter":"average","from":"1658473040","to":"1658473040","metricName":"netbitRecv","namespace":"AGT.ECS","period":"1"},"platform":"3"}"); // headerMap.put("platform", "3"); // headerMap.put("consoleUrl", " // headerMap.put("UserAgent", "3333433"); // headerMap.put("XForwardedFor", "1231313"); // headerMap.put("regionId", "100054c0416811e9a6690242ac110002"); // headerMap.put("prodInstId","9dcaf0157c604100af79bdb8271527bc"); //请求地址 String url " //query参数(?后面拼接的参数。没有就不填) aaaa&bbbb String queryStr "regionID41f64827xxxxxxxxxffa3a5deb5d15d"; //body参数(没有就不填) String body ""; //APPID String ak "9f82cacd3f8235c66edfs5e899f098e6"; //appkey String sk "MlgzESz430hJgTzA4lkjuJvDMMLTqwBQRicVqV62VM"; String uuId UUID.randomUUID().toString(); //连接超时 int connectTimeout 35000; //连接请求超时 int connectionRequestTimeout 35000; //socket超时 int socketTimeout 60000; YunSign yunSign new YunSign(url, ak, sk, uuId, body, temp, contentType, queryStr, headerMap); Response response yunSign.toDo(method, connectTimeout, connectionRequestTimeout, socketTimeout); System.out.println("应答头部 "); for (Map.Entry entry : response.getHeaders().entrySet()) { System.out.println(entry.getKey().toString() + ":" + entry.getValue().toString()); } System.out.println(); System.out.println("请求结果 "); System.out.println(response.getBody()); } }
        来自:
        帮助文档
        对象存储 ZOS
        API参考
        API(OpenAPI)
        如何调用API
        Java调用示例
      • 产品定义
        分布式缓存服务(Distributed Cache Service,简称DCS)是一款内存数据库服务,兼容Redis内存数据库引擎,为您提供即开即用、安全可靠、弹性扩容、便捷管理的在线分布式缓存能力,满足用户高并发及数据快速访问的业务诉求。 即开即用 DCS提供单机、主备和集群三种类型的缓存实例,拥有从128MB到1024GB的丰富内存规格。您可以通过控制台直接创建,无需单独准备服务器资源。 其中Redis4.0/5.0/6.0版本采用容器化部署,秒级完成创建。 安全可靠 借助统一身份认证、虚拟私有云、云监控与云审计等安全管理服务,全方位保护实例数据的存储与访问。 灵活的容灾策略,主备/集群实例从单AZ(可用区)内部署,到支持跨AZ部署。 弹性伸缩 DCS提供对实例内存规格的在线扩容与缩容服务,帮助您实现基于实际业务量的成本控制,达到按需使用的目标。 便捷管理 可视化Web管理界面,在线完成实例重启、参数修改、数据备份恢复等操作。DCS还提供基于RESTful的管理API,方便您进一步实现实例自动化管理。 在线迁移 提供可视化Web界面迁移功能,支持备份文件导入和在线迁移两种方式,您可以通过控制台直接创建迁移任务,提高迁移效率。 DCS Redis Redis是一种支持KeyValue等多种数据结构的存储系统。可用于缓存、事件发布或订阅、高速队列等典型应用场景。Redis使用ANSI C语言编写,提供字符串(String)、哈希(Hash)、列表(List)、集合结构(Set、Sorted Set)、流(Stream)等数据类型的直接存取。数据读写基于内存,同时可持久化到磁盘。 DCS Redis拥有灵活的实例配置供您选择: DCS Redis灵活的实例配置 实例类型 提供单机、主备、Proxy集群、Cluster集群、读写分离类型,分别适配不同的业务场景。 单机:适用于应用对可靠性要求不高、仅需要缓存临时数据的业务场景。单机实例支持读写高并发,但不做持久化,实例重启后原有缓存数据不会加载。 主备:包含一个主节点,一个备节点,主备节点的数据通过实时复制保持一致,当主节点故障后,备节点自动升级为主节点。 Proxy集群:在Cluster集群的基础上,增加挂载Proxy节点和ELB节点,通过ELB节点实现负载均衡,将不同请求分发到Proxy节点,实现客户端高并发请求。每个Cluster集群分片是一个双副本的主备实例,当主节点故障后,同一分片中的备节点会升级为主节点来继续提供服务。 Cluster集群:通过分片化分区来增加缓存的容量和并发连接数,每个分片是一个主节点和0到多个备节点,分片本身对外不可见。分片中主节点故障后,同一分片中备节点会升级为主节点来继续提供服务。用户可通过读写分离技术,在主节点上写,从备节点读,从而提升缓存的整体读写能力。 读写分离:在主备实例的基础上,增加挂载Proxy节点和ELB节点,通过ELB节点实现负载均衡,将不同请求分发到Proxy节点,Proxy节点识别用户读写请求,将请求发送到主节点或备节点,从而实现读写分离。 :: 规格 Redis提供128MB~1024GB的多种规格。 兼容开源Redis版本 DCS提供不同的实例版本,分别兼容开源Redis的3.0、4.0、5.0、6.0。 底层架构 基于虚拟机的标准版 ,单节点QPS达10万/秒。 高可用与容灾 主备与集群实例提供Region内的跨可用区部署,实现实例内部节点间的电力、网络层面物理隔离。 有关开源Redis技术细节,您可以访问Redis官方网站
        来自:
        帮助文档
        分布式缓存服务Redis版
        产品简介
        产品定义
      • 创建协议服务
        协议服务提供标准 NFS 协议访问 HPFS 文件系统的能力,本文介绍创建协议服务的场景说明和操作步骤。 场景说明 当创建文件系统后,如您需要使用弹性云主机 ECS 或 CPU 物理机来挂载该文件系统,您需要创建协议服务,使用 VPC 或 VPCE 挂载地址挂载到云服务器上。 操作步骤 1. 登录天翼云控制中心,单击管理控制台左上角的,选择地域。 2. 选择“存储>并行文件服务 HPFS”,进入并行文件服务的控制台页面。 3. 点击目标文件系统,进入文件系统详情页,点击协议服务页签,即可进入协议服务页面。 4. 单击“创建协议服务”按钮,进入创建页面,根据需求及界面提示进行选择并点击创建: 参数 说明 文件系统 所属文件系统的 ID。 协议服务规格 只支持通用型。 协议类型 导出协议类型 NFS,默认支持 NFSv3 和 NFSv4。 注意 这里的协议类型选择,不影响文件系统本身协议类型为 HPFSPOSIX,相当于同时提供两种协议访问通道。 选择网络 选择协议服务使用的虚拟私有云(VPC),需要与要挂载的云服务器 VPC 网络相同,才能保证网络互通,实现文件的挂载访问。 创建后不可修改,若当前地域没有虚拟私有云,点击“创建虚拟私有云”,创建完成后刷新可选择新建的 VPC。 如您是在地域资源池使用,则还需选择 NFS 协议使用的子网(SUBNET)网络。 注意 一个文件系统可以创建多个协议服务; 同一个文件系统,创建的不同协议服务,不能绑定同一个 VPC; 不同的文件系统,创建的不同协议服务,可以绑定同一个 VPC。 终端节点 开启后本服务将为您创建免费的终端节点(VPCE),自动连接并行文件的协议服务。 创建 VPCE 后将返回该 VPC 专属的挂载地址,通常需要 1~3 分钟。如果您删除了终端节点,则 VPCE 的挂载地址将会失效。 开启终端节点后,需选择NFS协议使用的子网(SUBNET)网络,仅支持选择普通子网。 描述 协议服务的描述信息,可根据需求添加备注。 5. 协议服务为异步创建,创建完成后,可在协议服务列表页刷新,即可看到对应的协议服务信息。
        来自:
        帮助文档
        并行文件服务 HPFS
        用户指南
        协议服务
        创建协议服务
      • 数据盘扩展磁盘分区和文件系统
        本文将为您介绍如何在Linux环境下为数据盘扩展磁盘分区和文件系统。 扩大原有分区 (MBR分区与GPT分区) 本示例以“CentOS 7.6 64bit”操作系统为例,原有数据盘/dev/vdb已有分区/dev/vdb1,容量为10GB,且已在控制台将该数据盘扩容至20GB。本示例介绍如何将新增的10GB容量划分至已有的MBR分区或GPT分区/dev/vdb1内。 1. 输入 growpart命令,检查此云主机是否已安装growpart扩容工具。若出现图中回显信息,则说明已经安装,无需手动安装。 注意 若没有图示信息,请执行命令“yum install cloudutilsgrowpart”手动安装growpart工具。 2. 执行命令 fdisk l,查看磁盘的分区信息,回显信息如图所示: 3. 执行命令 df TH,查看数据盘分区/dev/vdb1的容量,回显信息如图所示: 从图中看出,磁盘分区/dev/vdb1容量为10GB,但是磁盘/dev/vdb的容量为20GB,需要扩容磁盘分区/dev/vdb1的空间。 4. 执行命令 growpart /dev/vdb 1,指定数据盘待扩容的分区,数据盘为/dev/vdb,分区的编号为1,通过growpart进行扩容,回显信息如图所示: 5. 执行命令 resize2fs /dev/vdb1,将原有分区/dev/vdb1的文件系统进行扩充。回显信息如图所示: 说明 当磁盘分区文件系统为xfs格式时,需要使用xfsgrowfs 磁盘分区扩容。 当磁盘分区文件系统为ext格式时,需要使用resize2fs 磁盘分区扩容。 6. 执行命令 df TH,查看扩容后数据盘分区“/dev/vdb1”的容量,回显信息如图所示: 此时数据盘分区/dev/vdb1的容量已经扩容至20GB。 若需要设置开机自动挂载磁盘分区,请参见设置开机自动挂载磁盘。
        来自:
        帮助文档
        云硬盘 EVS
        用户指南
        扩容云硬盘
        Linux扩展磁盘分区和文件系统
        数据盘扩展磁盘分区和文件系统
      • 视频上传
        云点播上传视频流程介绍。 综述 云点播主要通过控制台和SDK/API两种方式完成视频上传。 前提条件 已开通云点播。 云点播至少创建了一个点播实例。 操作步骤 控制台上传 1. 登陆云点播控制台。 2. 在左侧导航栏找到【媒体库】。 3. 在左上角找到【上传视频】按钮,点击弹出对话框。 4. 点击【选择视频】或将本机视频以鼠标拖放的形式放置在对话框中。 5. 在【视频处理】选项处,可以选择【直接上传】(仅上传不处理)或【上传的同时对视频进行处理】。 6. 【可选】如选择了【上传的同时对视频进行处理】,您可在弹出的下级交互窗口选择合适的处理方式,包括转码、水印和封面截图。其中【转码模版】处可以选择自定义或系统预设模版。当您同时勾选多个转码模版时,云点播会按照多个模版的配置,同时转码生成多份文件。您也可以在【水印模版】处选择合适的水印模版,该水印模版将针对上面所有转码模版生效。当勾选了【截取首帧做封面】时,云点播会默认取视频第一个关键帧作为该视频的封面图。如需更换封面,可参考【点播模式】【视频截图】中的相关描述。 7. 完成以上配置后,点击【开始上传】即可开始上传文件。 注意 1. 在此界面上传的所有文件权限默认继承该点播实例的存储桶权限。 2. 点播模式下,控制台上传入口会检查上传文件的扩展名,如不是界面上显示支持的格式文件,则默认不会上传。 3. 通过浏览器界面上传文件,由于浏览器限制和上传主机的硬件配置情况,可能会出现过大或数量过多的文件引起页面崩溃的问题。因此从该入口上传文件时,请勿一次性上传过多的文件。建议单文件最大容量不超过4GB,一批次文件数量不超过100个。 4. 在上传过程中,请勿关闭该上传页面,否则会导致上传中断,产生数据碎片。 5. 您可以在上传过程中查看【上传中】标签卡,查询上传进度。当存在上传中断遗留的数据碎片,也将在此处显示。您可以手工删除,或者放置超过7天由系统自动清除。
        来自:
        帮助文档
        云点播
        用户指南
        点播模式
        视频上传
      • 日志备份下载与清理
        合并下载 1. 在天翼云官网首页的顶部菜单栏,选择产品 > 数据库 > 关系型数据库 > 关系数据库MySQL版 ,进入关系数据库MySQL产品页面。然后单击管理控制台 ,进入概览页面。 2. 在左侧导航栏,选择MySQL > 实例管理,进入实例列表页面。然后在顶部菜单栏,选择区域和项目。 3. 在实例列表中,单击目标实例名称,进入基本信息页面。 4. 单击备份恢复 ,进入基础备份列表页签。 5. 单击日志合并下载页签。 您可以在合并任务列表中,查看已经合并的任务和文件。 6. 单击创建合并任务 ,配置合并时间段 ,然后单击确定。 在合并任务列表中,您可以看到正在初始化的合并任务。等待任务完成后,单击合并任务名称左侧的下拉框,查看并下载已合并的日志文件。 注意 合并的日志文件会占用空间,因此产生费用,您可在下载后手动进行删除,如未删除系统将会在24小时后将清理合并后的Binlog文件,故请及时下载所需的文件。 如选择内网下载,则将链接复制,使用wget ' 公网下载方式的临时下载地址链接有效时间为1小时。 日志备份清理 1. 在天翼云官网首页的顶部菜单栏,选择产品 > 数据库 > 关系型数据库 > 关系数据库MySQL版 ,进入关系数据库MySQL产品页面。然后单击管理控制台 ,进入概览页面。 2. 在左侧导航栏,选择MySQL > 实例管理,进入实例列表页面。然后在顶部菜单栏,选择区域和项目。 3. 在实例列表中,单击目标实例名称,进入基本信息页面。 4. 找到备份空间使用量一栏,点击日志备份清理按钮。 5. 根据可清理时间段,选择待清理的时间节点,单击确定。 系统将会删除您所选择时间节点之前的所有Binlog文件。 注意 删除Binlog文件可释放部分备份空间,但同时会影响您恢复至任意时间点的功能,建议通过备份空间扩容来满足备份空间不足的需求。 删除Binlog操作为异步任务,单击确定进行删除操作后,您在几分钟后刷新界面,即可看到相关文件已被清理,时间和清理的文件大小有关。
        来自:
        帮助文档
        关系数据库MySQL版
        用户指南
        备份与恢复
        Binlog下载与清理
        日志备份下载与清理
      • 操作类
        本章节会介绍关系型数据库在使用和操作时遇到的常见问题。 可以通过创建模板的方式创建实例吗 目前不支持实例模板。可通过备份恢复功能将备份文件恢复到新实例上。 云数据库如何进行主备切换 关系型数据库(Relational Database Service,简称RDS)服务提供高可用类型,推荐您选择主备模式。 故障切换 也叫计划外的切换。当主机出现故障时,系统会在1~5分钟内自动切换到备机,主备实例的连接IP不变,整个过程无需人工干预。切换过程中不可访问,需要您设置好程序跟关系型数据库服务的自动重连,避免因为切换导致服务不可用。 手动切换 也叫计划内的切换。当实例运行正常时,用户可以自主手动触发主备切换,以满足业务需求。 步骤1 登录管理控制台。 步骤2 单击管理控制台左上角的,选择区域和项目。 步骤3 选择“数据库 > 关系型数据库”。进入关系型数据库信息页面。 步骤4 在“实例管理”页面,选择指定的主备实例,单击实例名称,进入实例的“基本信息”页面。 步骤5 在“基本信息”页面中“数据库信息”模块的“实例类型”处,单击“主备切换”。 您也可以在“基本信息”页面,单击“实例拓扑图”模块的。进行主备切换。 注意 主备切换可能会造成几秒或几分钟的服务闪断(闪断时间与复制时延有关),并有可能在主备同步时延过大的情况下,导致少量数据丢失。 主备切换后,请注意对业务进行预热,避免业务高峰期出现阻塞。 在“主备切换”弹框,单击“是”进行主备实例的切换。 在“复制状态”为“正常”的情况下,复制时延大于300s,主备切换任务无法下发。 主备切换成功后,单击“返回实例列表”,用户可以在“实例管理”页面对其进行查看和管理。 切换过程中,状态显示为“主备切换中”。 在实例列表的右上角,单击刷新列表,可查看到主备切换完成后,实例状态显示为“正常”。
        来自:
        帮助文档
        关系数据库MySQL版
        常见问题
        操作类
      • 操作类
        本章节介绍操作数据库时的常见问题有哪些及解决办法。 可以通过创建模板的方式创建实例吗 目前不支持实例模板。可通过备份恢复功能将备份文件恢复到新实例上。 云数据库如何进行主备切换 关系型数据库(Relational Database Service,简称RDS)服务提供高可用类型,推荐您选择主备模式。 故障切换 也叫计划外的切换。当主机出现故障时,系统会在1~5分钟内自动切换到备机,主备实例的连接IP不变,整个过程无需人工干预。切换过程中不可访问,需要您设置好程序跟关系型数据库服务的自动重连,避免因为切换导致服务不可用。 手动切换 也叫计划内的切换。当实例运行正常时,用户可以自主手动触发主备切换,以满足业务需求。 步骤1 登录管理控制台。 步骤2 单击管理控制台左上角的,选择区域和项目。 步骤3 选择“数据库 > 关系型数据库”。进入关系型数据库信息页面。 步骤4在“实例管理”页面,选择指定的主备实例,单击实例名称,进入实例的“基本信息”页面。 步骤5 在“基本信息”页面中“数据库信息”模块的“实例类型”处,单击“主备切换”。 您也可以在“基本信息”页面,单击“实例拓扑图”模块的。进行主备切换。 注意 主备切换可能会造成几秒或几分钟的服务闪断(闪断时间与复制时延有关),并有可能在主备同步时延过大的情况下,导致少量数据丢失。 主备切换后,请注意对业务进行预热,避免业务高峰期出现阻塞。 在“主备切换”弹框,单击“是”进行主备实例的切换。 在“复制状态”为“正常”的情况下,复制时延大于300s,主备切换任务无法下发。 主备切换成功后,单击“返回实例列表”,用户可以在“实例管理”页面对其进行查看和管理。 切换过程中,状态显示为“主备切换中”。 在实例列表的右上角,单击刷新列表,可查看到主备切换完成后,实例状态显示为“正常”。
        来自:
        帮助文档
        关系数据库PostgreSQL版
        常见问题
        操作类
      • 查询上一次漏洞扫描任务详情列表
        接口功能介绍 查询最近一次扫描详情包含影响的服务器结果列表。 接口约束 此功能为收费功能。确认已经购买系统配额,并且开启服务器防护。如果没有购买配额,可按照页面提示进行购买。如果没有开启防护,请在服务器列表页开启机器防护。 URI POST /v1/vulnerability/lastDetail/list 路径参数 无 Query参数 无 请求参数 请求头header参数 参数 是否必填 参数类型 说明 示例 下级对象 ContentType 是 String ContentType application/json 请求体body参数 参数 是否必填 参数类型 说明 示例 下级对象 currentPage 是 Integer 当前页码 1 pageSize 是 Integer 每页大小 10 paramType 否 Integer 查询参数类型 1服务器名称 2服务器ip 5guid 1 param 否 String 查询参数 ctsassa taskId 否 String 任务id 1saaa 响应参数 参数 参数类型 说明 示例 下级对象 error String 返回码 CTCSSCN000000:成功 CTCSSCN000001:失败 CTCSSCN000003:用户未签署协议,安全卫士系统无法正常使用 CTCSSCN000004:鉴权错误 CTCSSCN000005:用户没有付费版配额,功能不可用 CTCSSCN000000 message String 返回信息 success returnObj Object 返回对象 returnObj traceId String traceId 211111111111111111111 statusCode String 状态码 200成功 200 表 returnObj 参数 参数类型 说明 示例 下级对象 total Integer 总数 100 list Array of Objects 结果集 list pageNum Integer 当前页 1 pageSize Integer 每页的数量 10 表 list 参数 参数类型 说明 示例 下级对象 createTime String 开始时间 20220610 10:10:10 finishTime String 结束时间 20220610 10:10:10 agentGuid String agentGuid testagentguid publicIp String 公网IP 192.168.1.1 agentIp String 私网IP 192.168.1.1 custName String 主机名 testcustname displayName String 实例名称 testdisplayname osType String 操作系统 Linux/Windows Windows status Integer 任务状态 1扫描成功 0扫描失败 0 count Integer 风险数量 0
        来自:
        帮助文档
        服务器安全卫士(原生版)
        API参考
        API
        2022-10-20
        漏洞扫描
        查询上一次漏洞扫描任务详情列表
      • 实例访问域名
        使用说明 1. 内网域名仅限资源池内部创建VPC终端节点使用,参见内网访问指引。 2. ${instanceName}为企业版实例名称。 3. 建议使用新域名。
        来自:
        帮助文档
        容器镜像服务
        用户指南
        访问控制
        实例访问域名
      • 卸载cuDNN加速库
        本文为您介绍卸载cuDNN加速库的操作方法。 cuDNN无独立卸载程序,需通过删除复制到CUDA目录的专属文件完成卸载,卸载前需先关闭所有依赖cuDNN的程序,且建议在卸载CUDA 工具包前执行本操作,避免文件残留或占用。 前置说明 关闭所有使用cuDNN的程序。 在Linux操作系统中卸载cuDNN 如果您在创建GPU云主机时自动安装了cuDNN加速库,使用的是复制头文件与库文件到CUDA目录完成部署,无独立卸载程序,因此只需精准删除cuDNN相关文件即可完成卸载。本章节以默认CUDA路径/usr/local/cuda为例。 1. 先查询cuDNN文件 plaintext ls l /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn.so 2>/dev/null 2. 删除cuDNN核心文件 plaintext sudo rm rf /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn.so 3. 刷新系统库缓存 plaintext sudo ldconfig 4. 验证卸载成功 plaintext ls /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn.so 2>/dev/null echo "cuDNN has been completely uninstalled" 出现“cuDNN has been completely uninstalled”表明已经卸载完成。 在Windows操作系统中卸载cuDNN 本章适用于通过zip包安装的cuDNN加速库的卸载操作。卸载逻辑的核心是精准删除这些复制到CUDA中的cuDNN专属文件,不影响CUDA本身,以Windows Server 2016 x8664系统、CUDA 11.4.0版本、cuDNN8.8.1版本为例进行cuDNN加速库的卸载。 以管理员身份打开CMD并按以下步骤操作。 1. 确认CUDA路径。 plaintext echo %CUDAPATH% 2. 查询并删除CUDA的bin、include、libx64目录中的cudnn开头的文件。 查询命令如下 plaintext dir /s /b "%CUDAPATH%bincudnn.dll"&dir /s /b "%CUDAPATH%includecudnn.h"&dir /s /b "%CUDAPATH%libx64cudnn.lib" 确认查询结果无误后请执行以下命令删除cuDNN文件。 plaintext del /f /s /q "%CUDAPATH%bincudnn.dll" & del /f /s /q "%CUDAPATH%includecudnn.h" & del /f /s /q "%CUDAPATH%libx64cudnn.lib" 3. 验证卸载成功。 再次查询CUDA路径下的cuDNN头文件,执行后无任何文件路径输出表明卸载完成。 plaintext dir /s /b "%CUDAPATH%bincudnn.dll" & dir /s /b "%CUDAPATH%includecudnn.h" & dir /s /b "%CUDAPATH%libx64cudnn.lib"
        来自:
        帮助文档
        GPU云主机
        用户指南
        驱动及工具包的安装
        手动卸载Tesla驱动、工具包及加速库
        卸载cuDNN加速库
      • 冻结/到期处理措施
        本文介绍云主机备份存储库冻结或到期的影响以及处理方法。 按需计费资源冻结 如果用户账户出现欠费,按需计费模式的云资源将被冻结进入欠费保留期,您将不能正常访问及使用云资源。保留期内云资源的业务中断,但对于您存储在云资源中的数据予以保留。欠费保留期内的云资源仍持续按需计费,此期间用户可以进行账号充值,充值时系统将会自动优先扣除欠费金额。充值成功至账户未欠费状态后,云资源的冻结状态将自动解除,相应云资源可恢复业务。若欠费保留期结束后用户账户仍没有充值成功,云资源将被释放,业务数据将无法恢复。 注意 欠费保留期的时长为15天。 资源冻结、解冻、欠费保留期到期时对业务的影响 资源冻结:存储库状态变为“已冻结”,限制资源的访问和使用,存储在存储库中的数据予以保留,欠费冻结保留期内的存储库不会按照已绑定的备份策略执行备份创建任务。 资源解冻:存储库状态更新,解除限制资源的访问和使用。但是需要您自行检查资源是否可以正常使用。 欠费保留期到期:销毁存储库,销毁存储在存储库中的数据。 资源使用建议 按需计费模式的存储库进入欠费保留期后将影响资源的正常使用,为避免因为账户欠费影响您的业务和数据,建议您开通帐户可用额度预警功能,并关注账户欠费等相关通知信息,以便及时充值,以确保帐户余额充足。 资源进入保留期后,您将不能正常访问及使用云服务(资源冻结),但对于您存储在云服务中的数据予以保留。 包年包月资源到期 在包年包月计费模式的云资源将要到期时,天翼云会以邮件的方式通知客户,如用户需继续使用,则可联系客户经理执行续订操作或自行在控制台续订存储库,续订规则请参见续订规则说明。如果用户未主动续订或者虽然开通了自动续订但自动续订失败,天翼云将发送资源超期提醒邮件,并且此时资源将进入保留期,保留期内云资源的业务中断,但对于您存储在云资源中的数据予以保留。保留期内用户可以续订资源,续订成功后云资源可恢复业务。保留期结束后云资源将被释放,业务数据将无法恢复。 注意 资源保留期的时长为15天。
        来自:
        帮助文档
        云主机备份 CSBS
        计费说明
        冻结/到期处理措施
      • 清理对象存储空间
        本节介绍了清理对象存储空间的用户指南。 总体说明 在控制台中删除容器镜像后,ZOS存储空间(ZOS Bucket)中的镜像的层仍然存在。及时删除ZOS存储空间中的无效镜像层数据,清理其占用的存储空间,能避免不必要的费用开销。 注意 1、仅企业版实例支持制品清理能力。 2、在执行制品清理任务时,既可以从镜像服务中拉取镜像,也可以往镜像服务中推送镜像。 3、 执行清理任务时,往前数两小时内新上传的镜像层,在本次清理任务中是不会被清理。 操作步骤 模拟执行 说明 模拟执行只会模拟执行一次,列举出会清理的层及制品,并不会实际对ZOS中所存储的层数据执行清理操作,仅用于评估使用。 1. 登录容器镜像服务控制台; 2. 在顶部菜单栏,选择所需资源池; 3. 在实例页面中选择容器镜像仓库实例; 4. 在企业版实例管理页面的左侧菜单上选择 实例管理 制品清理; 5. 点击模拟执行 ,在弹出框中,按照实际情况选择是否允许回收无Tag的artifacts ,再点击确定,从而开始执行模拟制品清理任务; 6. 执行后可在执行历史中查看执行结果及日志。 立即执行 说明 立即执行可以马上执行一次清理任务,无需等待到达定时清理的时间点。当出现OSS存储空间不足时且又急需足够的存储空间时,可以执行这个操作。但是清理属于计算密集型操作,会影响仓库性能。需要操作者自行评估是否会影响当前镜像服务的使用。 1. 登录容器镜像服务控制台; 2. 在顶部菜单栏,选择所需资源池; 3. 在实例页面中选择容器镜像仓库实例; 4. 在企业版实例管理页面的左侧菜单上选择 实例管理 制品清理; 5. 点击立即执行 ,在弹出框中,按照实际情况选择是否允许回收无Tag的artifacts ,再点击确定,开始执行制品清理任务; 6. 执行后可在执行历史中查看执行结果及日志。
        来自:
        帮助文档
        容器镜像服务
        用户指南
        实例管理
        清理对象存储空间
      • 产品规格
        本节介绍了容器镜像服务的产品规格。 容器镜像服务提供免费的个人版和收费的企业版,具体说明如下:
        来自:
        帮助文档
        容器镜像服务
        产品介绍
        产品规格
      • 服务基础配置修改建议
        本章节主要介绍服务的基础配置修改建议。 核心原则:混部部署场景下的资源总量控制 在翼 MR 集群中,多个大数据组件(如 HDFS、HBase、YARN 等)可能会部署在同一台 ECS 实例上(即混部场景)。为避免资源竞争导致系统不稳定,请遵循以下基本原则: · 总内存控制 :所有组件 JVM 堆内存之和 ≤ 实例总内存 ×80%。预留至少 20% 的内存给操作系统、Page Cache、堆外内存及突发流量。 · CPU 资源控制 :各组件线程池参数(如 Kafka 的num.io.threads等)配置之和不宜超过实例 vCPU 核数的 2~3 倍,避免过度竞争。 · YARN 资源隔离 :若该节点同时运行 YARN NodeManager,其yarn.nodemanager.resource.memorymb配置不应超过实例总内存的 60%,以保证其他常驻组件的内存安全。 说明 以下各组件配置建议均基于独立部署场景给出。若您采用混部部署,请务必参照上述核心原则,适当调低各组件内存及线程参数。 Doris Doris 所在节点配置升级后,需根据实际内存和磁盘情况调整 FE 和 BE 配置。 FE(Frontend)配置建议 JVM 堆内存 :修改fe.conf中的 JVM 参数。推荐使用 G1 垃圾回收器,堆内存初始与最大值保持一致。生产环境下建议按业务调整, 最大不超过 100 GB 。示例:JAVAOPTS"Xms16g Xmx16g XX:+UseG1GC XX:MaxGCPauseMillis200" 日志路径 :避免将日志放在系统目录。平台默认(翼 MR 版本 ≥ 2.21)会将日志放到数据目录下;低版本需手动修改fe.conf中的LOGDIR、syslogdir、auditlogdir为目标路径。请确保日志盘有至少 50 GB 空间。 日志滚动数量 :syslogrollnum(默认 10 个,每个 1 GB)、auditlogrollnum(默认 30 个,每个 1 GB),可根据需要调整。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        服务配置修改建议
        服务基础配置修改建议
      • 同资源池不同VPC,通过对等连接接入天翼云
        本页为您介绍从天翼云ECS自建数据库迁移/同步数据到天翼云数据库,同资源池不同VPC情况下,通过对等连接接入的方法。 在同资源池,不同VPC之间,网络默认不通,需要通过VPC打通的方式来实现网络互通。目前支持通过VPC对等连接的方式实现VPC间子网级的互通,注意需要保证源数据实例所在子网与目标数据库实例所在子网的网段不冲突。 以下分别介绍网络通信方式,DTS实例的配置流程和不同VPC间通过对等连接进行互通的配置流程。 网络通信方式 网络通信方式,见下图: DTS实例的配置流程 DTS实例订购成功后,选择对应实例ID的操作“实例配置”,进入【配置源库及目标库信息】页面,“打通网络配置”将会自动识别,源端将显示“当前数据库不在同一个虚拟私有云(VPC),需要配置对等连接打通⽹络”,点击“创建虚拟私有云(VPC)对等连接”将跳转到VPC控制台,可按VPC相关流程处理“创建对等连接”,具体页面如下: 不同VPC间通过对等连接互通的配置流程 创建VPC对等连接。 具体可参考天翼云对等连接相关文档进行配置。 源数据库实例与目标数据库实例的网络ACL和安全组配置。 具体可参考同VPC通过VPC网络接入天翼云文档进行相应配置。 数据库添加白名单。 自建数据库需要添加DTS实例的私网IP访问数据库的权限。不同类型的数据库添加白名单的方法可能不一样,具体可参考各数据库官方文档进行操作。
        来自:
        帮助文档
        数据传输服务DTS
        快速入门
        天翼云ECS自建数据库到天翼云
        同资源池不同VPC,通过对等连接接入天翼云
      • 步骤
        步骤三:访问ZOS服务 操作场景 终端节点与DNS终端节点服务和ZOS终端节点服务建立连接后,本地数据中心就可通过VPN连接或云专线来实现对ZOS服务的访问。 前提条件 本地数据中心通过VPN连接或云专线与云上VPC建立连接,确保数据的安全传输,并实现对ZOS的访问,需进行如下配置: VPN网关设置:确保允许访问的VPC子网网段包含了ZOS所在的网段。具体请参考VPN连接。 云专线虚拟网关设置:需要确保允许访问的VPC子网网段中包含ZOS所在的网段。具体请参考开通云专线。 操作步骤 1. 点击天翼云门户首页的“控制中心”,输入A账号登录的用户名和密码,进入控制中心页面。 2. 在管理控制台上方点击图标,选择所需的资源池节点,以下操作选择华东华东1。 3. 在系统首页,选择“网络>VPC终端节点”。 4. 在“终端节点”列表,点击已创建的连接到DNS服务的终端节点的名称/ID,查看该终端节点的“节点IP”。 5. 在用户本地数据中心的DNS服务器上配置相应的DNS转发规则,以将解析ZOS域名的请求转发到连接DNS服务的终端节点(部分资源池支持终端节点上启用,支持资源池以控制台展示为准,未支持资源池可直接使用地址直接访问ZOS服务)。 6. 配置用户本地数据中心节点到VPN网关或云专线网关的DNS路由。为了通过VPN或云专线访问DNS,需要配置用户本地数据中心节点的永久路由,将访问DNS的流量指向用户本地数据中心节点的专线网关或VPN网关的IP地址。 7. 验证本地数据中心与ZOS的连通性。
        来自:
        帮助文档
        VPC终端节点
        快速入门
        配置访问ZOS服务内网地址的终端节点
        步骤
      • 产品功能
        产品功能 功能详情 视图接入 设备接入:支持GB28181/GB35114/GA1400/RTMP/RTSP/EHOME等多种标准协议设备直接接入。 平台接入:支持下级GB28181平台级联接入,支持下级GA1400视图库接入。 网关接入:支持局域网内设备通过边缘网关批量上云,支持主流视频厂商私有SDK协议、Onvif标准协议设备接入。 视图存储 录制模板:支持配置录像存储天数、自动录制、按需录制等。 视频存储:支持视频流实时全量存储,按需存储。 图片存储:支持抓拍机/AI设备等多种设备抓拍上传存储。 存储优势:支持纠删码方式进行分布式存储,具备流直存能力。 视图分发 直播分发协议:支持输出RTMP/FLV/HLS/WebRTC协议。 点播分发协议:支持输出HLS协议,MP4录像文件下载。 视频共享:支持向上级GB/T28181平台共享设备视频数据,支持向上级GA/T 1400视图库共享图片数据。 视图分析 算法仓库:支持算法仓库管理,高效的GPU算力资源调度、算法编排,算法与设备灵活绑定。 场景API:支持人脸识别、人体属性检测、车牌识别、城市治理多场景API。 告警回调:支持将分析结果通过回调配置,同步给其他平台。 访问管理 访问控制:管理员可以根据用户职责,创建不同的IAM用户并分配不同的访问权限,包括分配不同的设备访问资源和设备操作权限。 跨账号资源访问:支持委托信任的天翼云账号安全共享设备资源,支持灵活分配共享的资源权限范围。 开放平台 具备OpenAPI接口:平台所有原子化能力可以通过OpenAPI接口提供给应用平台。 具备API Explorer能力:可以通过API Explorer在线调试OpenAPI接口。 视频调阅 实时预览:支持多分屏、云台控制、电子缩放、语音对讲、实时截图。 录像回放:支持多分屏、倍速、同步/异步放像、电子缩放、录像截图、录像下载。 视图查看:支持视图数据查询及基本信息查看。 电子地图:支持平面/3D/卫星地图模式切换、支持多种点位汇聚模式。
        来自:
        帮助文档
        智能视图服务
        产品介绍
        产品功能
      • 查看VPC间访问流量
        VPC间访问展示当前防火墙实例防护的VPC间流量数据。 前提条件 配置并开启VPC边界流量防护,且已有流量经过VPC,开启VPC防护的操作步骤请参见“开启VPC边界流量防护”。 查看VPC间访问流量 1. 登录管理控制台。 2. 在左侧导航栏中,单击左上方的,选择“安全> 云防火墙”,进入云防火墙的总览页面。 3. (可选)当前账号下仅存在单个防火墙实例时,自动进入防火墙详情页面,存在多个防火墙实例时,单击防火墙列表“操作”列的“查看”,进入防火墙详情页面。 4. 在左侧导航栏中,选择“流量分析> VPC间访问”,进入“VPC间访问”页面。 5. 查看经过云防火墙的流量统计信息,支持5分钟~7天的数据。 流量看板:VPC间最大流量的相关信息。 VPC间访问:VPC间请求流量和响应流量数据。 取值说明: 时间段 取值说明 近1小时 取1分钟内的平均值 近24小时 取5分钟内的平均值 近7天 取1小时内的平均值 自定义 5分钟~6小时:取1分钟内的平均值 6小时(含)~3天:取5分钟内的平均值 3天(含)~7天(含):取30分钟内的平均值 可视化统计:查看指定时间段内VPC间流量中指定参数的 TOP 5 排行,参数说明请参见表354。单击单条数据查看流量详情,每个详情支持查看50条数据。 VPC间流量可视化统计参数说明: 参数名称 参数说明 TOP访问源IP VPC间流量的源IP地址。 TOP访问目的IP VPC间流量的目的IP地址。 TOP开放端口 VPC间流量的目的端口。 应用分布 VPC间流量的应用信息。 私网IP活动明细:查看指定时间段内私网IP流量 TOP 50 信息。
        来自:
        帮助文档
        云防火墙
        用户指南
        查看流量数据
        查看VPC间访问流量
      • 创建引用表
        该章节指导您创建引用表,即可对路径、User Agent、IP、Params、Cookie、Referer、Header这些单一类型的防护指标进行批量配置,引用表能够被CC攻击防护规则和精准访问防护中的规则所引用。 前提条件 已添加防护网站。 应用场景 CC攻击防护规则、精准访问防护规则批量配置防护字段时,可以使用引用表。 操作步骤 步骤1 登录管理控制台。 步骤2 单击管理控制台右上角的,选择区域或项目。 步骤3 单击页面左上方的,选择“安全 > Web应用防火墙(独享版)”。 步骤4 在左侧导航树中,选择“防护策略”,进入“防护策略”页面。 步骤5 点击策略名称,进入防护配置页面,在“CC攻击防护”或者“精准访问防护”配置框中,单击“自定义CC攻击防护规则”或者“自定义精准访问防护规则”,进入规则配置页面。 步骤6 在列表左上角,单击“引用表管理”。 步骤7 在“引用表管理”界面,单击“添加引用表”。 步骤8 在弹出的“添加引用表”对话框中,添加引用表。 添加引用表参数说明: 参数名称 参数说明 取值样例 ::: 名称 用户自定义引用表的名字。 waf 类型 路径:设置的防护路径,不包含域名。 User Agent:设置为需要防护的扫描器的用户代理。 IP:设置为需要防护的访问者IP地址。 Params:设置为需要防护的请求参数。 Cookie:根据Cookie区分的Web访问者。 Referer:设置为需要防护的自定义请求访问的来源。 Header:设置为需要防护的自定义HTTP首部。 路径 值 对应“类型”的取值,该值不支持通配符。可单击“添加”设置多个值。 /buy/phone/ 步骤9 单击“确认添加”,添加的引用表展示在引用表列表。
        来自:
        帮助文档
        Web应用防火墙(独享版)
        配置防护策略
        创建引用表
      • 与Kafka、RabbitMQ专享版的差异
        本章节介绍了分布式消息服务RocketMQ与Kafka和RabbitMQ的差异。 功能项 RocketMQ Kafka RabbitMQ 优先级队列 不支持 不支持 支持。建议优先级大小设置在010之间。 延迟队列 支持 不支持 不支持 死信队列 支持 不支持 支持 消息重试 支持 不支持 不支持 消费模式 支持客户端主动拉取和服务端推送两种方式 客户端主动拉取 支持客户端主动拉取以及服务端推送两种模式 广播消费 支持 支持 支持 消息回溯 支持 支持。Kafka支持按照offset和timestamp两种维度进行消息回溯。 不支持。RabbitMQ中消息一旦被确认消费就会被标记删除。 消息堆积 支持 支持。考虑吞吐因素,Kafka的堆积效率比RabbitMQ总体上要高。 支持 持久化 支持 支持 支持 消息追踪 支持 不支持 支持。RabbitMQ中可以采用Firehose或者rabbitmqtracing插件实现,但开启rabbitmqtracing插件会影响性能,建议只在定位问题过程中开启。 消息过滤 支持 支持 不支持,但可以自行封装。 多租户 支持 不支持 支持 多协议支持 兼容RocketMQ协议 只支持Kafka自定义协议。 RabbitMQ基于AMQP协议实现,同时支持MQTT、STOMP等协议。 跨语言支持 支持多语言的客户端 采用Scala和Java编写,支持多种语言的客户端。 采用Erlang编写,支持多种语言的客户端。 流量控制 待规划 支持client和user级别,通过主动设置可将流控作用于生产者或消费者。 RabbitMQ的流控基于CreditBased算法,是内部被动触发的保护机制,作用于生产者层面。 消息顺序性 单队列(queue)内有序 支持单分区(partition)级别的顺序性。 不支持。需要单线程发送、单线程消费并且不采用延迟队列、优先级队列等一些高级功能整体配合,才能实现消息有序。 安全机制 支持SSL认证 支持SSL、SASL身份认证和读写权限控制。 与Kafka相似 事务性消息 支持 支持 支持
        来自:
        帮助文档
        分布式消息服务RocketMQ
        产品简介
        与Kafka、RabbitMQ专享版的差异
      • 云审计
        本文介绍关系数据库PostgreSQL版在天翼云云审计中支持的相关功能。 操作场景 本服务现已对接天翼云云审计服务,云审计服务提供对各种云资源操作的记录和查询功能,用于支撑合规审计、安全分析、操作追踪和问题定位等场景,同时提供事件跟踪功能,将操作日志转储至对象存储实现永久保存。 云审计可提供的功能服务具体如下: 记录审计日志:支持用户通过管理控制台或API接口发起的操作,以及各服务内部自触发的操作。 审计日志查询:支持在管理控制台对7天内操作记录按照事件类型、事件来源、资源类型、筛选类型、操作用户和事件级别等多个维度进行组合查询。 使用限制 云审计服务本身免费,包括时间记录以及7天内时间的存储和检索。 用户通过云审计能查询到多久前的操作事件:7天。 用户操作后多久可以通过云审计查询到数据:5分钟。 其它限制请参考使用限制云审计。 关键操作列表 操作事件 创建实例、创建只读实例、恢复到新实例 重启实例 删除实例 节点扩容 磁盘扩容 规格变更 数据备份、删除备份 数据恢复 参数修改 主备切换 绑定公网IP 解绑公网IP 操作步骤 1. 开通云审计服务。 参见开通云审计服务云审计。 2. 查看云审计事件。 参见查看审计事件云审计。 3. 在事件列表中,选择事件来源为“数据库”,资源类型选择“关系数据库PostgreSQL版”,上方时间选择需要筛选的时间段。点击查询即可。 4. 在审计事件右侧点击详情,可以看到更详细的事件信息。 更多云审计相关使用说明和常见问题请参考用户指南、常见问题。
        来自:
        帮助文档
        关系数据库PostgreSQL版
        用户指南
        安全监控
        云审计
      • 使用CDN加速对网站的SEO有何影响
        本文解答使用CDN加速后网站的SEO排名出现波动的问题原因。 问题现象 使用CDN加速后网站的SEO排名出现波动。 问题原因 常见的搜索引擎爬虫有: 百度爬虫:Baiduspider;谷歌爬虫:Googlebot;360爬虫:360Spider;搜狗爬虫:Sogou News Spider;SOSO爬虫:Sosospider;雅虎爬虫:Yahoo! Slurp China;有道爬虫:YoudaoBot或者YodaoBot;MSN爬虫:msnbotmedia;必应爬虫:bingbot;一搜爬虫:YisouSpider;Alexa爬虫:iaarchiver;宜搜爬虫:EasouSpider;即刻爬虫:JikeSpider。 此类搜索引擎爬虫对站点的抓取方式和普通用户访问一样,只要普通用户能访问到的内容,它就可以抓取到。 正常情况(SEO排名提升) 1. 使用CDN之后,访问速度更快,对爬虫更友好,相对更容易被收录,SEO排名会上升。 2. 使用CDN之后,用户体验提升,访问人数增加,搜索引擎也就会更积极的爬取,SEO排名会上升。 异常情况(SEO排名下降) 1. 在CDN节点不稳定、或者受到恶意DDOS攻击、CC攻击出现更换IP地址的情况下。 2. 解析变更,由于DNS缓存问题或者爬虫本身的缓存问题,导致爬虫的访问到异常的旧节点IP,影响访问效果。 以上因素对SEO会有一定的影响,SEO排名可能会下降。 解决方案 1. 如发现是CDN节点不稳定,频繁出现更换IP导致的SEO排名下滑,可通过提交工单给天翼云客服,由其人工调整为稳定的CDN节点IP进行覆盖。 2. 如果发现是受到恶意攻击,频繁出现更换IP导致的SEO排名下滑,可通过天翼云官网购买安全加速类产品来应对攻击,保障业务稳定性,以恢复网站的SEO权重排名。 3. 因常规资源调整,而DNS或者爬虫本身缓存未过期,等待过期更新即可,如果是长期未更新的可反馈DNS、爬虫所有方处理。
        来自:
        帮助文档
        CDN加速
        故障排查
        使用CDN加速对网站的SEO有何影响
      • 设置人机识别策略
        本文将为您介绍边缘云WAF提供的人机识别策略,精准命中爬虫流量,拦截各类恶意爬虫,守护网站业务安全。 功能介绍 边缘云WAF提供的人机识别支持Cookie挑战、跳转挑战、人机挑战等一系列反爬能力,帮助客户及时且精准地识别并拦截虚假流量,保障网站不受恶意爬虫攻击。 注意 目前控制台尚未开放人机识别功能,如有防护需求请通过 前提条件 已开通Web应用防火墙(边缘云版)。 已新增域名并成功接入WAF,具体操作请见WAF接入。 开通Web应用防火墙(边缘云版)扩展服务Bot管理,支持使用Bot防护策略,具体请见Bot管理计费。 人机识别功能说明 Cookie基础检测 注意 客户端标识检测:客户端标识检测是人机识别第一检测策略,将先一步校验Cookie挑战、人机挑战以及跳转挑战下发的cookie个数和完整性。无客户端标识、客户端标识缺失、客户端标识解析失败三种情况都需要配置。 无客户端标识。即针对请求没有cookie的情况进行处理 处理动作:拦截/告警/跳转/放行 拦截:拦截请求 告警:仅记录请求 跳转:GET请求启动302跳转策略,POST请求启动307跳转策略 放行:不对该异常做处理,另外不会再校验其他的BOT防护规则 统计粒度:静态cookie/IP+UA/IP 触发条件:达到触发条件的请求将对其执行处理动作,并支持配置处理动作持续时长(触发规则后的惩罚时间) 客户端标识缺失。即针对请求带回cookie个数小于下发的个数(最多会下发四个)进行处理 客户端标识解析失败。即针对失败解析cookie的情况下进行处理 其他字段: 客户端标识过期时间:默认15天,单位天,最大值365天 白名单:即例外条件,符合条件的请求不进行功能检测
        来自:
        帮助文档
        Web应用防火墙(边缘云版)
        操作指导
        Bot管理
        设置人机识别策略
      • 缓存概述
        功能 说明 缓存过期时间指源站资源在CDN节点缓存的时长,达到预设时间,资源将会被CDN节点标记为缓存过期。您可以根据业务需求,按指定路径或文件名后缀等方式配置静态资源的缓存过期时间。 CDN节点从源站获取资源时,源站会返回响应状态码,针对4xx、5xx等特殊状态码,您可以在天翼云CDN上配置状态码过期时间。配置完成后,当客户端再次请求相同资源时,如状态码未过期,会由CDN直接响应特殊状态码,不会触发回源,减轻源站压力。 当客户希望在源站响应特殊状态码并携带相关缓存头的情况下,特殊状态码缓存规则按照源站相关缓存头生效,无相关缓存头时才按CDN设置的过期时间生效,则可以配置状态码过期时间(源站优先)功能。 缓存key是一个文件在CDN节点上缓存时唯一的身份ID,每个在CDN节点上缓存的文件都会对应一个缓存key。通过自定义缓存key,可以将原始URL形式不同但实际指向同一个文件的请求,缓存为同一份,从而提升缓存命中率,降低回源量。 跨域资源共享(CrossOrigin Resource Sharing,简写为CORS)简称跨域访问,是HTML5提供的标准跨域解决方案,允许Web应用服务器进行跨域访问控制,实现跨域数据的安全传输。当客户的业务需要跨域共享或者访问资源时,客户可以通过自定义HTTP响应头来实现。
        来自:
        帮助文档
        CDN加速
        用户指南
        域名管理
        缓存配置
        缓存概述
      • 开发一个DWS SQL作业
        本章节主要介绍DataArts Studio的开发一个DWS SQL作业流程。 介绍如何在数据开发模块上通过DWS SQL算子进行作业开发。 场景说明 本教程通过开发一个DWS作业来统计某门店的前一天销售额。 环境准备 已开通DWS服务,并创建DWS集群,为DWS SQL提供运行环境。 已开通CDM增量包,并创建CDM集群。 CDM集群创建时,需要注意:虚拟私有云、子网、安全组与DWS集群保持一致,确保网络互通。 创建DWS的数据连接 开发DWS SQL前,我们需要在“管理中心 > 数据连接”模块中建立一个到DWS的连接,数据连接名称为“dwslink”。 关键参数说明: 集群名:环境准备中创建的DWS集群名称。 绑定Agent:环境准备中创建的CDM集群。 创建数据库 在DWS中创建数据库,以“gaussdb”数据库为例。详情请参新建数据库进行操作。 创建数据表 在“gaussdb”数据库中创建数据表tradelog和tradereport。详情请参考如下建表脚本。 create schema storesales; set currentschema storesales; drop table if exists tradelog; CREATE TABLE tradelog ( sn VARCHAR(16), tradetime DATE, tradecount INTEGER(8) ); set currentschema storesales; drop table if exists tradereport; CREATE TABLE tradereport ( rq DATE, tradetotal INTEGER(8) ); 开发DWS SQL脚本 在“数据开发 > 脚本开发”模块中创建一个DWS SQL脚本,脚本名称为“dwssql”。在编辑器中输入SQL语句,通过SQL语句来实现统计前一天的销售额。 开发脚本 说明 上图中的脚本开发区为临时调试区,关闭脚本页签后,开发区的内容将丢失。您可以通过“提交”来保存并提交脚本版本。 数据连接:创建DWS的数据连接中已创建的连接。
        来自:
        帮助文档
        数据治理中心 DataArts Studio
        用户指南
        数据开发
        使用教程
        开发一个DWS SQL作业
      • 创建Flink Jar作业
        本章节介绍如何新建FlinkJar作业。 用户可以基于Flink的API进行二次开发,构建自己的应用Jar包并提交到DLI的队列运行,DLI完全兼容开源社区接口。此功能需要用户自己编写并构建应用Jar包,适合对Flink二次开发有一定了解,并对流计算处理复杂度要求较高的用户。 前提条件 确保已创建独享队列。创建DLI独享队列,在购买队列时,勾选“专属资源模式”即可。 创建Flink Jar作业,访问其他外部数据源时,如访问OpenTSDB、HBase、Kafka、DWS、RDS、CSS、CloudTable、DCS Redis、DDS Mongo等,需要先创建跨源连接,打通作业运行队列到外部数据源之间的网络。 当前Flink作业支持访问的外部数据源详情请参考跨源连接和跨源分析概述。 创建跨源连接操作请参见增强型跨源连接。 创建完跨源连接后,可以通过“队列管理”页面,单击“操作”列“更多”中的“测试地址连通性”,验证队列到外部数据源之间的网络连通是否正常。详细操作可以参考 测试地址连通性。 用户运行Flink Jar作业时,需要将二次开发的应用代码构建为Jar包,上传到已经创建的OBS桶中。并在DLI“数据管理”>“程序包管理”页面创建程序包,具体请参考 创建程序包。 说明 DLI不支持下载功能,如果需要更新已上传的数据文件,可以将本地文件更新后重新上传。 由于DLI服务端已经内置了Flink的依赖包,并且基于开源社区版本做了安全加固。为了避免依赖包兼容性问题或日志输出及转储问题,打包时请注意排除以下文件: a.系统内置的依赖包,或者在Maven或者Sbt构建工具中将scope设为provided b.日志配置文件(例如:“log4j.properties”或者“logback.xml”等) c.日志输出实现类JAR包(例如:log4j等)
        来自:
        帮助文档
        数据湖探索
        用户指南
        作业管理
        Flink作业管理
        创建Flink Jar作业
      • 使用全站加速后对网站SEO是否存在影响
        本文解答使用全站加速后网站的SEO排名出现波动的原因及解决方案。 问题现象 使用全站加速后网站的SEO排名出现波动。 问题原因 常见的搜索引擎爬虫有: 百度爬虫:Baiduspider;谷歌爬虫:Googlebot;360爬虫:360Spider;搜狗爬虫:Sogou News Spider;SOSO爬虫:Sosospider;雅虎爬虫:Yahoo! Slurp China;有道爬虫:YoudaoBot或者YodaoBot;MSN爬虫:msnbotmedia;必应爬虫:bingbot;一搜爬虫:YisouSpider;Alexa爬虫:iaarchiver;宜搜爬虫:EasouSpider;即刻爬虫:JikeSpider。 此类搜索引擎爬虫对站点的抓取方式和普通用户访问一样,只要普通用户能访问到的内容,它就可以抓取到。 正常情况(SEO排名提升) 使用全站加速之后,访问速度更快,对爬虫更友好,相对更容易被收录,SEO排名会上升。 使用全站加速之后,用户体验提升,访问人数增加,搜索引擎也就会更积极的爬取,SEO排名会上升。 异常情况(SEO排名下降) 在节点不稳定、或者受到恶意DDOS攻击、CC攻击出现更换IP地址的情况下。 解析变更,由于DNS缓存问题或者爬虫本身的缓存问题,导致爬虫访问到异常的旧节点IP,影响访问效果。 以上因素对SEO会有一定的影响,SEO排名可能会下降。 解决方案 如发现是节点不稳定,频繁出现更换IP导致的SEO排名下滑,可通过提交工单给天翼云客服,由其人工调整为稳定的节点IP进行覆盖。 如果发现是受到恶意攻击,频繁出现更换IP导致的SEO排名下滑,可通过天翼云官网购买安全加速类产品来应对攻击,保障业务稳定性,以恢复网站的SEO权重排名。 因常规资源调整,而DNS或者爬虫本身缓存未过期,等待过期更新即可,如果是长期未更新的可反馈DNS、爬虫所有方处理。
        来自:
        帮助文档
        全站加速
        常见问题
        其他类
        使用全站加速后对网站SEO是否存在影响
      • 产品定义
        本章节内容主要介绍数据库复制产品简介 数据库复制服务(简称DRS)是一种易用、稳定、高效、用于数据库实时迁移和数据库实时同步的云服务。 数据库复制服务围绕云数据库,降低了数据库之间数据流通的复杂性,有效减少数据传输成本。 数据库复制服务提供了实时迁移、备份迁移、实时同步等多种功能。 实时迁移 实时迁移是指在数据库复制服务器能够同时连通源数据库和目标数据库的情况下,只需要配置迁移的源、目标数据库实例及迁移对象即可完成整个数据迁移过程,再通过多项指标和数据的对比分析,帮助确定合适的业务割接时机,实现最小化业务中断的数据库迁移。 实时迁移支持多种网络迁移方式,如:公网网络、VPC网络、VPN网络和专线网络。通过多种网络链路,可快速实现跨云平台数据库迁移、云下数据库迁移上云或云上跨区域的数据库迁移等多种业务场景迁移。 特点:通过增量迁移技术,能够最大限度允许迁移过程中业务继续对外提供使用,有效的将业务系统中断时间和业务影响最小化,实现数据库平滑迁移上云,支持全部数据库对象的迁移。 备份迁移 由于安全原因,数据库的IP地址有时不能暴露在公网上,但是选择专线网络进行数据库迁移,成本又高。这种情况下,您可以选用数据库复制服务提供的备份迁移,通过将源数据库的数据导出成备份文件,并上传至对象存储服务,然后恢复到目标数据库。备份迁移可以帮助您在云服务不触碰源数据库的情况下,实现数据迁移。 常用场景:云下数据库迁移上云。 特点:云服务无需碰触源数据库,实现数据迁移。
        来自:
        帮助文档
        数据库复制
        产品简介
        产品定义
      • 恢复HDFS业务数据
        本章主要介绍翼MapReduce的恢复HDFS业务数据功能。 操作场景 在用户意外修改、删除或需要找回数据时,系统管理员对HDFS进行重大操作(如升级、重大数据调整等)后,系统数据出现异常或未达到预期结果,模块全部故障无法使用,或者迁移数据到新集群的场景中,需要对HDFS进行恢复数据操作。 系统管理员可以通过FusionInsight Manager创建恢复HDFS任务。只支持创建任务手动恢复数据。 须知 只支持进行数据备份时的系统版本与当前系统版本一致时的数据恢复。 当业务正常时需要恢复数据,建议手动备份最新管理数据后,再执行恢复数据操作。否则会丢失从备份时刻到恢复时刻之间的HDFS数据。 对于Yarn任务运行时使用的目录(例如“/tmp/logs”、“/tmp/archived”、“/tmp/hadoopyarn/staging”),不能进行HDFS恢复操作,否则进行恢复的Distcp任务会由于文件丢失而导致恢复失败。 对系统的影响 恢复过程中会停止用户认证,用户无法开始新的连接。 数据恢复后,会丢失从备份时刻到恢复时刻之间的数据。 数据恢复后,需要重新启动HDFS的上层应用。 前提条件 如果需要从远端HDFS恢复数据,需要准备备集群。如果主集群部署为安全模式,且主备集群不是由同一个FusionInsight Manager管理,则必须配置系统互信,请参见配置跨Manager集群互信。如果主集群部署为普通模式,则不需要配置互信。 主备集群必须已配置跨集群拷贝,请参见启用集群间拷贝功能。 主备集群上的时间必须一致,而且主备集群上的NTP服务必须使用同一个时间源。 检查HDFS备份文件保存路径。 停止HDFS的上层应用。 登录FusionInsight Manager,请参见登录管理系统。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        备份恢复管理
        恢复数据
        恢复HDFS业务数据
      • 恢复HBase业务数据
        本章主要介绍翼MapReduce的恢复HBase业务数据功能。 操作场景 在用户意外修改、删除或需要找回数据时,系统管理员对HBase进行重大操作(如升级、重大数据调整等)后,系统数据出现异常或未达到预期结果,模块全部故障无法使用,或者迁移数据到新集群的场景中,需要对HBase业务数据进行恢复数据操作。 系统管理员可以通过FusionInsight Manager创建恢复HBase任务并恢复数据。只支持创建任务手动恢复数据。 须知 只支持进行数据备份时的系统版本与当前系统版本一致时的数据恢复。 当业务正常时需要恢复数据,建议手动备份最新管理数据后,再执行恢复数据操作。否则会丢失从备份时刻到恢复时刻之间的HBase数据。 对系统的影响 恢复过程的数据还原阶段,系统会把待恢复的HBase表禁用,此时无法访问该表。还原阶段可能需要几分钟时间,此时HBase的上层应用无法正常工作。 恢复过程中会停止用户认证,用户无法开始新的连接。 数据恢复后,会丢失从备份时刻到恢复时刻之间的数据。 数据恢复后,需要重新启动HBase的上层应用。 前提条件 如果需要从远端HDFS恢复数据,需要准备备集群。如果主集群部署为安全模式,且主备集群不是由同一个FusionInsight Manager管理,则必须配置系统互信,请参见配置跨Manager集群互信。如果主集群部署为普通模式,则不需要配置互信。 主备集群必须已配置跨集群拷贝,请参见启用集群间拷贝功能。 主备集群上的时间必须一致,而且主备集群上的NTP服务必须使用同一个时间源。 检查HBase备份文件保存路径。 停止HBase的上层应用。 登录FusionInsight Manager,请参见登录管理系统。
        来自:
        帮助文档
        翼MapReduce
        用户指南
        FusionInsight Manager操作指导(适用于3.x)
        备份恢复管理
        恢复数据
        恢复HBase业务数据
      • Redis3.0命令
        本章节主要介绍DCS Redis3.0命令的兼容性,包括支持命令列表,禁用命令列表。命令的具体详细语法,请前往Redis官方网站查看。 DCS Redis3.0基于开源3.0.7版本进行开发,兼容开源的协议和命令。 本章节主要介绍DCS Redis3.0命令的兼容性,包括支持命令列表,禁用命令列表,以及不支持的高版本Redis脚本和命令列表,以及命令使用限制说明。命令的具体详细语法,请前往Redis官方网站查看。 DCS Redis缓存实例支持Redis的绝大部分命令,具体支持的命令,请参考Redis3.0命令,任何兼容Redis协议的客户端都可以访问DCS。 因安全原因,部分Redis命令在分布式缓存服务中被禁用,具体请见Redis3.0禁用的命令。 DCS集群实例支持多个key,但不支持跨slot访问的Redis命令列表,如实例受限使用命令所示。 部分Redis命令使用时有限制,具体请见部分命令使用限制。 Redis3.0支持的命令 以下列出了Redis3.0实例支持的命令。 说明 Redis高版本的命令,在低版本中不被兼容。判断DCS Redis是否支持某个命令,可通过在Rediscli执行该命令,如果得到(error)ERR unknown command ‘xxx’的提示,则说明不支持该命令。 如果是Proxy集群实例,不支持表格中以下命令: “List”类型中的BLPOP、BRPOP、BRPOPLRUSH命令。 “Server”类型的CLIENT相关命令,包括CLIENT KILL、CLIENT GETNAME、CLIENT LIST、CLIENT SETNAME、CLIENT PAUSE、CLIENT REPLY。 “Server”类型的MONITOR命令。 如果是比较旧的Proxy集群实例,不支持“Key”类型中的RANDOMKE命令。 Redis3.0 支持命令清单 [Keys](
        来自:
        帮助文档
        分布式缓存服务Redis版
        产品简介
        开源命令兼容性
        Redis3.0命令
      • 1
      • ...
      • 301
      • 302
      • 303
      • 304
      • 305
      • ...
      • 353
      跳转至
      推荐热词
      天翼云运维管理审计系统天翼云云服务平台云服务备份云日志服务应用运维管理云手机云电脑天翼云云hbase数据库电信云大数据saas服务电信云大数据paas服务轻量型云主机天翼云客户服务电话应用编排服务天翼云云安全解决方案云服务总线CSB天翼云服务器配置天翼云联邦学习产品天翼云云安全天翼云企业上云解决方案天翼云产品天翼云视频云存储

      天翼云最新活动

      云聚517 · 好价翼起拼

      爆款云主机低至25.83元/年,参与拼团享更多优惠,拼成得额外优惠券

      安全隔离版OpenClaw

      OpenClaw云服务器专属“龙虾“套餐低至1.5折起

      聚力AI赋能 天翼云大模型专项

      大模型特惠专区·Token Plan 轻享包低至9.9元起

      青云志云端助力计划

      一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云

      企业出海解决方案

      助力您的业务扬帆出海,通达全球!

      天翼云信创专区

      “一云多芯、一云多态”,国产化软件全面适配,国产操作系统及硬件芯片支持丰富

      中小企业服务商合作专区

      国家云助力中小企业腾飞,高额上云补贴重磅上线

      云上钜惠

      爆款云主机全场特惠,2核4G只要1.8折起!

      产品推荐

      弹性云主机 ECS

      多活容灾服务 MDR

      镜像服务 IMS

      天翼云CTyunOS系统

      公共算力服务

      星辰TokenHub运营服务平台

      应用托管

      科研助手

      知识库问答

      推荐文档

      安装网页防篡改集中管理中心

      Telnet/SSH/Rlogin访问

      性能类问题

      变更备案

      概念

      页面顶部

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 息壤智算平台
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 天翼云国际站
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2026 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号