zxcodestudy

github:https://github.com/ZhouXing244266602

DDD领域驱动设计

一. 什么是DDD 2004年Eric Evans 发表Domain-Driven Design –Tackling Complexity in the Heart of Software (领域驱动设计),简称Evans DDD。Evans DDD是一套综合软件系统分析和设计的面向对象建模方...

2018-08-06 00:35:10

阅读数 4434

评论数 0

ES动态映射导致的线上疑案

一. 事件背景 在凤巢的推广平台中,有对物料进行不同属性进行筛选排序的需求,由于物料的量级很大(单用户千万级物料),并且有根据物料关键词搜索和某些特定值搜索,所以需要一个全文检索的搜索引擎来满足物料筛选的需求。ElasticSearch是一个基于Lucene的搜索服务器,它提供了一个分布式多用户...

2018-06-28 08:46:58

阅读数 670

评论数 2

数据库常见死锁原因及处理

数据库和操作系统一样,是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。加锁是实现数据库并发控制的一个非常重要的技术。在实际应用中经常会遇到的与锁相关的异常情况,当两个事...

2017-07-08 10:22:40

阅读数 46400

评论数 6

并发插入引发的死锁问题排查

一.业务背景我们现在的业务是一款数据产品,有不少实时计算和爬取来的数据都汇总到大数据仓库、数据挖掘平台ODPS上。然后应用在读取这些数据时,这些数据会先导入到并发读能力更强,适合结构查询的mysql上。数据端开发的同学在跑定时任务时, tps比较高,于是出现了一些线上问题:在开发过程中发现对某一包...

2017-06-16 23:52:38

阅读数 11077

评论数 1

高并发下的抽奖优化

一. 项目思考由于项目发起了一个抽奖活动,发起活动之前给所有用户发短信提示他们购买了我们的产品有抽奖权益。然后用户上来进入抽奖页面点击爆增,过了一会儿页面就打不开了。后面查看了下各种日志,发现了瓶颈在数据库,由于读写冲突严重,导致响应变慢,有不少连接都超时了。后面看到监控和日志留下的数据,发现负责...

2016-12-20 00:17:58

阅读数 8794

评论数 4

收益发放资金回流链路系统的开发

一.开发背景在项目成功后会有个收益发放的流程,把校验好的总金额核算无误后,批量打款给用户的流程。因为整体流程比较长,用文档记录下来整个过程二.链路介绍1.sftp账单明细核对系统(1)sftp业务流程图 (2)sftp技术流程图 (3)定时任务体系: 定时任务a:扫描正在执行中的项目...

2016-12-12 00:19:38

阅读数 1038

评论数 0

一次线上OOM过程的排查

一.出现问题在前一段时间日常环境很不稳定,前端调用mtop接口会出网络异常或服务不存在的异常。查询了服务器上的HSF会有偶尔挂死的情况,服务器上的接口服务都不可用。于是我们对服务器上的状况进行了排查。二.排查问题的过程在这次的问题排查主要是围绕JVM的内存使用情况,生成对象分布情况以及GC情况来讨...

2016-11-23 00:07:59

阅读数 3199

评论数 0

记一次KeyCenter中遇到Invalid signature format问题的解决过程

一次刨源码解决验签问题的过程与体会

2016-11-10 14:52:37

阅读数 2200

评论数 0

Hive原理分析

Hive背景介绍 Hive是构建在Hadoop上的数据仓库软件框架,支持使用SQL来读,写和管理大规模数据集合。Hive入门非常简单,功能非常强大,所以非常流行。通常来说,Hive只支持数据查询和加载,但后面的版本也支持了插入,更新和删除以及流式api。Hive具有目前Hadoop上最丰富最全...

2019-05-19 16:51:01

阅读数 4

评论数 0

高并发编程知识体系

1.问题 1、什么是线程的交互方式? 2、如何区分线程的同步/异步,阻塞/非阻塞? 3、什么是线程安全,如何做到线程安全? 4、如何区分并发模型? 5、何谓响应式编程? 6、操作系统如何调度多线程? 2.关键词 同步,异步,阻塞,非阻塞,并行,并发,临界区,竞争条件,指令重排,锁,...

