- 博客(11)
- 资源 (8)
- 收藏
- 关注
转载 Spring cloud Feign正确的使用方法和性能优化注意事项
Feign正确的使用方法和性能优化注意事项1. feign自定义Configuration和root 容器有效隔离。用@Configuration注解 不能在主@ComponentScan (or @SpringBootApplication)范围内,从其包名上分离 注意避免包扫描重叠,最好的方法是明确的指定包名2. Spring Cloud Netflix 提供了默认的Bean类型...
2018-07-25 15:37:15 5113
转载 Java 高并发解决方案(电商的秒杀和抢购)
电商的秒杀和抢购,对我们来说,都不是一个陌生的东西。然而,从技术的角度来说,这对于Web系统是一个巨大的考验。当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要。这次我们会关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因? 一、大规模并发带来的挑战 在过去的工作中,我曾经面对过5w每秒的高并发秒杀功能,在这个过程中,整...
2018-07-25 14:08:08 55089 12
原创 Java mongodb 多主键(group)mapReduce
业务需求:统计商户下,专题,用户统计下单数量话不多说,直接上代码@Autowiredprivate MongoTemplate mongoTemplate;// 使用的是spring 的mongodb @Testpublic void test(){ //Query query = Query.query(new Criteria()); String map = "...
2018-07-31 15:17:26 1306
原创 数据库分库分表
分库分表 一种是按照不同的表(或者Schema)来切分到不同的数据库(主机)之上,这种切可以称之为数据的垂直(纵向)切分另外一种则是根据表中的数据的逻辑关系,将同一个表中的数据按照某种条件拆分到多台数据库(主机)上面,这种切分称之为数据的水平(横向)切分。 垂直切分的优点: 1) 拆分后业务清晰,拆分规则明确。 2) 系统之间整合或扩展容易。 3) 数据维护简单。...
2018-07-26 10:44:59 217
原创 ElasticSearch性能优化
ElasticSearch性能优化1) 防止脑裂discovery.zen.minimum_master_modes: 50% 节点最小数2) 设置memory_lock来锁定进程的物理内存地址 bootstrap.memory_lock: true 允许 JVM 锁住内存,禁止操作系统交换出去3) 设置分片数如果分片数过少或过多,都会导致检索比较慢。 分片数过多会导...
2018-07-25 19:59:31 358
原创 Redis持久化的几种方式
1.RDB RDB持久化:(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化)RDB持久化是指在指定的时间间隔内将内存中的数据集快照写入磁盘,实际操作过程是fork一个子进程,先将数据集写入临时文件,写入成功后,再替换之前的文件,用二进制压缩存储。 2.AOF AOF持久化:(append only file)持久化(原理是将Reids...
2018-07-25 19:58:22 153
转载 Spring cloud Hystrix 参数详解
hystrix.command.default和hystrix.threadpool.default中的default为默认CommandKeyCommand PropertiesExecution相关的属性的配置: hystrix.command.default.execution.isolation.strategy 隔离策略,默认是Thread, 可选Thread|Semaph...
2018-07-25 15:22:14 202 1
转载 Spring cloud Zuul 参数调优
zuul 参数调优适用版本:spring-boot: 1.4.x.RELEASEspring-cloud:Camden.SR3Hystrix: 1.5.6spring-boot-tomcat 优化参数:主要只有2个,最大和最小worker线程: server.tomcat.max-threads=128 # Maximum amount of worker thread...
2018-07-25 15:20:04 10245
转载 Hystrix semaphore和thread隔离策略的区别及配置参考
Hystrix semaphore和thread隔离策略的区别及配置参考通用设置说明Hystrix所有的配置都是hystrix.command.[HystrixCommandKey]开头,其中[HystrixCommandKey]是可变的,默认是default,即hystrix.command.default;另外Hystrix内置了默认参数,如果没有配置Hystrix属性,默认参数就会被...
2018-07-25 15:17:48 9716 2
原创 JDBC如何开启事务
先看看一个标准的JDBC例子伪代码: Connection conn = DriverManager.getConnection(...);try{ con.setAutoCommit(false); Statement stmt = con.createStatement(); //1 or more queries or updates ...
2018-07-25 15:14:54 20718 1
转载 分布式限流的解决方案
业务背景介绍 对于web应用的限流,光看标题,似乎过于抽象,难以理解,那我们还是以具体的某一个应用场景来引入这个话题吧。 在日常生活中,我们肯定收到过不少不少这样的短信,“双11约吗?,千款….”,“您有幸获得唱读卡,赶快戳链接…”。这种类型的短信是属于推广性质的短信。为什么我要说这个呢?听我慢慢道来。 一般而言,对于推广营销类短信,它们针对某一群体(譬如注册会员)进行定点推送,有时这...
2018-07-25 14:31:56 12997 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人