开阔思路
乔志勇笔记
java学习新天地
展开
-
消除单点,一篇搞定 | 架构设计篇
https://mp.weixin.qq.com/s/DWSzoZWNyKXePVuwubpTog系统架构中,为什么会存在单点?(1)存在设计缺陷,出现了单点;(2)能大大简化系统设计,有意为之,设置单点; 典型互联网高可用架构,哪些地方可能存在潜在单点?典型互联网高可用架构:(1)端,通过DNS,由域名拿到nginx的外网IP;(2)反向代理,nginx是后端入...转载 2018-11-02 16:19:36 · 763 阅读 · 0 评论 -
集中式架构与分布式架构比较
https://mp.weixin.qq.com/s?__biz=MzUzMzU5Mjc1Nw==&mid=2247483847&idx=1&sn=63b4ff4314f71bdb1696c04dea531a30&chksm=faa0ee1dcdd7670bf351740c74e66bb33d3ccf8cf568df73bad0ed151057cca8004ba1d...转载 2019-01-29 10:01:14 · 2522 阅读 · 0 评论 -
运维监控的终极秘籍,盘它
https://mp.weixin.qq.com/s/HGVTM30j5I9T8Q6B8DEvnQ基于京东云丰富的实战经验,我们将陆续分享运维方面的干货,帮助小伙伴们进阶为运维达人,欢迎持续关注。今天带来的是“监控”系列的终极篇。(文末可查看所有往期内容) 本期作者:葫芦瓜京东云应用研发部在前面的监控系列文章中,我们介绍了Kafka、Zookeeper、ElasticS...转载 2019-02-15 16:09:14 · 566 阅读 · 0 评论 -
分布式架构知识体系
https://mp.weixin.qq.com/s/9xINMH9tJlmsjH6QdUPFxQ1.问题 1、何为分布式何为微服务? 2、为什么需要分布式? 3、分布式核心理论基础,节点、网络、时间、顺序,一致性? 4、分布式是系统有哪些设计模式? 5、分布式有哪些类型? 6、如何实现分布式? 2.关键词节点,时间,一致性,CA...转载 2019-02-15 16:46:56 · 791 阅读 · 0 评论 -
分布式、高并发、高可用
因为java面试题是一个较为大的体系,所以我们会拆分为几季来讲解,预计是会推出3季,本次是第一季,第一季课程包含的内容如下: 1、分布式系统1.1 为什么要进行系统拆分?(1)为什么要进行系统拆分?如何进行系统拆分?拆分后不用dubbo可以吗?dubbo和thrift有什么区别呢?1.2 分布式服务框架(1)说一下的dubbo的工作原理?注册中心挂了可以继续通信吗?...转载 2019-01-30 11:06:19 · 1220 阅读 · 0 评论 -
京东服务市场高并发下SOA服务化演进架构
https://mp.weixin.qq.com/s/gBce2-tGDQs8Reejx-Q34w京东服务市场是京东商家与第三方独立软件提供商(ISV)进行服务类的在线交易平台。作为京东生态圈重要的一环,伴随着整个京东的快速增长,也在快速的发展。随着服务市场访问、交易量指数级的增长,系统由原来的ALL IN ONE架构,快速的演进成为SOA架构。 木桶的容量由木桶最短的木板决定,高并发...转载 2019-02-13 11:56:47 · 631 阅读 · 0 评论 -
mPaaS 服务端核心组件:消息推送 MPS 架构及流程设计
https://mp.weixin.qq.com/s?__biz=MzUyMDk2MzUzMQ==&mid=2247484024&idx=1&sn=fb5437f341e30ab43a7ff2b63d48e93a&chksm=f9e316dcce949fca7d6ee354b12dd03445aa9f0891a858600cf7e77089d373fbcef3534...转载 2019-02-13 17:12:58 · 2595 阅读 · 0 评论 -
缓存系统中面临的雪崩/穿透/一致性问题
http://fivezh.github.io/2019/02/11/cache-things/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.ioThere are only two hard things in Computer Science: cache invalidation and naming...转载 2019-02-13 18:21:59 · 451 阅读 · 0 评论 -
细说API – 文档和前后端协作
https://insights.thoughtworks.cn/api-document-front-back-end-collaboration/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io在上一篇文章——《细说API – 重新认识RESTful》中介绍了如何理解和设计RESTful风格的API,现...转载 2019-02-25 11:44:47 · 544 阅读 · 0 评论 -
持续集成之理论篇
https://zhuanlan.zhihu.com/p/57021068?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io持续集成 ?——?大概数周前,突然有学长问我有没有接触过“持续集成”。在我脑海中,这是一个陌生的词汇,于是百度了解了一番。实际上有开发和部署经验的小伙伴对持续集成不会非常陌生的,...转载 2019-02-20 17:23:18 · 285 阅读 · 0 评论 -
看到外卖平台这样改善数据库架构,DBA表示放心了(数据库架构发展)
https://mp.weixin.qq.com/s/jIMjiCe0j0TIiM9gEu63yA本文根据虢国飞老师在dbaplus社群【2019年1月5日数据架构与优化沙龙上海站】现场演讲内容整理而成,点击文末【阅读原文】可下载完整PPT~ 讲师介绍虢国飞 饿了么数据技术部负责人 从事数据库行业十余年,专注于 MySQL、PGSQL、MSSQL等数据库领域的管理、...转载 2019-02-21 10:59:54 · 1364 阅读 · 0 评论 -
服务器超时时间和请求队列大小设置
https://tenfy.cn/2019/03/09/server-timeout-queue-size/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io服务器超时时间和请求列表大小关乎程序的健壮性。设置过小,会导致有效的请求被丢掉。 设置过大,严重的情况下会引起雪崩。超时很多后台码农对超时时间的...转载 2019-03-11 18:44:07 · 5656 阅读 · 0 评论 -
分库分表后,测试小姐姐都哭了(sharding-proxy)
https://mp.weixin.qq.com/s/pFocdxhY0IkwwgV6XI_WVw什么?你们的测试是小哥哥?那就不要往下看了,让他们怎么难怎么来。建议根据你的业务特点,单表 > 分区 > 单库分表 > 分库分表,在满足业务前提下,优先级从左到右,不接受任何反驳。嘿嘿背景做过分表的(单库分表或者分库分表)都知道,在你没有依赖任何中间件之前,使用N...转载 2019-04-04 10:50:30 · 6878 阅读 · 2 评论 -
mysql的分区和分表
分区分区就是把一个数据表的文件和索引分散存储在不同的物理文件中。mysql支持的分区类型包括Range、List、Hash、Key,其中Range比较常用:RANGE分区:基于属于一个给定连续区间的列值,把多行分配给分区。LIST分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合中的某个值来进行选择。HASH分区:基于用户定义的表达式的返回值来进行选...转载 2019-04-04 11:16:22 · 300 阅读 · 0 评论 -
maven modules
https://www.cnblogs.com/diegodu/p/6800583.html所有用Maven管理的真实的项目都应该是分模块的,每个模块都对应着一个pom.xml。它们之间通过继承和聚合(也称作多模块,multi-module)相互关联。那么,为什么要这么做呢?我们明明在开发一个项目,划分模块后,导入Eclipse变成了N个项目,这会带来复杂度,给开发带来不便。为了解释...转载 2019-04-04 16:05:51 · 541 阅读 · 0 评论 -
程序员如何精确评估开发时间?
https://mp.weixin.qq.com/s?__biz=MzA5MTMyNTI0Nw==&mid=2649789622&idx=1&sn=8e25aac33e77c957a86024106c82702b&chksm=887a22e6bf0dabf0ea6db5ce5e02520c4fdfeb913457d11e2713474816586cde05e7d97...转载 2019-04-08 11:54:07 · 631 阅读 · 0 评论 -
技术演讲,如何快速做到80分(值得收藏)!!!
https://mp.weixin.qq.com/s/u6gtUF5yz80vRpImVOloaw偶尔作为Speaker,参加一些技术大会的演讲,上周被DTCC邀请分享“如何做技术大会演讲”,把自己总结的一些经验分享给大家,希望对初登演讲台的技术人有帮助。一、提前了解听众的诉求如同架构设计必须先了解业务需求一样,对演讲来说,了解听众诉求永远是第一步的:(1)给客户进行讲解:听...转载 2019-04-08 11:55:31 · 807 阅读 · 0 评论 -
支付系统如何进行分布式改造
https://mp.weixin.qq.com/s/9M3h7PhlosuRSMHFx_FbqA传统支付系统面临的挑战 随着近年来移动支付的兴起 ,如条码支付、声波支付、NFC 近场支付等,随之还产生了聚合支付把多种支付方式聚合在一起,方便人们的使用,移动支付已经渗透到我们生活的每一个角落,不带钱包出门已经没有任何阻碍。这就给传统的支付系统提出了新的挑战,用户量激增,系统容量和性能跟...转载 2019-01-28 15:10:13 · 470 阅读 · 0 评论 -
三道 Java 私房菜
https://mp.weixin.qq.com/s/4KhdXkjYaKbH1wZjgWuoIw大蕉蕉每个月写这么多 Java 代码呢,也存着很多私房菜,也总结下给大家玩玩,用完保证代码量 biu biu biu 飙升,信我。 Top1 : ResultExecutor + ResultDTO 组合 首先说下为什么会出现这个组合,这个组合我是在第二份工作的时候才学到的。不...转载 2019-01-28 11:27:31 · 359 阅读 · 0 评论 -
教你用认知和人性来做最棒的程序员
https://www.jianshu.com/p/ef383e9e9b52?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io不久前,在团队内部和大家做了一次分享,内容就是这次要讲的“用认知和人性来提升自己的技术水平”,大家反响不错,所以这次整理一下也分享给大家。最初我是想用“借优秀的产品经理思维来做最棒...转载 2019-01-25 10:36:53 · 420 阅读 · 0 评论 -
RabbitMQ 高级指南:从配置、使用到高可用集群搭建
https://blog.csdn.net/qq_35246620/article/details/72473098博主说:在项目中,通过 RabbitMQ,咱们可以将一些无需即时返回且耗时的操作提取出来,进行异步处理,而这种异步处理的方式大大的节省了服务器的请求响应时间,从而提高了系统的吞吐量。正文1 RabbitMQ 简介1.1 介绍 RabbitMQ 是一个由 ...转载 2018-11-07 13:48:46 · 367 阅读 · 0 评论 -
在这个大促的日子聊一聊我的大促经历
http://blog.cyeam.com/ctalk/2018/11/11/1111?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io4个618,3个双十一的经历写出来分享。压测 性能 禁止读库、禁止跨机房调用 监控 服务降级 兜底 事故 值班 最后之前在某东待了3年半,经历了4个61...转载 2018-11-16 17:24:01 · 386 阅读 · 0 评论 -
“分库分表" ?选型和流程要慎重,否则会失控
https://mp.weixin.qq.com/s?__biz=MzA4MTc4NTUxNQ==&mid=2650519118&idx=1&sn=fc4b92154cb9ab6dcec5b5544c6274aa&chksm=8780b18ab0f7389c1bde56b5adfce265779a58314ef77b7645b1f189f2ba11691fac7d8...转载 2018-11-16 18:06:59 · 1008 阅读 · 0 评论 -
关于负载均衡的一切
https://mp.weixin.qq.com/s/xvozZjmn-CvmQMAEAyDc3w什么是负载均衡?负载均衡(Load Balance)是分布式系统架构设计中必须考虑的因素之一,它通常是指,将请求/数据均匀分摊到多个操作单元上执行,负载均衡的关键在于均匀。 常见的负载均衡方案有哪些?常见互联网分布式架构如上,分为: 客户端层 反向代理层 ...转载 2018-11-22 18:29:38 · 350 阅读 · 0 评论 -
从一道简单的“SpringBoot配置文件”相关面试题,我就能知道你的水平
面试要套路,也要技巧。别被背题目的兄弟们给忽悠了。【你来发挥】你比较喜欢什么技术,哪一种最熟?一般自信的面试官都喜欢问这个问题,这次面试的小伙比较年轻,咱也装回B,不然都对不起自己。答: 我比较喜欢Spring,比较有趣。目的: 希望应聘者能够有广度且有深度。如果最感兴趣的是Spring本身,而不是其上的解决方案,那顶多会承担被分解后的编码工作。巧了,咱也熟。【工作经...转载 2018-11-22 18:39:03 · 334 阅读 · 0 评论 -
漫话:如何给女朋友解释为什么双11当天不能申请退款
https://mp.weixin.qq.com/s/POJuYTlO4XmVYhk_rAjAAQ原创: 漫话编程 漫话编程 昨天双十一当天晚上的十一点多,我下班回到家中,看到平时很早就睡觉的女朋友今天竟然还没有睡觉。于是我问她: 服务降级:当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务...转载 2018-11-20 10:16:50 · 474 阅读 · 0 评论 -
后端技术杂谈
http://www.rowkey.me/blog/2018/11/22/online-debug/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io如何应对在线故障Nov 22nd, 2018 Posted by 飒然Hang in architecture线上运行的Java应用突然没有响应、响应缓...转载 2018-11-23 16:04:19 · 277 阅读 · 0 评论 -
Kubernetes 容器云实践方案
https://mp.weixin.qq.com/s?__biz=MzIzOTUyMTA4MA==&mid=2247483791&idx=1&sn=aebdf07237eec8596f4462801a230370&chksm=e9299dd8de5e14ceafba4f4c834dac87bee7054179b0810de6237322a45d89008ef34cb...转载 2018-11-29 14:36:23 · 2197 阅读 · 1 评论 -
美团即时物流的分布式系统架构设计
https://mp.weixin.qq.com/s/drlx9Fv0qQI8JJct_AjmYw背景美团外卖已经发展了五年,即时物流探索也经历了3年多的时间,业务从零孵化到初具规模,在整个过程中积累了一些分布式高并发系统的建设经验。最主要的收获包括两点: 即时物流业务对故障和高延迟的容忍度极低,在业务复杂度提升的同时也要求系统具备分布式、可扩展、可容灾的能力。即时物流系统阶段性的逐...转载 2018-11-26 18:29:31 · 1576 阅读 · 0 评论 -
对传统应用进行容器化改造
https://mp.weixin.qq.com/s/0yWIuIwarLiml4MD0pDxMg本文接下来简要介绍什么是容器化,要在 Docker 容器中运行传统应用的缘由,容器化的过程,其间可能遇到的问题,在用容器部署之后的其他步骤等。这将明显减轻部署工作的压力,并让应用朝着零停机部署和横向缩放的方向前进。 注:本文专注在简化应用的部署过程,并不包含需要对应用重新设计的内容,比如高...转载 2018-11-27 14:00:13 · 4637 阅读 · 0 评论 -
谈 Kubernetes 的架构设计与实现原理
https://draveness.me/understanding-kubernetes?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.ioKubernetes 基本上是这两年最热门、最被人熟知的技术了,它为软件工程师提供了强大的容器编排能力,模糊了开发和运维之间的边界,让我们开发、管理和维护一个大型的分布式...转载 2018-11-27 15:06:54 · 697 阅读 · 0 评论 -
公司ES升级带来的坑怎么填?
https://mp.weixin.qq.com/s/Jvy06VZVdF-0U8t0w5bNLA前言公司的ES最近需要全部进行升级,目的是方便维护和统一管理。以前的版本不统一,这次准备统一升级到一个固定的版本。同时还会给ES加上权限控制,虽然都是部署在内网,为了防止误操作,加上权限还是有必要的。带来的问题就是我这边的程序得改了,目前用的是Spring Data Elasticse...转载 2018-11-27 15:16:22 · 797 阅读 · 0 评论 -
支付开发,不得不了解的国内、国际第三方支付流程
https://mp.weixin.qq.com/s/4Xut45PcMASlV4_08O_xmA这几年的工作中一直与支付打交到,借着 skr-shop 这个项目来与大家一起分享探索一下支付系统该怎么设计、怎么做。我们先从支付的一些常见流程出发分析,找出这些支付的共性,抽象后再去探讨具体的数据库设计、代码结构设计。相关项目: PHP 版本的支付SDK:https://github.c...转载 2018-11-27 15:54:37 · 4086 阅读 · 0 评论 -
如何修改项目引入jar中的代码
https://mp.weixin.qq.com/s/ky9i5LvoIK1BAqExUjx72A你是否遇到过这样的困境:这个问题线上才能出现,可是线上不支持debug,并且怀疑是引入的jar引起的,不能加log怎么办?亦或者你觉得引入的jar的某个方法有bug,应该这么写才对,如何才能去证实呢。不知道你是如何解决上诉问题的,笔者的方案就是在项目创建一个一模一样的需要debug或者修改的C...转载 2018-11-28 19:00:11 · 662 阅读 · 0 评论 -
有赞订单管理的三生三世与“十面埋伏”
https://mp.weixin.qq.com/s/pkPVYmrUTywSiswZz_YqKw有赞订单管理主要承接有赞所有订单搜索及详情展示功能,系统随着业务的不断发展经历了多次飞升之路。下面简单介绍下有赞订单管理系统的三生三世与“十面埋伏”。第一世:凡人飞升小仙之路-分库分表随着业务发展,单库单表所能承载的数据量局限性越发严重。历劫:单库单表数据量承载局限渡劫:分库分表分库分表的...转载 2018-12-10 15:25:17 · 453 阅读 · 0 评论 -
微服务设计指南
https://mp.weixin.qq.com/s/nYDSZJ-N7ECitDF3AFGgRw2018年,每个人都听说过微服务。但你知道怎么设计吗? 微服务是当今软件工程师的一个热门话题。让我们了解如何使用微服务架构风格构建真正模块化、业务敏捷的IT系统。 一、微服务概念 微服务体系结构由轻量级、松散耦合的服务集合组成。每个服务都实现了单个业务功能。理想情况下,这些...转载 2018-12-10 15:27:11 · 575 阅读 · 0 评论 -
关于java中的this::
https://www.cnblogs.com/lanlengran/p/9510262.html今天在阅读其他人的源码的时候发现了这样一句话Observable.zip(mLoginObservable, mBannerObservable, mArticleObservable, this::createResponseMap)最后的一个this::createRespons...转载 2019-04-08 15:29:42 · 2508 阅读 · 0 评论