您的位置:知识库 » 软件设计

“软件设计”文章列表

本文从互联网收集并整理了推荐系统的架构,其中包括一些大公司的推荐系统框架(数据流存储、计算、模型应用),可以参考这些资料,取长补短,最后根据自己的业务需求,技术选型来设计相应的框架。后续持续更新并收集。。。 图1 界面UI那一块包含3块东西:1) 通过一定方式展示推荐物品(物品标题、缩略图...
作者: kobeshow   2020-05-28 16:45:08 阅读:6885 标签:推荐系统 架构设计
大约在60年前,美国军方的软件开发开始遵循一个原则,叫KISS原则。他们希望武器系统中所用的每个指令都是极其简单和傻瓜式的。这个原则后来在编程领域中被广泛采用,如今好多著名的开源框架都是遵循这一原则来开发,并最终取得了巨大的成功。 在上一文中《Apache的架构师们遵循的30条设计原则》,第...
作者: 贺卓凡   2020-01-23 19:52:25 阅读:13915 标签:编程原则 框架
Ref Warning:设计文档的对应的 k8s 版本为1.7 Q: What is GC of Kuernetes ? GC 是 Garbage Collector 的简称。从功能层面上来说,它和编程语言当中的「GC」 基本上是一样的。它清理 Kubernetes 中「符合特定条件...
作者: 要没时间了   2019-12-14 23:31:38 阅读:4111 标签:k8s
需求缘起 在微服务架构中,随着服务的逐步拆分,数据库私有已经成为共识,这也导致所面临的分布式事务问题成为微服务落地过程中一个非常难以逾越的障碍,但是目前尚没有一个完整通用的解决方案。 其实不仅仅是在微服务架构中,随着用户访问量的逐渐上涨,数据库甚至是服务的分片、分区、水平拆分、垂直拆分已经逐渐成为较...
作者: 天如   2019-10-13 20:36:50 阅读:27384 标签:分布式事务
Excel很老,Excel很土,Excel一点也不sexy;微服务新,微服务很潮门,微服务很高大上。那么,Excel和微服务有什么关系? 上个月看了篇文章,The Unbunlding of Excel。作者认为,对于初创公司(尤其是非“纯IT”初创公司)来说,Excel几乎包办各种工作。想...
作者: Yurii   2018-07-04 21:10:15 阅读:5271 标签:微服务 架构
前言 至少30年以前,一些软件设计人员就已经意识到领域建模和设计的重要性,并形成一种思潮,Eric Evans将其定义为领域驱动设计(Domain-Driven Design,简称DDD)。在互联网开发“小步快跑,迭代试错”的大环境下,DDD似乎是一种比较“古老而缓慢”的思想。然而,由于互联...
作者: 文彬 子维   2018-01-18 21:06:06 阅读:14353 标签:DDD 架构设计
前言 新技术层出不穷。过去十年时间里,我们经历了许多激动人心的新技术,包括那些新的框架、语言、平台、编程模型等等。这些新技术极大地改善了开发人员的工作环境,缩短了产品和项目的面世时间。然而作为在软件行业第一线工作多年的从业者,我们却不得不面对一个现实,那就是当初采用新技术的乐趣随着项目周期的...
作者: 陈金洲   2017-08-09 22:07:46 阅读:22395 标签:架构
上篇:架构漫谈(八):从架构的角度看如何写好代码 某天和朋友吃饭正好聊到这个话题。作为架构师或者做技术的人,在开发软件时,我们基本上就是在扮演上帝的角色:我们不但要创建出一个个的程序,还要让这些程序能够脱离我们在硬件上独立运行,以便为这个程序所服务的群体提供服务。当这个程序出现问题甚至bug...
作者: 王概凯   2016-04-19 08:33:08 阅读:46254 标签:架构
上篇:架构漫谈(七):不要空设架构师这个职位,给他实权 在第六篇文章中,我们得出一个结论,软件架构实际上包括了:代码架构,以及承载代码运行的硬件部署架构。实际上,硬件部署架构最终还是由代码的架构来决定。因为代码架构不合理,是无法把一个运行单元分拆出多个来的,那么硬件架构能分拆的就非常的有限,...
作者: 王概凯   2016-04-19 08:11:14 阅读:42592 标签:架构 架构师
上篇:架构漫谈(六):软件架构到底是要解决什么问题? 什么是架构师 在之前的几篇文章中,经常会提到架构师这个词。我们已经定义了什么叫架构,那怎么定义架构师呢,是不是做架构的就叫架构师了? 没有这么简单,本篇尝试讨论一下这个问题。 架构师的前提条件 如果一个人在工作中,只是致力于完...
作者: 王概凯   2016-04-18 22:43:39 阅读:31518 标签:架构 架构师
上篇:架构漫谈(五):什么是软件 前一篇文章简述了什么是软件。那么什么是软件架构呢?按照惯例,我们来看看是什么问题,是谁的问题。 要解决谁的问题? 如前所述,软件实际上就是把现实生活模拟到计算机中,并且软件是需要在计算机的硬件中运行起来的。要做到这一点需要解决两个问题: 一、业务...
作者: 王概凯   2016-04-18 08:13:55 阅读:32937 标签:架构
上篇:架构漫谈(四):如何做好架构之架构切分 前面通过四篇文章,把什么是架构,如何做好架构等必要的概念澄清了一下。这些概念对于在各种不同的领域都应该也是有用的,需要读者自行思考,并应用到自己所在的领域中。在这篇文章开始,我们用同样的思考,来看看软件是怎么回事,以及如何运用架构思维,更好的设计...
作者: 王概凯   2016-04-17 22:27:03 阅读:30691 标签:架构
上篇:架构漫谈(三):如何做好架构之识别问题 前一篇已经讲了如何识别问题。在识别出是谁的问题之后,会发现,在大部分情况下,问题都迎刃而解,不需要做额外的动作。很多时候问题的产生都是因为沟通的误解,或者主观上有很多不必要的利益诉求导致的。但是总还有一部分确实是有问题的,需要做调整,那么就必须要...
作者: 王概凯   2016-04-17 21:59:29 阅读:21397 标签:架构
上篇:架构漫谈(二):认识概念是理解架构的基础 按照之前架构的定义,做好架构首先需要做的就是识别出需要解决的问题。一般来说,如果把真正的问题找到,那么问题就已经解决80%了。这个能力基本上就决定了架构师的水平。 那么面对问题有哪些困难呢? 我们先看一则笑话。女主人公:老公,把袋子里的...
作者: 王概凯   2016-04-17 10:47:13 阅读:23483 标签:架构
上篇:架构漫谈(一):什么是架构? 在前一篇文章中,我们讨论了什么是架构。事实上,这些基础概念对于做架构是非常重要的,大部分人对于每天都习以为常的概念,都自以为明白了,但实际上都是下意识的,并不是主动的认识。比如说“什么是桌子?”,做培训的时候,我经常拿这个例子来问大家,回答千奇百怪。这实际...
作者: 王概凯   2016-04-17 10:25:18 阅读:32336 标签:架构
架构漫谈是由资深架构师王概凯Kevin执笔的系列专栏,专栏将会以Kevin的架构经验为基础,逐步讨论什么是架构、怎样做好架构、软件架构如何落地、如何写好程序等问题。专栏的目的是希望能抛出一些观点,并引发大家思考,如果你有感触或者新的感悟,欢迎联系专栏负责人Gary(微信greenguolei)深...
作者: 王概凯   2016-03-09 20:28:40 阅读:68201 标签:架构
目前讨论架构实操(术)的文章较多,讨论架构理念(道)的较少,本文基于作者在大型电商系统架构方面的一些实践和思考,和大家聊聊架构理念性的东西,希望能够抛砖引玉,推进大家对架构的认识。 什么是道,什么是术?道是事物发展的本质规律,术是事物发展的具体途径。规律只有一个,途径很多,条条大路通罗马,...
作者: 王庆友   2016-03-09 20:18:39 阅读:19631 标签:架构
今天的分享主要来自我之前的工作经验以及平时的学习总结和思考。我之前的背景主要是做框架、系统和平台架构,之前工作过的公司 eBay、携程、唯品会都是平台型互联网公司,所以今天主要带着平台架构视角和大家分享心得体会。架构的视角每个人都不一样,可以说一万种眼光,有业务架构、安全架构、平台架构、数据架构...
作者: 杨波   2016-02-08 11:26:20 阅读:18782 标签:架构师 架构设计
英文原文:From Doodles to Delivery: An API Design Process 要想设计出可以正常运行的Web API,对基于web的应用的基本理解是一个良好的基础。但如果你的目标是创建出优秀的API,那么仅凭这一点还远远不够。设计优秀的API是一个艰难的过程,如果它...
2015-11-24 15:29:55 阅读:20587 标签:API设计
好的架构不是设计出来的而是演进出来的 对很多创业公司而言,在初期的时候,我们很难在初期就预估到流量十倍以后、百倍以后、一千倍以后网站的架构会变成什么样。当然,如果在最初的时期,就设计一个千万级并发的流量架构,那样的话,成本是也是非常之高的,估计很难有公司会这样做。 所以,我们主要来讲架构是如...
2015-11-22 17:36:19 阅读:19810 标签:网站架构