作者 主题: InfoQ  (阅读 256099 次)

六月 18, 2019, 04:44:36 pm
回复 #3975

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
系统架构系列(二):应对这一概念的方法

引言


在本系列的第一篇文章中已经给出系统架构的公式定义:系统架构 = 要素 + 连接 + 解决特定的问题,本篇文章重点讨论应对系统架构的方法。


如今,系统架构在业内还没有定型的固定方法,一般会讲:需求分析、系统分析与设计、UML、领域建模、设计模式、软件工程等,笔者不打算这样讲,这样下来会有厚厚一本书,希望从简洁、可落地实践的角度去阐述系统架构,后面的文章再给出每种架构具体可实践操作的方法。


一、系统架构的本质目的


我们已经知道系统架构是什么,有必要讲一下系统架构的目的,即为什么要进行系统架构。对于简单的系统而言,可能没有什么所谓的系统架构,这里的"没有"可能对我们来讲是常识,如简单的系统分层。系统架构的本质目的从公式定义中就可以看出:解决特定的问题,这个特定的问题有技术上的问题、业务上的问题、项目管理上的问题。


img


还有一个问题不知道开发者是否注意到:怎么知道自己的架构设计是对的?这个问题很尖锐,架构设计具备严谨的逻辑性,从逻辑上讲是对的,实现起来基本上八九不离十,再根据实际使用情况做出调整。所以,系统架构从本质上讲具备逻辑性,虽然还没有真正实践,但从架构方案上能看得出是否合理、正确。


Source: 系统架构系列(二):应对这一概念的方法

InfoQ 促进软件开发领域知识与创新的传播
http://www.infoq.com/cn/
软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:26 am
回复 #3976

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
从SQL Server到多数据库,微软数据库迁移全攻略

[html]

据了解,截止到2022,云迁移市场规模将达到1290亿美元,云迁移服务市场的利润率达26.7%。数据库作为企业迁移上云的关键环节,自然成为了各大云厂商关注的重点,除了提供各种各

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:26 am
回复 #3977

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
高通和英特尔向美国政府施压,要求减轻华为禁令

[html]

路透社消息:知情人士表示,高通、英特尔和赛灵思公司的高管参

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:26 am
回复 #3978

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
云原生生态周报 Vol. 8  Gartner 发布云原生趋势

[html]

前言


《云原生生态周报》由阿里云容器平台联合蚂蚁金服共同发布,每周一期。众多一线社区专家与您一起“跟踪动态,读懂社区”,分享云原生社区项目进展、活动发布、精选博客等信息。以下是第七期云原生生态周报的内容。



业界要闻



  1. Gartner 发布云原生基础设施未来的八大趋势:权威分析机构 Gartner 在对 2020 年技术趋势的展望当中指出:“预计2020年所有领先的容器管理软件均内置服务融合技术,到2022年有75%的全球化企业将在生产中使用容器化的应用、还有50%的应用软件将容器化适应超融合环境”。Gartner 在报告中表示,未来基础设施技术演进的八大趋势包括:

    1. 多云与混合云;

    2. Service Mesh;

    3. 基于 Kubernetes 的 fPaaS(即:函数计算 PaaS);

    4. 裸金属容器和微虚拟机;

    5. 第三方应用和 ISV 的大规模容器化;

    6. 对有状态应用的完善支持;

    7. 整个技术
软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:26 am
回复 #3979

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
专访偶数科技常雷:从商业走向开源,Apache HAWQ 适应得很好

[html]

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:26 am
回复 #3980

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
5G 和触觉互联网到底是什么?

[html]

人们的视听需求藉由互联网得到满足。如果互联网能够满足人们的另一种需求——触觉,那将是什么

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:26 am
回复 #3981

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
全球超算TOP500榜单发布:中国上榜数量最多,美国超算性能最优

[html]

全球超算TOP500榜单发布


在德国法兰克福举办的“国际超算大会”(ISC)刚刚落幕,而备受瞩目的全球超级计算机TOP500排名也如期发布,先来看看前10名的榜单:



位于田纳西州能源部橡

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:26 am
回复 #3982

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
阿里宣布新一轮组织架构调整:明确大文娱一号位,钉钉进入阿里云

[html]

