程序架构
文章平均质量分 85
新栋BOOK
经历过才知道有多美
展开
-
架构六大思维养成记
允许我老生常谈,先从什么是架构说起。当谈到软件架构的时候你不能只想到spirng、springmvc、mysql,你也真不应该想到它们,虽然它们是你落地的载体。至少你不能先想到它们,软...原创 2021-01-30 10:48:58 · 2752 阅读 · 1 评论 -
从微服务到微服务测试
微服务到底需要多“微”如果要追溯微服务的定义,大家一般都会去看Martin Fowler在2014年发表的Microservices那篇文章。一共7个特点。微服务中的"微"时常给我们潜意识里面下了一个定义,似乎是有一个尺寸,大小,很明显上面7个特点里面没有涉及大小。微服务侧重点在于拆分能力,拆分的原则我们也都比较熟悉,包括单一职责原则,改变一个类应该有且只有一个理...原创 2019-07-25 12:41:15 · 1392 阅读 · 0 评论 -
工作这么多年,今天我对架构做了一个简单思考
架构,如果让你给它一个定义,恐怕一时不好表达。正如,问你,山,是什么;水,是什么一样。对于程序员来讲犹如游山玩水的侠客,畅游在程序-代码-架构之中。为架构,下一个定义,和为山水,下一个定义,一样可能会略作沉思之后,方能概述。微服务是一种架构风格。曾经也思考,微服务,到底是先有了微服务这个动作,还是先有微服务这个名词。想到此,想起我们的祖先,拿来一个木棍,在另外一根木棍上,使劲旋转,生出火...原创 2019-07-10 13:11:49 · 158 阅读 · 0 评论 -
大型互联网企业平台开放技术实践
本篇文章一共分为四个部分,分别是开放生态、开放网关、开放授权和开放安全。为什么要做开放,开放的技术实现有哪些,主要是开放网关和授权,同时我们开放了以后肯定还需要安全,需要开放的安全保障。开放生态首先是开放生态,当提到生态的时候,我们可以想象一下,一片大大的草原,有羊群,有野兔,有飞鸟,可能还有狼群,它是一个多样性的。那么开放的生态也是这样,打造一个多样化的平台生态。对于大型的企业,尤其是大...原创 2019-06-23 06:56:08 · 1053 阅读 · 0 评论 -
我的第6个京东618--大促备战我们都干了啥
今年是我的第6个618,因为入职的时间比较"合适",使得我经历了每年两次完整的大促备战。那年还在北辰,618的当晚,我记忆的很清晰,接近凌晨1点左右的时候,我们聚集在楼道里面,大家举杯相庆,来祝贺刚刚平稳度过的大促。从此这样的场景在每年的这个时候都会经历一次,激动一次。每一次大促备战都是一场全兵演练,我们在这个战斗过程中,团队合作、技术实战、用户意识上都有一个立体的提升。站在每年的这一刻往前看...原创 2019-06-10 20:46:58 · 545 阅读 · 0 评论 -
数据异构的武器-BINLOG+MQ
1、定义何谓数据异构,上周交易部门商品的同事过来做分享,又看到这个词,他的PPT里面是 数据库异构。其实我们以前做的事情,也是可以成为数据异构。比如我们将DB里面的数据持久化到REDIS里面去,就是一种数据异构的方式。如果要下个定义的话:把数据按需(数据结构、存取方式、存取形式)异地构建存储。2、常见应用场景分库分表中有一个最为常见的场景,为了提升数据库的查询能力,我们都会对数据库做分...原创 2019-06-15 08:42:14 · 907 阅读 · 0 评论 -
解析阿里奇门API网关平台
我们从4个W出发来解析阿里奇门。WHERE在什么场景下使用?WHAT奇门是什么?WHY为什么要用奇门? HOW怎么使用?一、WHERE在什么场景下使用传统的做法:我有一个“美丽服饰”的品牌工厂,顾客小G在我的网上店铺购买了一件衣服,现在客服小李查到有订单,然后通知小王从库房取货,当然同时有多个订单的时候一次取所有商品,小王再把要发给顾客的商品发到X通快递公司。如下图:新的做法:...原创 2019-06-14 13:06:09 · 13752 阅读 · 1 评论 -
一名架构师的自我修炼--商务技能
架构师不能只关注系统构造的技术方面,更重要的是要考虑软件对用户的价值,以及商务价值。你能帮助用户真正解决怎样的问题?你怎样能帮助公司或者团队创造价值?对这些方面要有深刻的认识。你是怎么成为一名架构师的及时麻利的提交系统功能解决复杂的技术问题将需求转化并输入到系统软件中检查别人的工作指导团队的其他人,或者其它团队内的人与管理者、技术人员和业务人员沟通能意识到技术的发展...原创 2019-06-13 20:24:24 · 416 阅读 · 0 评论 -
构建消息推送系统之HTTP长连接实践
构建一个推送系统,组成部分包括会话连接、心跳逻辑、消息接收、消息推送。在HTTP长连接推送系统实践上,我们可以利用servlet3的异步特性,再结合tomcat nio,可以为我们提供一个基础的技术支持。原创 2017-11-13 18:41:04 · 9983 阅读 · 2 评论 -
深度解读Tomcat中的NIO模型
Tomcat的NIO是基于I/O复用来实现的。对这点一定要清楚,不然我们的讨论就不在一个逻辑线上。下面这张图学习过I/O模型知识的一般都见过,出自《UNIX网络编程》,I/O模型一共有阻塞式I/O,非阻塞式I/O,I/O复用(select/poll/epoll),信号驱动式I/O和异步I/O。这篇文章讲的是I/O复用。原创 2017-11-13 18:53:39 · 562 阅读 · 0 评论 -
一文读懂I/O多路复用技术
前言当我们要编写一个echo服务器程序的时候,需要对用户从标准输入键入的交互命令做出响应。在这种情况下,服务器必须响应两个相互独立的I/O事件:1)网络客户端发起网络连接请求,2)用户在键盘上键入命令行。我们先等待哪个事件呢?没有哪个选择是理想的。如果在acceptor中等待一个连接请求,我们就不能响应输入的命令。类似地,如果在read中等待一个输入命令,我们就不能响应任何连接请求。针对这种困...原创 2017-11-21 12:54:24 · 19530 阅读 · 2 评论 -
servlet3异步原理与实践
一、什么是Servletservlet 是基于 Java 的 Web 组件,由容器进行管理,来生成动态内容。像其他基于 Java 的组件技术一样,servlet 也是基于平台无关的 Java 类格式,被编译为平台无关的字节码,可以被基于 Java 技术的 Web 服务器动态加载并运行。容器(Container),有时候也叫做 servlet 引擎,是 Web 服务器为支持 servlet 功能...原创 2017-11-21 13:08:50 · 14715 阅读 · 6 评论 -
我是如何完成这部30余万字技术书籍的
如果把写书,也分为类似华山剑法一样,有 “剑宗” 和 “气宗” 的话,这篇文章实际归到 “气宗” 里面,并没有讲述如何写作,而是谈了写书技能之外的内容。本文整理自我在研发部开年大会上的分享,为了保护隐私文章提到的人员姓名都隐去,另外成文上也略有更改。我们先从榜样说起,我们一定要有个榜样,但是这个目标榜样要努力之后可达,比如我原先把雷军当成我的榜样,他也是程序员出身的吧,天天...原创 2019-03-17 09:31:19 · 627 阅读 · 0 评论 -
努力做成一件重要的小事
在过去的2018年最终完成了一本书的创作,算下来共耗时两年之久,现在,这本书即将要跟大家见面,感慨万千。对写书这件事很是谨慎,毕竟跟写博客、写公众号文章不一样,平时写博客如果有了差错随即修改重新发布就好。但写书犹如覆水很难收。这也就要求必须严谨再严谨,生怕写错误导一片,虽然可以用 “人非圣贤孰能无过” 来为自己开脱,但总归是酿成错误。我来京东到今年3月份马上就要满五年时间,这五年来...原创 2019-03-14 12:50:05 · 380 阅读 · 0 评论 -
从HTTP/1.1到HTTP/2,让WEB性能更上一层楼
HTTP协议是互联网WEB应用的基石,这样定义恐怕没有人会反对吧。但是你可知HTTP1从诞生到现在马上就有20年的历史了,这20年互联网已经发生了翻天覆地的变化,然而HTTP1却一直保持它原有的样子默默无闻的支撑着所有的WEB请求,无数的开发者为了提升HTTP1的性能也开创了很多种优化的方法与实战技能,直到HTTP2的出现我们提升WEB性能的方式也随之发生了变化。这篇文章便从HTTP的历史说起一...原创 2019-02-17 08:28:13 · 1668 阅读 · 0 评论 -
微服务后如何做一次系统梳理
微服务的主要目的是将原本独立的系统拆分成多个小的,有独自进程运行的,同时这些小的服务单元之间通过RPC或者HTTP协议来相互通讯协作。每个独立的服务单元内部都有自己的数据存储、业务逻辑开发和自己的运维部署机制。我们在享受着微服务化后带来的灵活性便利的同时,对我们的运维和服务治理也提出了新的挑战。从早先单体应用中的代码依赖,变成了通信依赖。我们就不得不考虑以下问题,比如网络延迟、分布式事务、异步消息等等原创 2017-10-31 22:59:28 · 1223 阅读 · 0 评论 -
微服务下的网关与容错
自从微服务概念以来,众多的软件架构在践行着这一优秀的设计理念。各自的系统在这一指导思想下收获了优雅的可维护性,但一方面也给接口调用提出了新的要求。比如众多的API调用急需一个统一的入口来支持客户端的调用。在这种情况下API GATEWAY诞生,我们将接入、路由、限流等功能统一由网关负责,各自的服务提供方专注于业务逻辑的实现,从而给客户端调用提供了一个稳健的服务调用环境。之后,我们在网关大调用量的情况原创 2017-10-31 20:48:43 · 2261 阅读 · 1 评论