开发者社区> 问答> 正文

分布式设计,如何进行本地化开发

分布式设计,如何进行本地化开发

展开
收起
kun坤 2020-04-23 19:41:55 434 0
1 条回答
写回答
取消 提交回答
  • 好了,现在我们可以确定的一点是:每个编写或开发软件的人都需要像分布式系统工程师 一样去思考。但这句话到底意味着什么?在实际中,它意味着:丢弃那种单计算机(节 点)的思考模式(single-computer mode of thinking)。

    直到最近,我们才可以将计算机视为一个相对确定性的东西(a relatively deterministic thing)。当编写一个在某台机器上运行的代码时,我们能够确定性地假设很多东西,例如 ,内存查询的方式。但现在已经没有应用还运行在单台机器上了 —— 云就是这个时代的计 算机(the cloud is the computer now),它就像一个生命系统(living system),一 直在持续不断地变化,尤其是在越来越多的公司开始采用持续交付这种新范式的过程中。

    因此,你必须开始:

    接受这样的假设:支撑你的软件运行的系统一定会发生故障 对为什么会发生故障以及故障可能会以怎样的形式发生做出预案 针对这些预案设计数据收集方案 这并不是像说一句“我们需要更多测试”那么简单。传统的测试哲学中,假定 所有测试用例都是能够描述出来的,但在分布式系统中这一点不再成立。(这并不是说 测试不重要了,而是说测试不再是万灵药。)

    当处于一个分布式环境、并且大部分故障模 式都是无法提前预测也无法测试时,监控就成了唯一的理解应用行为的方式。

    2020-04-23 19:42:01
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
基于社区的分布式 风险感知模型 立即下载
如何利用Redisson分布式化传统Web项目 立即下载
FLASH:大规模分布式图计算引擎及应用 立即下载