组织架构调整

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:26 am
回复 #3983

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
英伟达与ARM达成合作,将共同研发超级计算机

[html]

在周一德国举行的超级计算会议上,英伟达表示其

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:27 am
回复 #3984

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
Chrome 76 Beta版功能尝鲜:dark模式、轻松安装PWA、隐身模式难检测

[html]

本文介绍了Chrome 76版本的特性更新,主要更新包括暗色模式,支付API和对PWA的改进。该版本从2019年6月13日开始Beta版测试。


Chrome 76版本从2019年6月13日开始Beta版测试。除非特别说明,下面关于最新的Chrome Beta版更新的描述广泛适用于Android、Chrome OS、Linux、macOS和Windows等平台。可以通过ChromeStatus.com上的列表找到关于以下列出特性的更多详细信息。


暗色模式


许多操作系统现在都支持反色配色方案,在不同的系统中,这种系统设置被称为“暗色主题”或“暗色模式”。



prefers-color-scheme的media query允许网站或web APP采用用户的首选显示模式。CSS代

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:27 am
回复 #3985

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
什么是消息引擎系统?

[html]

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 04:05:27 am
回复 #3986

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
美国或将立法不承认华为在美专利,至少3195项专利受波及

[html]


为表达对此前华为起诉美国通讯巨头Verizon并要求其支付10万美元专利许可费的不满,美国政府提出了一个新的“招数”,将打压面扩大到了知识产权领域。日前,美国参议员卢比奥提出了一项法案,意在防止华为在美国寻求专利赔偿,或将涉及至少3195 项专利。美国将很有可能不再承认华为在美国的专利权。



美国有意立法不再承认华为在美专利


路透社报道,6月17日(本周一),美国参议员卢比奥提出了一项法案,意在防止华为在美国寻求专利赔偿。路透社看到的修正案显示,华为在美国政府特定观察的公司名单上,华为将不被允许

软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 10:32:02 am
回复 #3987

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
Facebook发布加密货币白皮书:为全球数十亿人提供一种新的“互联网货币”

北京时间2019年6月18日17点,Facebook 位于瑞士的子公司 Libra Network(天秤座网络)联合全球26家企业,发布加密货币Libra的白皮书。白皮书宣称,Libra 区块链的目标是成为金融服务的坚实基础,面向全球人民提供服务,包括打造一种新的全球货币,满足数十亿人的日常金融需求。


Libra系统由三个部分组成:

1.它建立在一个安全、可扩展和可靠的区块链(The Libra Blockchain)之上;

2.由旨在赋予其内在价值的资产储备(The Libra Currency and Reserve)作为后盾;

3.由独立的Libra协会(The Libra Association)管理,负责发展生态系统。

Facebook还开源了Libra Blockchain的代码,并启动Libra的初始测试网,供开发人员使用和构建。


为满足数十亿人的日常金融需求,构建新的区块链现有方案需要满足三项要求:



  • 能够扩展到数十亿帐户,这要求区块链具有极高的交易吞吐量和低延迟等特点,并拥有一个高效且高容量的存储系统。

  • 高度安全可靠,可保障资金和金融数据的安全。

  • 足够灵活,可支持 Libra 生态系统的管理以及未来金融服务领域的创新。


满足这些要求后,在现有项目和研究的基础上,Facebook从头开始设计和构建了Libra ,并做出了三个决策:



  • 设计和使用 Move 编程语言。

  • 使用拜占庭容错 (BFT) 共识机制。

  • 采用和迭代改善已广泛采用的区块链数据结构。


也就是说Facebook设计了一种新的编程语言“Move”,用于在 Libra 区块链中实现自定义交易逻辑和“智能合约”,首要考虑的是安全性和可靠性。


该新的加密货币由独立的非营利性成员制组织”Libra协会“管理,创始成员由Mastercard,PayPal,Visa,Stripe,eBay,Coinbase,Andreessen Horowitz和Uber等组成。Facebook允许理事会成员在其网络上运行一个验证者节点,并为此收取1000万美元的费用。Facebook计划在2020年上半年推出Libra,同时将该协会扩大到约100名成员。


Source: Facebook发布加密货币白皮书:为全球数十亿人提供一种新的“互联网货币”