2019-04-14 13:11:11

阅读数 57

评论数 0

通过MySQL存储原理来分析排序和锁

先抛出几个问题 1.为什么不建议使用订单号作为主键? 2.为什么要在需要排序的字段上加索引? 3.for update 的记录不存在会导致锁住全表? 4.redolog 和 binlog 有什么区别? 5.MySQL 如何回滚一条 sql ? 6.char(50) 和 varchar(...

2019-04-14 12:03:31

阅读数 50

评论数 0

分布式架构知识体系

1.问题 1、何为分布式何为微服务? 2、为什么需要分布式? 3、分布式核心理论基础,节点、网络、时间、顺序,一致性? 4、分布式是系统有哪些设计模式? 5、分布式有哪些类型? 6、如何实现分布式? 2.关键词 节点,时间,一致性,CAP,ACID,BASE,P2P,机器伸缩,网络变...

2019-03-31 21:48:49

阅读数 40

评论数 0

Spring Boot引起的“堆外内存泄漏”排查及经验总结

背景 为了更好地实现对项目的管理,我们将组内一个项目迁移到MDP框架(基于Spring Boot),随后我们就发现系统会频繁报出Swap区域使用量过高的异常。笔者被叫去帮忙查看原因,发现配置了4G堆内内存,但是实际使用的物理内存竟然高达7G,确实不正常。JVM参数配置是“-XX:Metaspac...

2019-02-24 11:21:03

阅读数 169

评论数 0

Hadoop工作原理浅析

Hadoop是Apache软件基金会所开发的并行计算框架与分布式文件系统。最核心的模块包括Hadoop Common、HDFS与MapReduce。 HDFS HDFS是Hadoop分布式文件系统(Hadoop Distributed File System)的缩写,为分布式计算存储提供了底层...

2019-01-27 20:57:33

阅读数 101

评论数 0

微服务设计指南

2018年,每个人都听说过微服务。但你知道怎么设计吗?   微服务是当今软件工程师的一个热门话题。让我们了解如何使用微服务架构风格构建真正模块化、业务敏捷的IT系统。   一、微服务概念   微服务体系结构由轻量级、松散耦合的服务集合组成。每个服务都实现了单个业务功能。理想情况下,这些...

2018-12-15 22:13:58

阅读数 47

评论数 0

【基本功】不可不说的Java“锁”事

前言 Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK 8)、使用场景进行举例,为读者介绍主流锁的知识点,以及不同的锁的适用场景。 Java中往往是按照是否含有某一特性来定义锁,我们通过特性将锁进行分组归类,再...

2018-11-24 21:42:51

阅读数 52

评论数 0

Kafka原理介绍

一. Kafka的基本介绍 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并...

2018-10-27 11:46:00

阅读数 125

评论数 0

Flume概念与原理

一.什么是Flume?        apache Flume 是一个从可以收集例如日志,事件等数据资源,并将这些数量庞大的数据从各项数据资源中集中起来存储的工具/服务,或者数集中机制。flume具有高可用,分布式,配置工具,其设计的原理也是基于将数据流,如日志数据从各种网站服务器上汇集起来存储...

2018-09-09 17:55:32

阅读数 123

评论数 0

Spark工作原理

Apache Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架,最初在2009年由加州大学伯克利分校的AMPLab开发,并于2010年成为Apache的开源项目之一,与Hadoop和Storm等其他大数据和MapReduce技术相比,Spark有如下优势: 1.运行速度快,Spar...

2018-09-05 23:49:32

阅读数 1006

评论数 1

分布式事务之柔性事务

一. 定义 在电商领域等互联网场景下,传统的事务在数据库性能和处理能力上都暴露出了瓶颈。在分布式领域基于CAP理论以及BASE理论,有人就提出了柔性事务的概念。CAP(一致性、可用性、分区容忍性)理论大家都理解很多次了,这里不再叙述。说一下BASE理论,它是在CAP理论的基础之上的延伸。包括基本...

2018-08-19 14:35:40

阅读数 652

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