12 林志Ke

尚未进行身份认证

我要认证

技术 产品 管理 ——若要前行,就得离开你现在停留的地方

等级
TA的排名 4k+

一个简单可参考的API网关架构设计

网关一词较早出现在网络设备里面,比如两个相互独立的局域网段之间通过路由器或者桥接设备进行通信, 这中间的路由或者桥接设备我们称之为网关。相应的 API 网关将各系统对外暴露的服务聚合起来,所有要调用这些服务的系统都需要通过 API 网关进行访问,基于这种方式网关可以对 API 进行统一管控,例如:认证、鉴权、流量控制、协议转换、监控等等。API 网关的流行得益于近几年微服务架构的兴起,原本...

2020-04-15 18:04:26

谷歌开源内部代码评审规范

谷歌成立于 1998 年,以搜索起家,到目前为止已经发展了 21 年。在过去的 21 年中,谷歌不断创新,开发了七款产品,拥有超过 10 亿级活跃用户,谷歌的工程师文化一直被认为是优秀且特别的。近日,谷歌开源了其内部一直在使用的代码评审规范,InfoQ 对其进行了翻译和整理,分享给广大开发者,看看谷歌工程师是如何评审代码的。代码评审标准代码评审的主要目的是确保代码库的整体质量随时间推移逐步...

2019-10-18 17:26:31

如何搭建企业中台

一、什么是中台在业内,对此有着多种解读:1.解读一:中台就是技术平台,像微服务开发框架、Devops平台、PaaS平台,容器云之类的,我们叫它“技术中台”。2.解读二:中台就是一组公共的微服务平台,像最常见的什么用户中心、订单中心、商品中心等等,各种微服务集散地,我们可以叫它“业务中台”。3.解读三:中台就是一种组织概念,从公司管理角度出发,把面向客户的部门定义为前台,把公共业务支...

2019-08-10 22:53:09

FaaS,未来的后端服务开发之道

说FaaS先要说说PaaS平台即服务(PlatformasaService)是一种云计算服务,提供运算平台与解决方案堆栈即服务。在云计算的典型层级中,平台即服务层介于软件即服务与基础设施即服务之间。平台即服务提供用户能将云基础设施部署与创建至客户端,或者借此获得使用编程语言、程序库与服务。用户不需要管理与控制云基础设施,包含网络、服务器、操作系统或存储,但需要控制上层的应用程序部署与...

2018-03-22 10:23:33

从IaaS到FaaS—— Serverless架构的前世今生

今天大多数公司在开发应用程序并将其部署在服务器上的时候,无论是选择公有云还是私有的数据中心,都需要提前了解究竟需要多少台服务器、多大容量的存储和数据库的功能等。并需要部署运行应用程序和依赖的软件到基础设施之上。假设我们不想在这些细节上花费精力,是否有一种简单的架构模型能够满足我们这种想法?这个答案已经存在,这就是今天软件架构世界中新鲜但是很热门的一个话题——Serverless(无服务器)架构。什...

2018-03-22 10:22:00

Postgresql学习及特性

### 一. Postgresql简介#### 1.1 PostgreSQL概述- PostgreSQL数据库是目前功能最强大的开源数据库,支持丰富的数据类型(如JSON和JSONB类型、数组类型)和自定义类型。而且他提供了丰富的接口,可以很容易的扩展它的功能,如可以再GiST框架下实现自己的索引类型等。PostgreSQL是完全的事务安全性数据库,完整地支持外键、联合、视图、触发

2018-01-08 17:30:45

PostgreSQL 传统 hash 分区方法和性能

背景除了传统的基于trigger和rule的分区,PostgreSQL 10开始已经内置了分区功能(目前仅支持list和range),使用pg_pathman则支持hash分区。从性能角度,目前最好的还是pg_pathman分区。但是,传统的分区手段,依旧是最灵活的,在其他方法都不奏效时,可以考虑传统方法。如何创建传统的hash分区1、创建父表creat

2018-01-03 17:11:58

MySQL之——数据表分区技术PARTITION浅析

这篇文章主要介绍了Mysql数据表分区技术PARTITION浅析,分别介绍了 Mysql 中的分区技术 RANGE、LIST、 HASH,需要的朋友可以参考下。在这一章节里, 我们来了解下 Mysql 中的分区技术 (RANGE, LIST, HASH) Mysql 的分区技术与水平分表有点类似, 但是它是在逻辑层进行的水平分表, 对于应用而言它还是一张表, 换句话说: 分

2018-01-03 17:02:27

利用缓存实现分布式并发锁

本文介绍是用Tair实现,其实其他缓存如Redis道理也是一样的。最近大量使用到了Tair来控制并发,有点心得,总结如下。利用Tair实现全局并发锁现在基本上线上服务器都是集群环境,那么当我们需要对中心化数据(例如:Tair、数据库)的同一内容进行读写时就会碰到并发问题,这是一种非常常见的需求。解决并发问题的方法无非有两种,在并发点控制并发或者在并发源头控制。图

2017-06-27 09:23:27

并发编程之ThreadLocal、Volatile、synchronized、Atomic关键字扫盲

前言对于ThreadLocal、Volatile、synchronized、Atomic这四个关键字,我想一提及到大家肯定都想到的是解决在多线程并发环境下资源的共享问题,但是要细说每一个的特点、区别、应用场景、内部实现等,却可能模糊不清,说不出个所以然来,所以,本文就对这几个关键字做一些作用、特点、实现上的讲解。1、Atomic作用对于原子操作类,Java的conc