InfoQ 促进软件开发领域知识与创新的传播
http://www.infoq.com/cn/
软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 10:21:15 pm
回复 #3988

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
一篇文章讲清什么是消息引擎系统?

毫无疑问,你现在对Apache Kafka一定充满了各种好奇,那么今天就允许我先来尝试回答下Kafka是什么这个问题。对了,先卖个关子,在下一期我还将继续回答这个问题,而且答案是不同的。那么,Kafka是什么呢?用一句话概括一下:Apache Kafka是一款开源的消息引擎系统

 

倘若“消息引擎系统“这个词对你来说有点陌生的话,那么“消息队列“、“消息中间件”的提法想必你一定是有所耳闻的。不过说实话我更愿意使用消息引擎系统这个称谓,因为消息队列给出了一个很不明确的暗示,仿佛Kafka是利用队列的方式构建的;而消息中间件的提法有过度夸张“中间件”之嫌,让人搞不清楚这个中间件到底是做什么的。

 

像Kafka这一类的系统国外有专属的名字叫Messaging System,国内很多文献将其简单翻译成消息系统。我个人认为并不是很恰当,因为它片面强调了消息主体的作用,而忽视了这类系统引以为豪的消息传递属性,就像引擎一样,具备某种能量转换传输的能力,所以我觉得翻译成消息引擎反倒更加贴切。

 

讲到这里,说点题外话。我觉得目前国内在翻译国外专有技术词汇方面做得不够标准化,各种名字和提法可谓五花八门。我举个例子,比如大名鼎鼎的Raft算法和Paxos算法。了解它的人都知道它们的作用是在分布式系统中让多个节点就某个决定达成共识,都属于Consensus Algorithm一族。如果你在搜索引擎中查找Raft算法,国内多是称呼它们为一致性算法。实际上我倒觉得翻译成共识算法是最准确的。我们使用“一致性“这个字眼太频繁了,国外的Consistency被称为一致性、Consensus也唤作一致性,甚至是Coherence都翻译成一致性。

 

还是拉回来继续聊消息引擎系统,那这类系统是做什么用的呢?我先来个官方严肃版本的答案。

 

根据维基百科的定义,消息引擎系统是一组规范。企业利用这组规范在不同系统之间传递语义准确的消息,实现松耦合的异步式数据传递。

 

果然是官方定义,有板有眼。如果觉得难于理解,那么可以试试我下面这个民间版:

 

系统A发送消息给消息引擎系统,系统B从消息引擎系统中读取A发送的消息。

 

最基础的消息引擎就是做这点事的!不论是上面哪个版本,它们都提到了两个重要的事实:




  • 消息引擎传输的对象是消息;




  • 如何传输消息属于消息引擎设计机制的一部分。




既然消息引擎是用于在不同系统之间传输消息的,那么如何设计待传输消息的格式从来都是一等一的大事。试问一条消息如何做到信息表达业务语义而无歧义,同时它还要能最大限度地提供可重用性以及通用性?稍微停顿几秒去思考一下,如果是你,你要如何设计你的消息编码格式。


一个比较容易想到的是使用已有的一些成熟解决方案,比如使用CSV、XML亦或是JSON;又或者你可能熟知国外大厂开源的一些序列化框架,比如Google的Protocol Buffer或Facebook的Thrift。这些都是很酷的办法。那么现在我告诉你Kafka的选择:它使用的是纯二进制的字节序列。当然消息还是结构化的,只是在使用之前都要将其转换成二进制的字节序列。

 

消息设计出来之后还不够,消息引擎系统还要设定具体的传输协议,即我用什么方法把消息传输出去。常见的有两种方法:



  • 点对点模型:也叫消息队列模型。如果拿上面那个“民间版“的定义来说,那么系统A发送的消息只能被系统B接收,其他任何系统都不能读取A发送的消息。日常生活的例子比如电话客服就属于这种模型:同一个客户呼入电话只能被一位客服人员处理,第二个客服人员不能为该客户服务。

  • 发布/订阅模型:与上面不同的是,它有一个主题(Topic)的概念,你可以理解成逻辑语义相近的消息容器。该模型也有发送方和接收方,只不过提法不同。发送方也称为发布者(Publisher),接收方称为订阅者(Subscriber)。和点对点模型不同的是,这个模型可能存在多个发布者向相同的主题发送消息,而订阅者也可能存在多个,它们都能接收到相同主题的消息。生活中的报纸订阅就是一种典型的发布/订阅模型。


