自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 图灵学院:Web 框架的架构模式探讨

前端大全1周前(点击上方公众号,可快速关注)作者:切图妞segmentfault.com/a/1190000014804826在写干货之前,我想先探(qiang)讨(diao)两个问题,模式的局限性?模式有什么用?最近看到一篇文章对我启发很大,许来西在知乎的回答《哲学和科学有什么关联?》,全篇较长,这里摘录我要引出的一点:科学作为一种经验主义的认识论,有着经验主义的巨大缺陷:它永远不能产生绝对正确...

2018-05-27 15:35:19 482

转载 图灵学院:分库分表切分方式的介绍

- 本文节选自即将出版的《可伸缩服务架构:框架与中间件》一书,作者:李艳鹏、杨彪、李海亮、贾博岩、刘淏。- 点击文末原文链接可以直达《可伸缩服务架构:框架与中间件》书籍主页。简单来说,数据的切分就是通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)中,以达到分散单台设备负载的效果,即分库分表。数据的切分根据其切分规则的类型,可以分为如下两种切分模式。垂直(纵向)切分:...

2018-05-25 14:02:19 628

转载 图灵学院:【微服务架构】SpringCloud之Ribbon(四)

SpringCloud Ribbon​      一:Ribbon是什么? Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,...

2018-05-24 14:20:07 444

转载 【微服务架构】SpringCloud之Hystrix断路器(六)

SpringCloud Hystrix一:什么是Hystrix在分布式环境中,许多服务依赖项中的一些将不可避免地失败。Hystrix是一个库,通过添加延迟容差和容错逻辑来帮助您控制这些分布式服务之间的交互。Hystrix通过隔离服务之间的访问点,停止其间的级联故障以及提供回退选项,从而提高系统的整体弹性。Hystrix旨在执行以下操作1:对通过第三方客户端库访问(通常通过网络)的依赖关系提供保护并...

2018-05-23 13:49:17 253

转载 【微服务架构】SpringCloud之Eureka(注册中心集群篇)(三)

SpringCloud backup 上一篇讲解了spring注册中心(eureka),但是存在一个单点故障的问题,一个注册中心远远无法满足实际的生产环境,那么我们需要多个注册中心进行集群,达到真正的高可用。今天我们实战来搭建一个Eureka集群。  一:集群环境搭建    第一步:我们新建两个注册中心工程一个叫eureka_register_service_master、另外一个叫eureka_...

2018-05-22 15:51:28 171

转载 图灵学院:【微服务架构】SpringCloud之Eureka(服务注册和服务发现基础篇)(二)

