11 天前 / 张逸
我们开发的一个基于大数据平台的数据仓库,选择了Flink作为数据处理的底层框架。我们主要看重于它在流处理的低延迟性,消息传递保证的extractly once特性;它为流处理和批处理提供了相对统一的API,支持Java、Scala和Python等主流开发语言,同时还较好地支持了SQL。Flink搭建了非常棒的基础设施,例如它可以和ZooKeeper、YARN集成起来,保证处理功能的高可用性与水平扩展的集群能力,同时还提供了相对开放的扩展能力,使得我们可以较容易地在已有功能基础之上实现定制开发。 我们基于Flink开发了自己的底层框架“海纳(haina)”,这是取“海纳百......
66 天前 / 懒人yp
本文介绍了 Istio 和 Kubernetes 中的一些服务和流量的抽象模型。虽然 Istio 一开始确定的抽象模型与对接的底层平台无关,但目前来看基本绑定 Kubernetes,本文仅以 Kubernetes 说明。另外在 ServiceMesher 社区中最近有很多关于 Istio、Envoy、Kubernetes 之中的服务模型关系的讨论,本文作为一个开篇说明,Kubernetes 和 Isito 之间有哪些共有的服务模型,Istio 在 Kubernetes 的服务模型之上又增加了什么,为什么说 Kubernetes service 存在的意义仅剩下做服务发现。 服务具有多个版本。在 CI/CD 过程中,同一个服务可能同时部署在多个环境中,......
309 天前 / hyper0x
鲁迅曾经说过,复杂的问题都能用增加一层抽象来解决。(鲁迅: 我特么没说过!)在实际工程中,为了解耦,可能需要定义大量的接口。如在用户管理系统中,可能含有一个像根据用户名检索用户的服务 UserSearcher:type UserSearcher interface{ Search(name string)([]*User,error)}一般情况下在项目初期...
396 天前 / hello2dj
原文地址 先上图 先来普及一下抽象漏洞wiki抽象漏洞总结一小下:抽象漏洞告诉我们出来混早晚要还的,无论你怎么去屏蔽复杂,怎么去抽象,总是不完整的总是会有漏洞的。迭代器和可迭代对象的一个概述在js中,迭代器和可迭代对象是顺序访问数据的抽象层接口。我们可以在数组或者优先级队列中看到他们。一个迭代器就是一个拥有next方法的对象。当你调用next()的时候,他会...
429 天前 / Yeming
作者 | 章烨明杏仁医生CTO。中老年程序员,关注各种技术和团队管理。 我们在日常开发中,我们常常会提到抽象。但很多人常常搞不清楚,究竟什么是抽象,以及如何进行抽象。今天我们就来谈谈抽象。 什么是抽象?首先,抽象这个词在中文里可以作为动词也可以作为名词。作为动词的抽象就是指一种行为,这种行为的结果,就是作为名词的抽象。Wikipedia 上是这么定义抽象的:...
442 天前 / yaya
原文作者:Kaloyan Kosev 原文链接:https://css-tricks.com/adapting-javascript-abstractions-time/ 翻译译者:小溪里 校对:华翔、小冬 即使还没有读过我的文章《在处理网络数据的 JavaScript 抽象的重要性》,你也很有可能已经意识到代码的可维护性和可扩展性很重要,这也是介绍Java...
523 天前 / gansteed
这一系列是我学习Learn You a Haskell For Great Good之后,总结,编写的学习笔记。这个系列主要分为五个部分:从递归说起 从命令式语言进行抽象 Haskell初步:语法 Haskell进阶:Moniod, Applicative, Monad 实战:Haskell和JSON 从移动端推送看什么是抽象以及如何抽象这一篇我们讲要讲述一...
541 天前 / FledgeXu
缘起最近在试图学习Haskell,这门除了赞美就是段子的语言(Lisp:论段子,不是针对谁,在座的都是**)。在许多介绍Haskell的文章中都提到的一个观点:“一个通过编译的Haskell程序是没有错误的。”我因此困扰了好久,在读了许多关于类型系统的文章之后才稍有拔云见日之感,此篇博文权当记录。错误“一个通过编译的Haskell程序是没有错误的。”首先这句...
559 天前 / Charles Tang
Yii 框架从 2.0 开始,底层抽象上面发生了一些变化。比如,多了 DI 和 Service Locator 等设计模式相关的抽象。这两天,专门看了下代码,写下一点我的想法。上面的图是,是我用 Visual Paradigm 画的类图。从图里我们看到,2.0 版本以来,最根部的抽象是一个叫 Configurable 的接口,其主要作用就是说明所有的类都可...
579 天前 / GJ
摘要:本文属于原创,欢迎转载,转载请保留出处:https://github.com/jasonGeng88/blog 文章一:带着问题学 Kubernetes 架构 文章二:带着问题学 Kubernetes 基本单元 Pod 当前环境Mac OS 10.11.xkubectl == v1.6.4minikube == v0.19.1docker == 1.1...
667 天前 / 张逸
根据正交设计的基本原则,如果设计出现重复的控制逻辑,可抽象出稳定的抽象;借助于Scala强大的可扩展能力,可以将「小括号」神奇地转换为「大括号」,让用户代码感觉是一种新的控制结构。本文通过一个简单的例子,通过若干迭代,遵循正交设计的基本原则,灵活地应用重构,逐渐改进设计,以供参考。需求1:搜索目录下扩展名为.scala的所有文件快速实现object File...
667 天前 / 码农翻身
2015年大热的动画片《动脑特工队》中描述了这么一个场景, 冰棒带领乐乐和忧忧抄近路去乘坐思维列车,所谓的“近路”就是穿过抽象思维的房间,在这个房间里, 他们先是变成了变成3D的块,就像计算机图形学里展示的那样: 然后变成平面的图形最后只剩下一些线条了 !真是非常生动的展示了人类做抽象活动的过程。 在软件业,抽象能力的重要性怎么说都不为过,因为软件开发是一个...