比较酷的是Kafka同时支持这两种消息引擎模型,专栏后面我会分享Kafka是如何做到这一点的。

 

提到消息引擎系统,你可能会问JMS和它是什么关系。JMS是Java Message Service,它也是支持上面这两种消息引擎模型的。严格来说它并非传输协议而仅仅是一组API罢了。不过可能是JMS太有名气以至于很多主流消息引擎系统都支持JMS规范,比如ActiveMQ、RabbitMQ、IBM的WebSphere MQ和Apache Kafka。当然Kafka并未完全遵照JMS规范,相反,它另辟蹊径,探索出了一条特有的道路。

 

好了,目前我们仅仅是了解了消息引擎系统是做什么的以及怎么做的,但还有个重要的问题是为什么要使用它。


依旧拿上面“民间版“举例,我们不禁要问,为什么系统A不能直接发送消息给系统B,中间还要隔一个消息引擎呢?


Source: 一篇文章讲清什么是消息引擎系统?

InfoQ 促进软件开发领域知识与创新的传播
http://www.infoq.com/cn/
软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon

六月 19, 2019, 10:21:15 pm
回复 #3989

admin

  • Administrator
  • Newbie

  • 离线
  • *****

  • 4
  • Karma:
    +0/-0
  • 个人说明
    SoftPlus 资深程序员
    • 查看个人资料
    • http://www.softplus.org
Facebook发布加密货币白皮书:为全球数十亿人提供一种新的“互联网货币”

北京时间2019年6月18日17点,Facebook 位于瑞士的子公司 Libra Network(天秤座网络)联合全球28家企业,发布加密货币Libra的白皮书。白皮书宣称,Libra 区块链的目标是成为金融服务的坚实基础,面向全球人民提供服务,包括打造一种新的全球货币,满足数十亿人的日常金融需求。


Libra系统由三个部分组成:

1.它建立在一个安全、可扩展和可靠的区块链(The Libra Blockchain)之上;

2.由旨在赋予其内在价值的资产储备(The Libra Currency and Reserve)作为后盾;

3.由独立的Libra协会(The Libra Association)管理,负责发展生态系统。

Facebook还开源了Libra Blockchain的代码,并启动Libra的初始测试网,供开发人员使用和构建。


为满足数十亿人的日常金融需求,构建新的区块链现有方案需要满足三项要求:



  • 能够扩展到数十亿帐户,这要求区块链具有极高的交易吞吐量和低延迟等特点,并拥有一个高效且高容量的存储系统。

  • 高度安全可靠,可保障资金和金融数据的安全。

  • 足够灵活,可支持 Libra 生态系统的管理以及未来金融服务领域的创新。


满足这些要求后,在现有项目和研究的基础上,Facebook从头开始设计和构建了Libra ,并做出了三个决策:



  • 设计和使用 Move 编程语言。

  • 使用拜占庭容错 (BFT) 共识机制。

  • 采用和迭代改善已广泛采用的区块链数据结构。


也就是说Facebook设计了一种新的编程语言“Move”,用于在 Libra 区块链中实现自定义交易逻辑和“智能合约”,首要考虑的是安全性和可靠性。


该新的加密货币由独立的非营利性成员制组织”Libra协会“管理,创始成员由Mastercard,PayPal,Visa,Stripe,eBay,Coinbase,Andreessen Horowitz和Uber等组成。Facebook允许理事会成员在其网络上运行一个验证者节点,并为此收取1000万美元的费用。Facebook计划在2020年上半年推出Libra,同时将该协会扩大到约100名成员。


Source: Facebook发布加密货币白皮书:为全球数十亿人提供一种新的“互联网货币”

InfoQ 促进软件开发领域知识与创新的传播
http://www.infoq.com/cn/
软佳科技有限公司 http://www.softplus.org
软佳医疗软件 http://www.ynhis.com
最新Linode VPS 优惠码新用户注册省10美元:Active Linode $10 Coupon