首页
学习
活动
专区
工具
TVP
发布

ImportSource

专栏成员
207
文章
403493
阅读量
68
订阅数
微服务之间的身份验证和授权都是怎么做的?
服务和外部世界的身份验证可以使用单点登录网关,比如可以通过位于服务和外部世界的网关来做一些验证。
ImportSource
2018-12-21
5.9K0
服务之美-读《微服务设计》笔记全集(一)
最近在微信读书上读《微服务设计》一书,目前读了30%多了,其间想法有点多,现分享给大家。
ImportSource
2018-12-19
5310
DDD究竟是个啥?怎么落地?
领域驱动设计(Domain Driven Design,以下简称DDD)这个话题,经常会出现在各大技术圈。特别是微服务出现后,海内外的大佬们又把微服务和DDD放到了一起说事情。
ImportSource
2018-07-25
1.3K0
微服务到底有多微?How big is a microservice?
关于这个问题,有人说用代码行数来衡量微服务到底有多微,我们都知道不同语言写的微服务行数肯定都不统一,这个显然行不通;还有人说用重写时间来衡量,什么意思呢?就是说一个微服务如果拉倒重来得多长时间,这个显然不是一个衡量标准。既然有的书籍提到了,我们在这里就提一下。 那么究竟用什么来划分微服务的边界呢? 我们认为应该从 具体的业务来考虑。其实还是和我们传统的一体化架构思维角度是一样的。总是先从业务功能去考虑一定不会出错的。 我们划分微服务首先应该要保证微服务的业务对立性。 那么这个独立性怎么去保证呢?也有很多的做
ImportSource
2018-04-03
6580
微服务应具备的12个属性
该文翻译自Pivotal公司的 Matt Stine大牛的书籍《Migrating to Cloud Native Application Architectures》。 “Twelve-Factor”应用程序是针对cloud-native应用程序架构的众多模式的一个集合,最初是由Heroku的工程师们提炼出来的。 这些模式描述了一个云原生的应用程序的原型。他们专注性能,安全性和扩展性,强调声明性配置,无状态/无共享的进程水平扩展,和总体松耦合的部署环境。云应用平台,如Cloud Foundry,Hero
ImportSource
2018-04-03
1.1K0
CQRS距你有多远?
前面两集(微服务业务开发三个难题-拆分、事务、查询(上),微服务业务开发三个难题-拆分、事务、查询(下))翻译了Chris的大作。为了保证原意不跑偏同时通俗易懂,着实费了老大劲。今天我想把自己对CQRS的理解再用大白话说出来,与没时间看长文的各位共享。 毫无疑问。CQRS是治愈微服务分布式查询的良药之一。 CQRS核心的内容就是:把写入和读取分离。也就是,Command Query Responsibility Segregation,命令查询责任分离。 还是得从背景说起,我们都知道每个微服务应用都有自己的
ImportSource
2018-04-03
1.3K0
微服务-捣乱的猴子
在微服务的架构中有这样一个词,叫Chaos Monkey。翻译过来就是捣乱的猴子。这个概念最早是被在Taleb的书中提到。Antifragile。抵抗力里边的Random House。 如果说脆弱性在计算机世界指的是当受到高并发等其他压力后系统就会变得越来越脆弱甚至崩溃。这里说的这个脆弱性就是fragility这个单词。那么这个脆弱性的反义词是什么呢? 相信很多人会回答说那就是当受到压力时系统依然不脆弱。相信这是我们很多人的第一反应。 然而上面说到的那位Taleb先生却提出了一种全新的观点,就是脆弱性也就
ImportSource
2018-04-03
1.3K0
微服务-捣乱的猴子
在微服务的架构中有这样一个词,叫Chaos Monkey。翻译过来就是捣乱的猴子。这个概念最早是被在Taleb的书中提到。Antifragile。抵抗力里边的Random House。 如果说脆弱性在计算机世界指的是当受到高并发等其他压力后系统就会变得越来越脆弱甚至崩溃。这里说的这个脆弱性就是fragility这个单词。那么这个脆弱性的反义词是什么呢? 相信很多人会回答说那就是当受到压力时系统依然不脆弱。相信这是我们很多人的第一反应。 然而上面说到的那位Taleb先生却提出了一种全新的观点,就是脆弱性也就
ImportSource
2018-04-03
1.3K0
微服务中一个监控Spring Boot的神器
你是不是在一个月黑风高的晚上想过这么一件事情,就是想把spring boot actuator的那些endpoint可视化,是不是想着自己搞一个UI。 每当你有这种想法的时候,建议你一定要首先想想:开源世界是不是早就有人做了。 没错,有人为你做好了。其中最有名的当属spring-boot-admin这个项目了。 spring boot admin是个什么鬼呢?就是一个可以监控和管理spring boot应用的admin管理应用。原理很简单,就是把spring boot actuator中的那些endpoin
ImportSource
2018-04-03
9.5K2
微服务RESTful接口文档生成神器Swagger初探
在微服务构建的过程中,你也许发现写的那些restful风格的接口需要编写文档。 文档一般包括要输入哪些参数,哪些参数是必填的,哪些是选填的。还有返回结果的格式以及结果示例。 也许你可以通过在git上写markdown文档来做这些事情。 但每个接口对应的文档地址这些对应关系你又需要关心。 通过swagger,这一切你都不需要做了。 在你编写自己的restful接口的时候,只需要添加一些annotation就可为你自动的生成接口文档。你上面的那些内容都为你自动生成。 甚至连简单的功能测试表单都为你做好了。 总
ImportSource
2018-04-03
1K0
微服务弹性框架hystrix-javanica详解(下)
续上集。我们之所以向你介绍有关javanica的内容,很大一部分原因,是因为spring cloud中集成了javanica,我们都知道spring cloud使用了大量的注解,javanica基于注解的风格和spring cloud不谋而合,在最新的spring cloud中集成了1.5.6的hystrix-javanica。 本集主要介绍请求缓存以及配置和批处理。 微服务弹性框架hystrix-javanica详解(上) Request Cache 请求缓存 Javanica提供特定的注解,以便启
ImportSource
2018-04-03
1.1K0
微服务弹性框架hystrix-javanica详解(上)
Java语言相比其他语言有一些比较great的优点,那就是反射(refleaction)和注解(annotation)。 几乎所有的流行框架比如Spring, Hibernate, myBatis等等,都最大化的使用了这两个特性。 于是Hystrix也想通过引入注解来改善Hystrix的发展。 目前使用Hystrix涉及编写大量的代码,这是快速发展的障碍。 你可能花了很多时间编写Hystrix命令。 Javanica项目的想法是通过引入支持注解让你更容易地使用Hystrix。在传统的使用Hystrix时,你
ImportSource
2018-04-03
2.2K0
[微服务]非Java应用如何使用Eureka?
如果非java应用也想要使用Eureka的话,Eureka为你提供了REST api。 appID是指应用程序的名称,instanceID是一个实例的唯一ID.在AWS cloud中, instanceID就是指实例的id,但在其他的数据中心,instanceID是实例的hostname。 针对JSON/XML,提供的内容类型必须是application/xml或application/json。 Note:如果是 Spring Cloud请去掉REST中的v2。至少目前是这样的。 操作HTTP actio
ImportSource
2018-04-03
1.6K0
CI漫谈
持续集成(CI)在软件开发中是一个流行的技术,特别是伴随着微服务以及devops,这个名词被吵得更火了,在各种大会上人们都会谈到他们自己是怎么玩的,而且持续集成的工具也有很多。 三个问题验证CI 但是我们都知道,任何正规的技术最后都需要一个认证程序。幸运的是,现在已经存在了。 下面的一个有趣的问卷调查据说就算是一个认证程序。以下的场景是我们从Martin Fowler的文章中找到的。 说有个叫Jez Humble的总是喜欢通过如下几个问题来衡量团队们是不是在做持续集成,团队们做的持续集成到底算不算真正的持续
ImportSource
2018-04-03
8730
必须要讨论的四种分布式事务方案
分布式事务伴随着微服务被人们一再提起。服务与服务之间的事务怎么处理比较好?到底使用哪种选择方案比较好。相信有人觉得分布式事务实现起来比较困难甚至不可能。也有人觉得2pc或3pc就够了等等。本文接下来尝试对2或3pc、补偿、事件源、聚合内事务进行逐一探讨,以求对这四种方式获得一个基本的认识。不妥之处欢迎指正。 两阶段、三阶段提交 两阶段提交要求及时的确认(comfirm)。然而这在很多场景下根本就不适用。因为很多场景是异步的。 而且很多的nosql数据库根本不支持acid事务,更别说2pc了。所以2pc还是
ImportSource
2018-04-03
7200
微服务业务开发三个难题-拆分、事务、查询(下)
上集:微服务业务开发三个难题-拆分、事务、查询(上) 上集我们阐述了使用微服务体系架构的关键障碍是领域模型,事务和查询,这三个障碍似乎和功能拆分具有天然的对抗。只要功能拆分了,就涉及这三个难题。 然后我们向你展示了一种解决方案就是将每个服务的业务逻辑实现为一组DDD聚合。然后每个事务只能更新或创建一个单独的聚合。然后通过事件来维护聚合(和服务)之间的数据一致性。 在本集中,我们将会向你介绍使用事件的时候遇到了一个新的问题,就是怎么样通过原子方式更新聚合和发布事件。然后会展示如何使用事件源来解决这个问题,
ImportSource
2018-04-03
2.1K0
微服务业务开发三个难题-拆分、事务、查询(下)
上集:微服务业务开发三个难题-拆分、事务、查询(上) 上集我们阐述了使用微服务体系架构的关键障碍是领域模型,事务和查询,这三个障碍似乎和功能拆分具有天然的对抗。只要功能拆分了,就涉及这三个难题。 然后我们向你展示了一种解决方案就是将每个服务的业务逻辑实现为一组DDD聚合。然后每个事务只能更新或创建一个单独的聚合。然后通过事件来维护聚合(和服务)之间的数据一致性。 在本集中,我们将会向你介绍使用事件的时候遇到了一个新的问题,就是怎么样通过原子方式更新聚合和发布事件。然后会展示如何使用事件源来解决这个问题,
ImportSource
2018-04-03
2.1K0
微服务业务开发三个难题-拆分、事务、查询(上)
微服务架构变得越来越流行了。它是模块化的一种方法。它把一整块应用拆分成一个个服务。它让团队在开发大型复杂的应用时更快地交付出高质量的软件。团队成员们可以轻松地接受到新技术,因为他们可以使用最新且推荐的技术栈来实现各自的服务。微服务架构也通过让每个服务都被部署在最佳状态的硬件上而改善了应用的扩展性。 但微服务不是万能的。特别是在 领域模型、事务以及查询这几个地方,似乎总是不能适应拆分。或者说这几块也是微服务需要专门处理的地方,相对于过去的单体架构。 在这篇文章中,我会描述一种开发微服务的方法,这个方法可以解
ImportSource
2018-04-03
2.2K0
微服务业务开发三个难题-拆分、事务、查询(上)
微服务架构变得越来越流行了。它是模块化的一种方法。它把一整块应用拆分成一个个服务。它让团队在开发大型复杂的应用时更快地交付出高质量的软件。团队成员们可以轻松地接受到新技术,因为他们可以使用最新且推荐的技术栈来实现各自的服务。微服务架构也通过让每个服务都被部署在最佳状态的硬件上而改善了应用的扩展性。 但微服务不是万能的。特别是在 领域模型、事务以及查询这几个地方,似乎总是不能适应拆分。或者说这几块也是微服务需要专门处理的地方,相对于过去的单体架构。 在这篇文章中,我会描述一种开发微服务的方法,这个方法可以解
ImportSource
2018-04-03
2.2K0
微服务也许是一种文化?
好久没有写有关微服务的东西了。之前写的也都是偏实际操作的类似教程的东西。 今天斗胆想尝试着分享有关微服务什么时候该入场的问题。 就是微服务化这个过程,我们什么时候开始比较合适?以怎样的规模开展比较合
ImportSource
2018-04-03
6180
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档