本文作者是Enchant的架构师,他最近研究了Netflix、SoundCloud、谷歌、亚马逊、Spotify等公司的微服务实践,并根据自己的理解总结出了一套适用于现代Web和云技术的微服务实战经验。本文是其中的第二篇,重点介绍服务的交互以及API的设计(第一篇链接)。
微...
water
8年前 (2016-11-10) 2161℃ 0评论
0喜欢
Cisco发布的总结报告《泽字节时代:趋势和分析》中指出:2016年末,全球年度互联网流量将突破ZB大关(1ZB 泽字节:1000EB艾字节),并将于2020年达到2.3ZB;互联网的流量将在未来五年内增长三倍;智能手机终端的流量将于2020年超过PC终端。(注:泽字节为十万亿亿...
water
8年前 (2016-11-02) 2279℃ 0评论
0喜欢
几个月前,我同Eric Evans参加一个工作讨论组,Eric谈到某种接口风格,我们决定将它命名为Fluent Interface(连贯接口)。这不是个通用风格,但我们认为应该值得认识。可能认识它的最好方式是通过例子。 &...
water
8年前 (2016-11-01) 3102℃ 0评论
0喜欢
架构师在设计微服务架构的时候,一般会关注模式、拓扑以及粒度等问题,但是有一个最为基础的决策是线程模型。我们现在有了很多的开源工具、编程语言和技术栈,软件架构师所面临的选择要比以往更多了。
这样的话,我们很容易就会迷失在语言的细节和/或不同库的差异之中,从而无法分辨什么东西才是最重...
water
8年前 (2016-10-31) 2446℃ 0评论
0喜欢
程序中记录日志一般有两个目的:Troubleshooting和显示程序运行状态。好的日志记录方式可以提供我们足够多定位问题的依据。日志记录大家都会认为简单,但如何通过日志可以高效定位问题并不是简单的事情。这里列举下面三个方面的内容,辅以代码示例,总结如何写好日志,希望对他人有所启...
water
8年前 (2016-09-13) 2629℃ 0评论
0喜欢
随着业务的发展,代码量的膨胀和团队成员的增加,传统单体式架构的弊端越来越凸显,严重制约了业务的快速创新和敏捷交付。为了解决传统单体架构面临的挑战,先后演进出了SOA服务化架构、RPC框架、分布式服务框架,最后就是当今非常流行的微服务架构。
微服务化架构并非银弹,它的实施本身就会面...
water
8年前 (2016-08-25) 3502℃ 0评论
0喜欢
Memcached 问世以来,风声水起,也不断更新着,当初只是做分布式缓存, 到 MemBase ,已经是可以分布式缓存+存储机制的产品了。 最后听说与 CouchDb 合并成了: CacheBase 。
Memcache基本上已经是开发的标配了,但是对于Memcache集群,...
water
9年前 (2016-07-12) 3683℃ 0评论
0喜欢
couchbase作为新兴的NOSQL数据库,可堪使用的资料少的可怜,更别提中文资料了,基本上就是在官网的手册和论坛上查询所需资料,所以这
要求有一定的英语基础,词汇量不是问题,不认识的直接百度,关键是语法和耐心要过关,我从刚接触couchbase开始天天啃英文手册也是读得烦躁不...
water
9年前 (2016-07-05) 4095℃ 0评论
2喜欢
在移动互联网时代,我们面对的是更多的客户端,更低的请求延迟,这当然需要对数据做大量的 Cache 以提高读写速度。
术语
节点:指集群里的一台服务器。
现有 Cache 系统的特点
目前业界使用得最多的 Cache 系统主要是 memcached 和 redis。 这两个 Cac...
water
9年前 (2016-07-05) 3196℃ 0评论
0喜欢
You should never do your asynchronous work alone.— Jon Brisbin
完成Reactor 1后写到You sho...
water
9年前 (2016-07-05) 2629℃ 0评论
0喜欢
原文地址:http://projectreactor.io/docs/reference/
Reactor简介
Reactor是一个基础库,用在构建实时数据流应用、要求有容错和低延迟至毫秒、纳秒、皮秒的服务。
— PrefaceTL;DR
什么是Reactor?
让我们大致了...
water
9年前 (2016-07-05) 2712℃ 0评论
0喜欢
nosql数据库大多采用leveldb或者类似leveldb的存储引擎,我们来看看它为什么能够这么快。
levelDB则采用了一种全新的数据结构,叫做log structured merge tree(LSMT),写入数据时,一方面会把数据保存到内存,另一方面写入到日志,防止do...
water
9年前 (2016-06-16) 3172℃ 0评论
0喜欢
LinkedIn开源了PalDB,一个可嵌入的键值对存储数据库,比LevelDB快8倍,并且内存占用比hashset少数个量级。
PalDB是一个由LinkedIn开源并使用Java编写的一次写入键值存储数据库。当存储创建后所有的操作都是禁止的,它是只读的。这样做的目的是提升读操...
water
9年前 (2016-06-16) 3191℃ 0评论
1喜欢
Olery成立于2010年,总部位于阿姆斯特丹。该初创公司为酒店行业提供声誉管理与媒体监控工具,帮助酒店将网络评论和社交媒体反馈转化成可执行的商业智能分析。
Olery成立最初是使用MySQL来存储(用户、合同等等)核心数据,用MongoDB来存储评论及其类似的数据(即哪些在数据...
water
9年前 (2016-06-15) 2801℃ 0评论
0喜欢
ice-dubbo-thrift-grpc性能测试对比,本次测试过程中还发现了一个支付宝的秘密,附件文档中会详细说明。
测试说明
本测试只是个人为了对rpc进行技术选型,测试可能不够严谨,对某些rpc的参数可能也不是最优,如果你知道更优的参数配置或者...
water
9年前 (2016-06-15) 5226℃ 0评论
1喜欢
1、ICE是什么? ICE是ZEROC的开源通信协议产品,它的全称是:The Internet Communications Engine,翻译为中文是互联网通信引擎,是一个面向对象的中间件,使我们能够以最小的代价构建分布式应用程序。ICE使我们专注于应用逻辑的开发,它...
water
9年前 (2016-06-15) 2815℃ 0评论
0喜欢
摘要:如果管理着几百台机器,一天老板问:今天哪台机器宕机了?影响了多少个用户订单请求?是谁的代码?可能你需要使用splunk了。
1 SPLUNK简介
1.1 什么是splunk
Splunk is software t...
water
9年前 (2016-05-24) 3935℃ 0评论
1喜欢
EDM是Email Direct Marketing的缩写,即电子邮件营销。说到EDM营销,就必须有EDM软件对EDM内容进行发送,企业可以通过使用EDM软件向目标客户发送EDM邮件,建立同目标顾客的沟通渠道,向其直接传达相关信息,用来促进销售。EDM软件有多种用途,可以发送电子...
water
9年前 (2016-05-24) 2872℃ 0评论
0喜欢
我们知道基于JVM的Scala是一种函数式语言,现在Java 8也推出了lambda等函数式功能,那么现在我们有了三种疑问:1. Scala会不会替代Java?2. Java会不会替代Scala3. Java程序员是否有必要学习Scala?
对于这三个疑问,我的观点是:1. Ja...
water
9年前 (2016-05-24) 3539℃ 0评论
1喜欢
Producer Commands
—————–
The "put" command is for any process that wants to insert a job into...
water
9年前 (2016-05-23) 3712℃ 0评论
0喜欢