2017-05-10 11:43:46

Intellij13 IDEA常用快捷键 (mac 10.5 +),优化,使用出现的问题汇总

使用中出现的问题:问题1:安装一次后,Intellij默认保存了你的配置信息,出现问题后重安装后配置依旧是以前的。删除关联的配置文件,地址是:~User/资源库/Preferences/Intellijidea13 即可。问题2:web项目到入后无法run起来检查项目的根目录是web还是WebRoot,然后在项目设置中的Facets中设置对于的输出编译路径。

2017-04-20 10:44:16

Spring Boot Admin 的使用

一、前言spring Boot Admin 用于监控基于 Spring Boot 的应用。官方文档在这里(v1.3.4):《Spring Boot Admin Reference Guide》实践的过程中,感觉这个 User Guide 结构上还是说的不太明白。所以我就大概写一遍我的实践过程与理解。阅读此文前提条件是:使用过 Maven。你跑过基于 Spring Boot

2017-03-24 18:07:30

部署微服务:Spring Cloud vs. Kubernetes

原文链接:deploying-microservices-spring-cloud-vs-kubernetes译文链接: 部署微服务:Spring Cloud vs. KubernetesSpring Cloud vs. Kubernetes,谁才是部署微服务的最佳拍档?Spring Cloud和Kubernetes都声称自己是开发和运行微服务的最佳环境,但两者在特性上并不

2017-03-24 14:39:27

使用Sidecar将Node.js引入Spring Cloud

使用Sidecar将Node.js引入Spring Cloud理论简介Spring Cloud是目前非常流行的微服务化解决方案,它将Spring Boot的便捷开发和Netflix OSS的丰富解决方案结合起来。如我们所知,Spring Cloud不同于Dubbo,使用的是基于HTTP(s)的Rest服务来构建整个服务体系。那么有没有可能使用一些非JVM语言,例如我们所熟悉的Node.js

2017-03-24 09:41:26

关于架构优化和设计,架构师必须知道的事情

概述这篇译文最早发布在infoQ下面的一个微信公众号:“聊聊架构”上,想着我在园子几乎沉寂了接近两年之久,于是借机复活。哈哈哈,这是一篇关于架构的译文,会介绍比较多的一些工具、以及框架,给对架构感兴趣的同学一个知识扩充。近几年来随着互联网的飞速发展,新的架构实践方式不断涌现,但是有一件事情是永恒不变的,那就是-“架构之道”;关于如何设计出灵活、高可用性以及能够快速适应变化的系统架构,我们依

2017-03-23 17:07:08

微服务架构下,打造别具一格的服务治理体验(下)

作者介绍  张真,宜信技术研发中心高级架构师,负责基础系统架构演进与优化、服务治理、监控平台、微服务建设、DevOps平台、自动化测试框架及电子签约、短信、邮件等应用系统。早年就职于IBM中国研发中心,负责IBM WebSphere应用服务器的设计与开发。目前主要关注微服务架构实施,微智能设计思想应用,虚拟化技术应用,共识计算研究。  上文我们已经详细讲到了一些经典微服务架构的特点及问题,

2017-03-23 15:41:38

微服务架构下,打造别具一格的服务治理体验(上)

当业务服务能力X调用Http服务能力A遇到异常时,服务能力实现框架会自动捕获异常信息,并将系统性异常(Timeout,SocketException等等)以及某些业务异常(基于策略)提交到服务注册中心,这个过程不必等到心跳周期到达而是立即触发的,从而服务注册中心可以实现对这些服务接口的快速隔离。作者介绍   张真,宜信技术研发中心高级架构师,负责基础系统架构演进与优化、服务治理、监控平

2017-03-23 15:40:33

微服务技术栈

构建微服务时,我们深深进入了分析分布式系统 - 一个已经研究了40年以上的技术主题,复杂的自适应系统理论已经深入人心有很长的时间。从技术的角度来看,我们需要解决的事情如下,这也是我们进来要深入研究的微服务领域的技术栈:(1)部署(2)交付(3)API(4)版本控制(5)合同(6)缩放/自动缩放(7)服务发现(8)负载均衡(9)路由/自适应路由(10)健康检查

2017-03-23 15:36:12

微服务理论与实践(六)-服务注册与发现

1.背景l  服务的客户端(包括API网关或者其他服务)如何获取服务端实例的位置l  每个服务端实例都会在特定的位置(主机及端口)通过HTTP/REST或者Thrift等方式发布一个远程APIl  服务端实例的具体数量和位置会发生动态变化l  虚拟机与容器通常会被分配动态IP地址 2.方案2.1 客户端服务发现向某一服务发送请求时,客户端会通过查询Servc

2017-03-23 15:34:29

微服务理论与实践(五)-微服务之间的交互

Microservice架构模式中的“开”是各个服务的内部实现,而其中的“闭”则是各个服务之间相互沟通的方式 微服务必须使用进程间通信机制来交互。微服务架构有两类IPC机制可选,异步消息机制和同步请求/响应机制。当设计服务的通信模式时,需要考虑几个问题:服务如何交互,每个服务如何标识API,如何升级API,以及如何处理部分失败。1. API GateWay 模式1.1 背景

2017-03-23 15:33:23

查看更多

勋章 我的勋章
  • 分享宗师
    分享宗师
    成功上传21个资源即可获取