两年前接触到了微服务的概念,面对日益膨胀的系统感觉豁然开朗。之后的两年逐步把系统按微服务的架构理念进行了重构,并将业务迁移到了新架构之上。感觉现在差不多是时候写一篇关于微服务的总结文章了。
定义
在 Martin Fowler & James Lewis 的文章(参考[1])里给出了微服务架构的一个定义:
微服务架构即是采用一组小服务来构建应用的方法。
每个服务运行在独立的进...
分类:
其他好文 时间:
2016-04-26 20:59:06
阅读次数:
186
spring boot的出现就是为了简化spring项目的构建,让你尽快的上手一个spring项目,并快速的生成一个可执行的spring微服务。让我们来看看多简单,这里我们直接用spring的IDE,Spring Tool Suite,建第一个restful web服务。1.在工作空间的右键,直接新建一个spring start project
2.选择构建spring boot 项目的工具,这里...
分类:
编程语言 时间:
2016-04-26 20:28:47
阅读次数:
198
微软在Build2016大会上表示,未来将是一个充满聊天机器人的世界,为此他们推出了微软Bot Framework,能够允许任何人制作自己的聊天机器人,微软则提供“cognitive microservices”(认知微服务),该工具能够理解自然语言或者对图片进行分析,初期开放22个API,可用于集 ...
分类:
其他好文 时间:
2016-04-25 13:06:24
阅读次数:
516
在《WeText项目:一个基于.NET实现的DDD、CQRS与微服务架构的演示案例》文章中,我介绍了自己用Visual Studio 2015(C# 6.0 with .NET Framework 4.6.1)开发的DDD/CQRS/微服务架构的案例项目:WeText。文章发出后反响很好,也很感谢大... ...
分类:
系统相关 时间:
2016-04-24 14:09:12
阅读次数:
522
1. REST名称由来 REST全称为Representational State Transfer,即表述性状态转移,最早由Roy Feilding博士在世纪之交(2000年)提出,喜欢追根溯源的朋友可以读一下他的博士论文《Architectural Styles and the Design o ...
第一篇 《连接配置》 第二篇 《连接池》 第三篇 标准通信 一、TCP的连接是无状态的,怎样知道我的请求被服务端接受并且正确执行了呢? 我的解决方案是使用自己定义的标准输入输出,Push操作和Delete操作都要返回Json的字符串,也就是说,每一个Thrift接口方法的输入参数和返回参数都是Jso ...
分类:
其他好文 时间:
2016-04-23 10:17:20
阅读次数:
203
智慧校园产品微服务架构
李万鸿
根据目前智慧校园、梦想学堂等产品存在的问题,针对快速开发、海量用户、大量数据、低延迟等互联网应用的实际需要,通过对业务架构、系统架构、基础架构、技术架构进行分析,采用先进实用的微服务SOA架构重构智慧校园、数字化校园等产品,彻底解决系统解耦、性能低下等问题,而且支持云计算部署,...
分类:
其他好文 时间:
2016-04-22 18:57:24
阅读次数:
282
一、Thrift是什么? 关于Thrift的基本介绍,参看张善友的文章Trift简介。 二、为什么使用微服务? 在公司的高速发展过程中,随着业务的增长,子系统越来越多。各系统间又不同程度的在某些逻辑上出现重合的场景。为了高效率的开发,必然出现到重用这些逻辑的实现代码的情况,通常的做法是直接引用相关的 ...
分类:
其他好文 时间:
2016-04-21 21:47:49
阅读次数:
243
在2015年初,我们构建了一个只做一件事(也的确做的非常好)的微服务——查找地理围栏(geofence lookup)。一年后,这项服务已经成为Uber数百个正在运行的服务中每秒查询次数(QPS)最高的服务。接下来,本文将谈论我们构建这项服务的原因以及我们是如何使用Go语言快速构建和扩展这项服务的。 ...
分类:
编程语言 时间:
2016-04-18 11:42:28
阅读次数:
190
微服务确实很受欢迎,但是对于微服务的误解也是事实,本文对这些误解一一来介绍下: 一、微服务不够“微”? 尽管微服务定义的很明确,但是开发者社区对它的解释却颇有争议,主要的一些问题如下: 1.它是否是单体架构的代表? 2.它是否是单体服务的代表? 3.它是否是逻辑功能的组合? 下面让我们以银行应用为例 ...
分类:
其他好文 时间:
2016-04-18 10:08:12
阅读次数:
198