12__异常处理:别让自己在出问题的时候变为瞎子

你好,我是朱晔。今天,我来和你聊聊异常处理容易踩的坑。

应用程序避免不了出异常,捕获和处理异常是考验编程功力的一个精细活。一些业务项目中,我曾看到开发同学在开发业务逻辑时不考虑任何异常处理,项目接近完成时再采用“流水线”的方式进行异常处理,也就是统一为所有方法打上 try…catch…捕获所有异常记录日志,有些技巧的同学可能会使用 AOP 来进行类似的“统一异常处理”。

12__异常重试:在约定时间内安全可靠地重试

你好,我是何小锋。上一讲我讲解了在 RPC 框架中如何设计自适应的负载均衡,其关键点就是调用端收集服务端每个节点的指标数据,再根据各方面的指标数据进行计算打分,最后根据每个节点的分数,将更多的流量打到分数较高的节点上。

12__有哪些优秀的_WebAssembly_编译器与运行时?

你好,我是于航。

本节课我们来一起看看,目前业界有哪些优秀的 Wasm 运行时。这些运行时都是 Wasm 可以在 out-of-web 领域大显身手的最基本保障。它们其中有些支持 WASI 抽象系统接口,有些支持 Wasm Post-MVP 标准中的部分提案,还有一些可以被专门用在诸如嵌入式、IOT 物联网以及甚至云,AI 和区块链等特殊的领域和场景中。

12__有一亿个keys要统计,应该用哪种集合?

你好,我是蒋德钧。

在 Web 和移动应用的业务场景中,我们经常需要保存这样一种信息:一个 key 对应了一个数据集合。我举几个例子。

  1. 手机 App 中的每天的用户登录信息:一天对应一系列用户 ID 或移动设备 ID;
  2. 电商网站上商品的用户评论列表:一个商品对应了一系列的评论;
  3. 用户在手机 App 上的签到打卡信息:一天对应一系列用户的签到记录;
  4. 应用网站上的网页访问信息:一个网页对应一系列的访问点击。

我们知道,Redis 集合类型的特点就是一个键对应一系列的数据,所以非常适合用来存取这些数据。但是,在这些场景中,除了记录信息,我们往往还需要对集合中的数据进行统计,例如:

12__云数据库:高歌猛进的数据库“新贵”

你好,我是何恺铎。

说起数据库,相信你一定不会陌生。从开源的 MySQL、PostgreSQL,到商业级的 Oracle、SQL Server,再到新兴的各类 NoSQL 数据库,都是我们应用架构中的常客。

12__怎么利用加密端攻击?

你好,我是范学雷。

上一讲,我们讨论了怎么利用解密端攻击 CBC 模式的对称密钥分组算法。那么,加密端的攻击方案是怎么进行的?有什么办法可以规避加密端的攻击?这是我们这一次要解决的问题。

12__栈空间和堆空间:数据是如何存储的?

对于前端开发者来说,JavaScript 的内存机制是一个不被经常提及的概念,因此很容易被忽视。特别是一些非计算机专业的同学,对内存机制可能没有非常清晰的认识,甚至有些同学根本就不知道 JavaScript 的内存机制是什么。

12__正确性分级(上):单机无备份有哪几种不同的一致性?

你好,我是任杰。从今天开始,我们进入到最后一个模块:分布式正确性及高可用。

在前面两个模块里,我们一起学习了金融业务,以及如何实现正确的金融系统架构。不过我们前面所讲的正确性,主要侧重点是金融业务实现的正确性。但是这些正确性还远远不够,你原来正确的代码运行在多线程或者分布式环境下,依然有可能出错。

12__正则化处理:收缩方法与边际化

今天的内容是线性回归的正则化扩展。正则化称得上是机器学习里的刮骨疗毒,刮的是过拟合(overfitting)这个任何机器学习方法都无法摆脱的附骨之疽。

12__职位的再造升级:实现减员增效涨薪的方法

你好,我是蒋伟良博士。聚焦战略,简化管理,实现有效增长。欢迎你和我一起学习《流程型组织 15 讲》这门课。

今天是第 12 讲。我们来探讨,职位为什么比结构更重要。上次我跟你分享了组织结构,德鲁克大师说组织结构是要最后设计的。那之前设计什么?之前我们要去研究在组织结构里的最小单元,它是一个量子级的单元,但是它和我们每一个同学都非常相关,它就是责任。