package com.dhgate.controller;
import com.dhgate.remoteInterface.IFeignService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.nio.charset.StandardCharsets;
import java.util.Random;
@RestController
public class FeignClientController {
private static final Logger log = LoggerFactory.getLogger(FeignClientController.class);
@Autowired
private IFeignService clientService;
// http://localhost:7997/feignClient/feignClientTimeOut?timeout=40
// http://172.22.11.11:30303/feignClient/feignClientTimeOut?timeout=40
@RequestMapping("/feignClient/feignClientTimeOut")
public String feignClientTimeOut(String timeout) {
try {
log.info("FeignClientController.feignClientTimeOut--->测试纯feign调用且经过apsaras的序列化和反序列化过程 start,timeout=" + timeout);
return clientService.feignClientTimeOut(timeout);
} catch (Exception e) {
log.error("FeignClientController.feignClientTimeOut--->测试纯feign调用且经过apsaras的序列化和反序列化过程,error", e);
}
return "failure";
}
// 通过feign调用,且经过apsaras的序列化和反序列化过程
// http://localhost:7997/feignClient/feignClientTimeOut2?parameter=40
// http://172.22.11.11:30303/feignClient/feignClientTimeOut2?timeout=40
@RequestMapping("/feignClient/feignClientTimeOut2")
public String feignClientTimeOut2(String timeout) {
try {
log.info("FeignClientController.feignClientTimeOut2--->测试纯feign调用且不经过apsaras的序列化和反序列化过程 start,timeout=" + timeout);
return clientService.feignClientTimeOut2(timeout);
} catch (Exception e) {
log.error("FeignClientController.feignClientTimeOut2--->测试纯feign调用且不经过apsaras的序列化和反序列化过程,error", e);
}
return "failure";
}
/**
* 日志同步、异步输出性能对比测试接口
*
* @param timeout
* @return
*/
// http://localhost:7997/feignClient/logbackAsyncAppender?timeout=4
@RequestMapping("/feignClient/logbackAsyncAppender")
public String testLogbackAsyncAppender(String timeout) throws InterruptedException {
System.out.println("FeignClientController.logbackAsyncAppender--->测试日志同步和异步打印的性能 start");
long startTime = System.currentTimeMillis();
// 日志级别优先级:ERROR > WARN > INFO > DEBUG > TRACE
for (int i = 0; i < 500; i++) {
log.trace("测试日志同步和异步打印的性能trace,timeout=" + Integer.valueOf(timeout) * (75 + 25) + (int) (1 + Math.random() * (10000 - 1 + 1)));
log.debug("测试日志同步和异步打印的性能debug,timeout=" + Integer.valueOf(timeout) * (75 + 25) + (int) (1 + Math.random() * (10000 - 1 + 1)));
log.info("测试日志同步和异步打印的性能info,timeout=" + Integer.valueOf(timeout) * (75 + 25) + (int) (1 + Math.random() * (10000 - 1 + 1)));
log.warn("测试日志同步和异步打印的性能warn,timeout=" + Integer.valueOf(timeout) * (75 + 25) + (int) (1 + Math.random() * (10000 - 1 + 1)));
log.error("测试日志同步和异步打印的性能error,timeout=" + Integer.valueOf(timeout) * (75 + 25) + (int) (1 + Math.random() * (10000 - 1 + 1)));
}
long endTime = System.currentTimeMillis();
System.out.println("FeignClientController.logbackAsyncAppender--->测试日志同步和异步打印的性能 end,耗时:" + (endTime - startTime) + "毫秒。");
return clientService.feignClientLogbackAsyncAppender(timeout);
}
public static String getRandomString(int length) {
String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random rd = new Random();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; i++) {
int number = rd.nextInt(str.length());
sb.append(str.charAt(number));
}
return sb.toString();
}
public static void main(String[] args) {
// 1kB = 1024B
System.out.println(getRandomString(2048));
String length_1 = "\"GET /prod/node/itemCheck.do?client=wap&language=en&itemCode=584422394&seoName=sapphire-short-pixie-lace-wigs-pixie-cut&domain=en&f=bm%7CCriteo%7CRMKT%7C2117%7C286756%7C584422394%7C%7C130001001%7CUK%7C%7CMobile_Web%7C%7C&url_r=https%253A%252F%252Fads.eu.criteo.com%252Fdelivery%252Fr%252Fafr.php%253Fz%253DYdyh4AAK5HIJHUVqAAkBTM4PtKpqo7-H1SIcEw%2526u%253D%25257C1A1LFdKtEFACqGMriICn1D%25252BjoN8TQm0G4Wma5nW4tDA%25253D%2520%25257C%2526c1%253Ds9Ouqadr9PMXEEf9T3KSp2NRawDp88DG_Cp4ywXMF-aXNcCcvm46KlhR4moY6ZInDPA4-yZ2KC85SdX_ZseciyMu3an17eQrvqv_PaUqHgQE2vOmqBbJlzFhj4N5mLbb2-KzxEt0HPro0Otf3lW%2520OxFQzJjih479yzOehuAvocb4I6GUMoT0p31_8Rx4-5ssRp4PLW3JNfKmJHH-6DAO-MMMQuUGqbyZLYuKT9QarM87GKVb1nYeWdh-ln2eYxzPpy1-Wi1HI4gateKmdYZORU-tgoXTu21lLlKD6KVf1k2n7p%25202DFq1KUDjZlWGknmCVo6vgABkb64O_nX4c09DVDzu-2PFFAkqRcLuqc3fY-aZJUnIt_KwAjJWQoReEJazM4qA4qDo_XiRu2daaKRwzxsiSXmG4cbqLDr6Wal7fLo7pAfneU8gbx8aT67h0K5CXS_Cn7VBC%2520aF3wtAeu9jlNF_02_c-oF_YynjKBD7X1VAaN9foBR4ln-Wg%2526ct0%253Dhttps%253A%252F%252Fadclick.g.doubleclick.net%252Faclk%25253Fsa%25253DL%252526ai%25253DCxTQx4KHcYfLIK-qK9fgPzIKk4APkj9KxXKeS4YiIAcCNtw%2520EQASAAYLuGgIDYCoIBF2NhLXB1Yi04NTQ3MjMyMzg1MDYwNjYyoAG91IjrA8gBCakCAwkgg97Atj7gAgCoAwGqBLICT9CX35MZS2eVZjfpPeuoyPoO-UXxdv8---0YtOMmfcMInt1R2t0z_-ARtWVn-snt%2520BBLQUhk34d8kIrGLRzPaqN7IFjIFRilc_xcDdQvKTO7PRZzEulKaSc8_1rsr1sJSKGoynu1bUjaPXQqkyazMhfszmkY_zfNm2btlh4LKzRIEo08ciT86ZFcgmOqAOwhEgNh0QSWC-WMTi2jclmAdrCbj8r%2520mfgRNQiWfWCeyt2KxrNWR4_CibLPBaQFnw6MwE27_cOQFVtQredwlztCrc7ZPewfbGI9MMTsDyY6GcoK0yPK0jRFG5kdFCPMYXHA1dd4NRsGxqCBaj3ttHUwg__dDmuwq2swd06dsVMvGfzdA6Ao0ZNru3%2520rZTuKpQYqfh7VzI_nR67Ai421dcOQs1wtgPA4AQBgAanxKqs-I_Kxp0BoAYhiAcBkAcCqAemvhuoB5bYG6gHqpuxAqgH35-xAtgHANIIBwiAgIAQEAL6CwIIAYAMAdAVAYAXAQ%252526num%25253D1%252526cid%25253DC%2520AMSeQClSFh3jsHzhVfN9vm4dLcSe_w6JThdDi9wnsp2QCuM6J2vMm_gMjvklBYPvp2Xr_bNSoY7KH88gBqB1k_q0_0v3Q7PsZe9ty--kg4YmNB0xDVo70xZHTqbrly-TQveJviqospjuiX47f9_VCX04uo%2520vByqyBKxa_Js%252526sig%25253DAOD64_2PF9yB6YAppSKzP5FU8f16T-BrzA%252526client%25253Dca-pub-8547232385060662%252526adurl%25253D&url_f=bm%257CCriteo%257CRMKT%257C2117%257C286756%257C584422394%257C%257C130001001%257CUK%257C%257CMobile_Web%257C%257C HTTP/1.1\" 400 0 \"https://ads.eu.criteo.com/delivery/r/afr.php?z=Ydyh4AAK5HIJHUVqAAkBTM4PtKpqo7-H1SIcEw&u=%7C1A1LFdKtEFACqGMriICn1D%2BjoN8TQm0G4Wma5nW4tDA%3D %7C&c1=s9Ouqadr9PMXEEf9T3KSp2NRawDp88DG_Cp4ywXMF-aXNcCcvm46KlhR4moY6ZInDPA4-yZ2KC85SdX_ZseciyMu3an17eQrvqv_PaUqHgQE2vOmqBbJlzFhj4N5mLbb2-KzxEt0HPro0Otf3lW OxFQzJjih479yzOehuAvocb4I6GUMoT0p31_8Rx4-5ssRp4PLW3JNfKmJHH-6DAO-MMMQuUGqbyZLYuKT9QarM87GKVb1nYeWdh-ln2eYxzPpy1-Wi1HI4gateKmdYZORU-tgoXTu21lLlKD6KVf1k2n7p 2DFq1KUDjZlWGknmCVo6vgABkb64O_nX4c09DVDzu-2PFFAkqRcLuqc3fY-aZJUnIt_KwAjJWQoReEJazM4qA4qDo_XiRu2daaKRwzxsiSXmG4cbqLDr6Wal7fLo7pAfneU8gbx8aT67h0K5CXS_Cn7VBC aF3wtAeu9jlNF_02_c-oF_YynjKBD7X1VAaN9foBR4ln-Wg&ct0=https://adclick.g.doubleclick.net/aclk%3Fsa%3DL%26ai%3DCxTQx4KHcYfLIK-qK9fgPzIKk4APkj9KxXKeS4YiIAcCNtw EQASAAYLuGgIDYCoIBF2NhLXB1Yi04NTQ3MjMyMzg1MDYwNjYyoAG91IjrA8gBCakCAwkgg97Atj7gAgCoAwGqBLICT9CX35MZS2eVZjfpPeuoyPoO-UXxdv8---0YtOMmfcMInt1R2t0z_-ARtWVn-snt BBLQUhk34d8kIrGLRzPaqN7IFjIFRilc_xcDdQvKTO7PRZzEulKaSc8_1rsr1sJSKGoynu1bUjaPXQqkyazMhfszmkY_zfNm2btlh4LKzRIEo08ciT86ZFcgmOqAOwhEgNh0QSWC-WMTi2jclmAdrCbj8r mfgRNQiWfWCeyt2KxrNWR4_CibLPBaQFnw6MwE27_cOQFVtQredwlztCrc7ZPewfbGI9MMTsDyY6GcoK0yPK0jRFG5kdFCPMYXHA1dd4NRsGxqCBaj3ttHUwg__dDmuwq2swd06dsVMvGfzdA6Ao0ZNru3 rZTuKpQYqfh7VzI_nR67Ai421dcOQs1wtgPA4AQBgAanxKqs-I_Kxp0BoAYhiAcBkAcCqAemvhuoB5bYG6gHqpuxAqgH35-xAtgHANI
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
目前所有的日志记录方式采用的都是同步的方式,即直接将日志写入文件。每次日志输出到文件都会进行一次磁盘IO,在多应用的时候这种效果会导致一定的线程运行延迟,所以可以采用异步的方式处理。 采用异步写日志的方式,通过不让主线程去写日志文件而减少磁盘IO,避免并发下造成线程阻塞,从而减少不必要的性能损耗。
资源详情
资源评论
资源推荐
收起资源包目录
springboot日志框架logback异步输出配置 (301个子文件)
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.gitignore 0B
dhgate-feignclient-web.iml 27KB
dhgate-feign-server.iml 26KB
dhgate-feign-api.iml 24KB
dhgate-feign-service.iml 18KB
FeignClientController.java 11KB
MetricEndpoint.java 6KB
SentinelConfiguration.java 3KB
MetricsExportAutoConfiguration.java 3KB
FeignController.java 3KB
FeignRetryController.java 3KB
HttpMaxHeaderSizeController.java 1KB
FeignService.java 1KB
ConfigCenter.java 1KB
ConfigCenter.java 1KB
FeignRetryerController.java 920B
FeignRetryerService.java 798B
User.java 614B
FeignServerStartupApplication.java 586B
FeignClientWebStartupApplication.java 585B
ClientServiceFeignConfig.java 410B
IFeignService.java 402B
AliveController.java 377B
workspace.xml 48KB
logback-spring.xml 13KB
uiDesigner.xml 9KB
pom.xml 8KB
pom.xml 5KB
logback-spring.xml 4KB
pom.xml 3KB
jarRepositories.xml 1KB
modules.xml 1KB
compiler.xml 974B
encodings.xml 970B
misc.xml 826B
Maven__com_google_guava_listenablefuture_9999_0_empty_to_avoid_conflict_with_guava.xml 823B
Maven__com_alibaba_cloud_spring_cloud_starter_alibaba_nacos_config_2_2_3_RELEASE.xml 806B
Maven__org_springframework_cloud_spring_cloud_kubernetes_loadbalancer_1_1_7_RELEASE.xml 803B
Maven__org_springframework_boot_spring_boot_configuration_processor_2_3_6_RELEASE.xml 792B
Maven__org_springframework_boot_spring_boot_actuator_autoconfigure_2_3_6_RELEASE.xml 785B
Maven__org_springframework_cloud_spring_cloud_kubernetes_discovery_1_1_7_RELEASE.xml 782B
Maven__org_springframework_cloud_spring_cloud_starter_loadbalancer_2_2_6_RELEASE.xml 782B
Maven__org_jboss_spec_javax_annotation_jboss_annotations_api_1_3_spec_2_0_1_Final.xml 771B
Maven__org_springframework_cloud_spring_cloud_starter_kubernetes_1_1_7_RELEASE.xml 768B
Maven__org_springframework_cloud_spring_cloud_starter_openfeign_2_2_6_RELEASE.xml 761B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_3_6_RELEASE.xml 757B
Maven__org_springframework_boot_spring_boot_starter_validation_2_3_6_RELEASE.xml 757B
pom.xml 757B
Maven__com_dhgate_springcloud_dhgate_springcloud_starter_1_0_0_SNAPSHOT.xml 755B
Maven__org_springframework_cloud_spring_cloud_netflix_archaius_2_2_6_RELEASE.xml 754B
Maven__org_jboss_spec_javax_websocket_jboss_websocket_api_1_1_spec_2_0_0_Final.xml 753B
Maven__com_dhgate_dhgate_apsaras_client_4_11_0_1_19_dams_SNAPSHOT.xml 749B
Maven__org_springframework_cloud_spring_cloud_kubernetes_core_1_1_7_RELEASE.xml 747B
Maven__org_springframework_boot_spring_boot_starter_undertow_2_3_6_RELEASE.xml 743B
Maven__org_springframework_boot_spring_boot_starter_actuator_2_3_6_RELEASE.xml 743B
Maven__org_springframework_cloud_spring_cloud_openfeign_core_2_2_6_RELEASE.xml 740B
Maven__org_springframework_cloud_spring_cloud_netflix_ribbon_2_2_6_RELEASE.xml 740B
Maven__org_springframework_boot_spring_boot_starter_logging_2_3_6_RELEASE.xml 736B
Maven__com_fasterxml_jackson_module_jackson_module_jaxb_annotations_2_11_3.xml 731B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_3_6_RELEASE.xml 729B
Maven__org_springframework_cloud_spring_cloud_loadbalancer_2_2_6_RELEASE.xml 726B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_11_3.xml 724B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_3_6_RELEASE.xml 722B
Maven__org_springframework_boot_spring_boot_starter_cache_2_3_6_RELEASE.xml 722B
Maven__org_springframework_security_spring_security_crypto_5_3_5_RELEASE.xml 717B
Maven__org_springframework_boot_spring_boot_starter_json_2_3_6_RELEASE.xml 715B
Maven__org_springframework_boot_spring_boot_starter_test_2_3_6_RELEASE.xml 715B
Maven__org_springframework_plugin_spring_plugin_metadata_2_0_0_RELEASE.xml 709B
Maven__org_springframework_boot_spring_boot_starter_web_2_3_6_RELEASE.xml 708B
Maven__io_fabric8_kubernetes_model_admissionregistration_4_10_3.xml 708B
Maven__org_springframework_boot_spring_boot_starter_aop_2_3_6_RELEASE.xml 708B
Maven__com_github_xiaoymin_knife4j_spring_boot_autoconfigure_2_0_8.xml 702B
Maven__com_github_xiaoymin_knife4j_micro_spring_boot_starter_2_0_8.xml 702B
Maven__com_dhgate_springcloud_dhgate_small_tool_1_0_1_dams_SNAPSHOT.xml 700B
Maven__org_springframework_security_spring_security_rsa_1_0_9_RELEASE.xml 696B
Project_Default.xml 692B
Maven__com_fasterxml_jackson_dataformat_jackson_dataformat_yaml_2_11_3.xml 691B
Maven__org_springframework_cloud_spring_cloud_context_2_2_6_RELEASE.xml 691B
Maven__org_springframework_cloud_spring_cloud_commons_2_2_6_RELEASE.xml 691B
Maven__org_springframework_cloud_spring_cloud_starter_2_2_6_RELEASE.xml 691B
Maven__org_springframework_spring_context_support_5_2_11_RELEASE.xml 688B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 688B
Maven__org_springframework_boot_spring_boot_actuator_2_3_6_RELEASE.xml 687B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_11_3.xml 683B
Maven__org_springframework_plugin_spring_plugin_core_2_0_0_RELEASE.xml 681B
Maven__org_springframework_boot_spring_boot_starter_2_3_6_RELEASE.xml 680B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_11_3.xml 669B
Maven__org_hibernate_validator_hibernate_validator_6_1_6_Final.xml 662B
Maven__org_springframework_boot_spring_boot_test_2_3_6_RELEASE.xml 659B
Maven__io_micrometer_micrometer_registry_prometheus_1_5_7.xml 657B
Maven__org_wildfly_client_wildfly_client_config_1_0_1_Final.xml 656B
共 301 条
- 1
- 2
- 3
- 4
5忘初心
- 粉丝: 267
- 资源: 17
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- QuestionTwo.java
- QuestionOne.java
- OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR).rar
- 简历-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- 南京邮电大学数学实验:熟练掌握 Matlab 软件的基本命令和操作
- 简历-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- 2017校招真题校园招聘真题算法题(37道)Python源码.zip
- 基于单片机protues仿真的多功能自动饮水机系统设计(仿真图、源代码、演示视频)
- 论文《一种修复流程挖掘事件日志中缺失活动标签的深度学习方法》翻译
- 智慧电厂相关资料发电控制的方式
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论10