分布式技术
曾卫
笃信科技引领金融的理念践行者,成为国际领先的个人金融生活服务提供商的推动者,目前上海财经大学研究生在读。
展开
-
java中的定时任务-入门篇
一、定时任务定义:定时任务简单地说,就是在指定的时间,按照指定的频率来执行某一个方法。现在的应用程序,早已不是只由增、删、改、查组成的应用程序了,高复杂度,高并发早已是标配,而任务的定时调度与执行也是对程序的基本要求了。例如:运营商会在月末清空未使用完的流量,备忘录提醒、闹钟、基金定投等功能,都是定时器的应用场景。二、实现定时任务的四种方式2.1 第一种方式: 使用java的Timernew Timer("testTimer").schedule(new TimerTask() { @原创 2020-07-09 18:44:14 · 999 阅读 · 0 评论 -
多线程应用:定时任务重发机制实现
项目场景:对于定时任务发起的一些任务,由于某些客观原因,导致任务失败,希望能够有一个监听的定时器,定时轮训任务状态表,并重新发起任务调用。核心思路:1.定义一个定时器TaskARQCron.java,发起失败任务扫描。2.定义一张新的重发状态表,区分开原任务状态表,每重新发起一次任务,重发状态表记录一条数据。3.智能识别依赖性任务和非依赖性任务4.定时任务的扫描的间隔时间设置 2个小时5.按照日期先后顺序执行重发,先失败,先执行原则,同时针对非依赖性任务,排序执行6.对于已选中的重发任务.原创 2020-06-19 17:10:55 · 2074 阅读 · 0 评论 -
redis集群搭建(非常详细,适合新手)
redis集群搭建在开始redis集群搭建之前,我们先简单回顾一下redis单机版的搭建过程1.下载redis压缩包,然后解压压缩文件;2.进入到解压缩后的redis文件目录(此时可以看到Makefile文件),编译redis源文件;3.把编译好的redis源文件安装到/usr/local/redis目录下,如果/local目录下没有redis目录,会自动新建redis目录;4.进入/...转载 2020-04-29 21:10:25 · 345 阅读 · 4 评论 -
全局唯一序列号生成器-支持分布式
全局唯一序列号生成器-支持分布式场景:在某些业务场景,需要生成唯一的序列号,来定位某一个条数据,且必须保证全局唯一,例如:交易流水号等。核心类/** * 序列号生成服务 */@Servicepublic class SnGenerator { private static final Logger logger = LoggerFactory.getLogger(SnG...原创 2019-12-18 18:26:42 · 1668 阅读 · 3 评论 -
关于跨系统Dubbo接口的异常处理
场景A系统执行用户注销时,需要调用B系统的一个清除用户数据的接口,同时需要B系统向C系统调用注销接口,根据C系统的注销结果及B系统的本身系统业务执行结果,根据执行情况返回给A系统。分块异常处理 对于不同系统的接口层调用,要分开用try-catch进行异常捕获,并打印相关日志信息,同时在打印日志信息时,一定要把异常打印到日志中,方便出现问题时,精确定位问题。//C系统端业务try {原创 2017-06-15 11:45:52 · 3219 阅读 · 0 评论 -
java中分布式架构的演变和介绍
作者:知乎用户链接:https://www.zhihu.com/question/22764869/answer/31277656来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。分布式架构的演进系统架构演化历程-初始阶段架构转载 2017-09-02 17:53:31 · 2551 阅读 · 0 评论 -
dubbo 配置文件详解
一、dubbo常用配置dubbo:service/> 服务配置,用于暴露一个服务,定义服务的元信息,一个服务可以用多个协议暴露,一个服务也可以注册到多个注册中心。eg、dubbo:service ref="demoService" interface="com.unj.dubbotest.provider.DemoService" />dubbo:reference/> 引用服务转载 2017-09-04 11:18:20 · 363 阅读 · 0 评论 -
zookeeper和dubbo的关系
Dubbo建议使用Zookeeper作为服务的注册中心。1. Zookeeper的作用: zookeeper用来注册服务和进行负载均衡,哪一个服务由哪一个机器来提供必需让调用者知道,简单来说就是ip地址和服务名称的对应关系。当然也可以通过硬编码的方式把这种对应关系在调用方业务代码中实现,但是如果提供服务的机器挂掉调用者无法知晓,如果不更改代码会继续请求挂掉的机器提转载 2017-09-04 11:17:14 · 269 阅读 · 0 评论 -
分布式架构真正适用于大型互联网项目的架构! dubbo+zookeeper+springmvc+mybatis+shiro+redis
平台简介 Jeesz是一个分布式的框架,提供项目模块化、服务化、热插拔的思想,高度封装安全性的Java EE快速开发平台。 Jeesz本身集成Dubbo服务管控、Zookeeper注册中心、Redis分布式缓存技术、FastDFS分布式文件系统、ActiveMQ异步消息中间件、Nginx负载均衡等分布式技术 使用Maven做项目转载 2017-07-03 11:29:16 · 10297 阅读 · 1 评论 -
美团外卖订单中心的演进
美团外卖订单中心的演进前言美团外卖从2013年9月成交第一单以来,已走过了三个年头。期间,业务飞速发展,美团外卖由日均几单发展为日均500万单(9月11日已突破600万)的大型O2O互联网外卖服务平台。平台支持的品类也由最初外卖单品拓展为全品类。随着订单量的增长、业务复杂度的提升,外卖订单系统也在不断演变进化,从早期一个订单业务模块到现在分布式可扩展的高性能、高可用、高转载 2017-05-04 19:04:57 · 2556 阅读 · 0 评论 -
百度万人协同规模下的代码管理架构演进
互联网研发,唯快不破。为了提升公司整体研发效率,百度引入了业界的优秀工程实践,设计开发了一整套研发工具链。主要包括项目管理平台、代码开发协作平台和持续交付平台,分别针对需求、开发和交付场景,提供工具、流程和数据支持,如图1所示。图1 百度研发工具链代码管理的目标场景就是开发场景,是研发活动的核心环节,承载着打通需求、交付上下游的作用。百度代码管理建设分别从文转载 2017-03-15 14:37:10 · 2699 阅读 · 0 评论 -
浅谈分布式缓存那些事儿
浅谈分布式缓存那些事儿本文将从理论的角度去介绍,让大家从宏观上对“分布式缓存、nosql”等技术有所了解,以便进一步学习和使用。在构建大规模的web应用时,缓存技术可以说是必备的,学习的必要性不言而喻。作者:dinglang_2009来源:博客|2013-06-13 11:29 收藏 分享在前面的一些文章中,从实战的角度,讲解了转载 2017-02-10 17:12:04 · 337 阅读 · 0 评论