一:Eureka简介   Eureka是Spring Cloud Netflix的一个子模块,也是核心模块之一。用于云端服务发现,一个基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移。服务注册与发现对于微服务系统来说非常重要。有了服务发现与注册,你就不需要整天改服务调用的配置文件了,你只需要使用服务的标识符,就可以访问到服务。他的功能类似于dubbo的注册中心(register...

2018-05-21 13:41:42 789

转载 图灵学院:dubbo启动之注册中心(Registry)

Registry dubbo今天来分享下dubbo注册中心的大致结构服务注册对于服务提供方,它需要发布服务,而且由于应用系统的复杂性,服务的数量、类型也不断膨胀;对于服务消费方,它最关心如何获取到它所需要的服务,而面对复杂的应用系统,需要管理大量的服务调用。而且,对于服务提供方和服务消费方来说,他们还有可能兼具这两种角色,即既需要提供服务,有需要消费服务。通过将服务统一管理起来,可以有效地优化内部...

2018-05-18 13:57:20 613

转载 图灵学院:dubbo启动服务之容器(Container)

SPI dubbo讲解dubbo启动服务的时候先来了解下java的spi机制一:SPI 简介SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制。 目前有不少框架用它来做服务的扩展发现, 简单来说,它就是一种动态替换发现的机制, 举个例子来说, 有个接口,想运行时动态的给它添加实现,你只需要添加一个实现,而后,把新加的实现,描述给JDK知道...

2018-05-17 13:46:53 382

转载 图灵学院:java高并发之Executor

concurrent Executor一:线程池的用途平时的业务中,如果要使用多线程,那么我们会在业务开始前创建线程,业务结束后,销毁线程。但是对于业务来说,线程的创建和销毁是与业务本身无关的,只关心线程所执行的任务。因此希望把尽可能多的cpu用在执行任务上面,而不是用在与业务无关的线程创建和销毁上面。而线程池则解决了这个问题,线程池的作用就是将线程进行复用。二:java并发包提供的线程池1:线程...

2018-05-16 13:20:39 1075

转载 图灵学院:Java高并发之Lock

concurrent lock从Java5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。讨论lock前先了解下synchronized一:synchronized  synchronized是java中的一个关键字,也就是说是Java语言内置的特性,如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该...

2018-05-15 14:53:15 785

转载 图灵学院:Java高并发之Atomic

concurrent atomic一:原子操作    原子(atom)本意是“不能被进一步分割的最小粒子”,而原子操作(atomic operation)意为“不可被中断的一个或一系列操作” 原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch二:CAS   CAS:Compare and Swap, 翻译成比较并交换。   j...

2018-05-14 13:44:23 807

转载 图灵学院:java高并发之ConcurrentMap

ConcurrentHashMap concurrent 简介今天浅显的学习了下concurrentHashmap,是为了高并发而实现,内部采用分离锁的设计,有效地避开了热点访问。而对于每个分段,ConcurrentHashmap采用final和内存可见修饰符volatile关键字。1:ConcurrentMap的继承和实...

2018-05-13 14:43:57 660

转载 图灵学院:Java高并发之BlockingQueue

1:BlockingQueue继承关系  java.util.concurrent 包里的 BlockingQueue是一个接口, 继承Queue接口,Queue接口继承 Collection  BlockingQueue----->Queue-->Collection 图: 队列的特点是:先进先出(FIFO)2:BlockingQueue的方法BlockingQueue 具有 4 组...

2018-05-11 19:29:58 39719 3

转载 图灵学院:淘宝大秒系统设计详解

一些数据大家还记得2013年的小米秒杀吗?三款小米手机各11万台开卖,走的都是大秒系统,3分钟后成为双十一第一家也是最快破亿的旗舰店。经过日志统计,前端系统双11峰值有效请求约60w以上的QPS ,而后端cache的集群峰值近2000w/s、单机也近30w/s,但到真正的写时流量要小很多了,当时最高下单减库存tps是红米创造,达到1500/s。热点隔离秒杀系统设计的第一个原则就是将这种热点数据隔离...

2018-05-10 14:36:51 1514

转载 图灵学院:飘扬的红领巾

前言一个成熟的大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计思想也发生了很大的变化,就连技术人员也从几个人发展到一个部门甚至一条产品线。所以成熟的系统架构是随业务扩展而完善出来的,并不是一蹴而就;不同业务特征的系统,会有各自的侧重点,例如淘宝,要解决海量的商品信息...

2018-05-09 15:10:10 1049

转载 通过jstack日志分析和问题排查

jstack 前段事件公司出现了一个严重故障(调用dubbo服务一直处于超时,整个服务系统发生雪崩,系统彻底访问不了),一开始怎么都找不到问题的根源,日志的表现形式是dubbo线程池用完了,那么具体是什么导致的没有找到,后然通过jstack日志分析才找到问题的根源,根源就是系统日志代码写有问题。通过这个故障我们来了解下如何通过jstack日志分析线上问题。首先...

2018-05-08 13:37:07 529

转载 图灵学院:支付系统如何进行分布式改造

传统支付系统面临的挑战随着近年来移动支付的兴起 ,如条码支付、声波支付、NFC 近场支付等,随之还产生了聚合支付把多种支付方式聚合在一起,方便人们的使用,移动支付已经渗透到我们生活的每一个角落,不带钱包出门已经没有任何阻碍。这就给传统的支付系统提出了新的挑战,用户量激增,系统容量和性能跟不上了,传统的架构往往以 IOE 技术为主,采用 scale up 方式以更强的硬件提升系统性能和容量,扩容成本...

2018-05-07 15:15:28 509

转载 Java高级工程师需要掌握哪些核心点?

每逢长假都会有很多程序员跳槽,十一、过年是跳槽黄金时刻,尤其是过年。过年的时候年终奖到手,没有了多少牵挂,年终同学同事聚会比较多,沟通的就多,各种工作机会的消息也相应会多,所以跳槽的机会也就会多。跳槽就必不可少的要经过面试,那么作为一个Java程序员需要准备哪些面试知识呢?下面就给大家说说。1、集合框架:从上图可以看到主要是Collection和Map的继承类和Iterator的实现类,重点掌握A...

2018-05-04 15:08:31 215

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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