贫瘠之地

出来混最重要的是什么?是出来

密码学是一门深奥难懂的学科,它充满了数学证明;但除非是正在开发密码系统,否则不必了解太多深层次的知识

如果你打开这篇文章是希望创造下一代 HTTPS 协议,那么很抱歉,只有“鸽子”是远远不够的;如果你的目的不在于此,那么请欣赏这篇文章

爱丽丝、鲍勃和 ...... 鸽子?

在互联网上的任何活动(阅读这篇文章、在 Amazon 平台购买商品、上传猫咪图片)归根结底是同服务器发送或者接收消息

可能听起来有点抽象,所以让我们想象一下这些信息是由信鸽(carrier pigeons)传递的,我知道这个比喻看起来很随意,但相信我,HTTPS 的工作方式是一样的,尽管要快得多

阅读全文 »

背景

装饰模式(Decorator Pattern)也叫装饰器模式,可以实现在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能;它是通过创建一个包装对象(装饰器),也就是装饰来包裹真实的对象(委托对象)

目的 更灵活地对对象方法进行扩展,也可以使多个装饰器共同作用,装饰器之间也可以任意组合

现实世界类比 嵌入式设备,摄像头通过接口连接计算机,安装合适的驱动和软件,整个硬件环境就可以具备摄影机的功能;而在具备摄影功能的基础上再连接新的设备遥控底盘,就变成了可以移动的摄像车

实践

阅读全文 »

记录显示第一个喝到啤酒的人距今有 9000 年之久,但奇怪的是,人们使用啤酒花为了防腐,或者为了添加风味和香气的历史并不久远

如今,啤酒中不添加啤酒花是不可思议的行为;它不仅可以保护啤酒的新鲜,也可以丰富啤酒的味道

本文将介绍你可能不知道的啤酒花知识,现在是时候了解关于家庭酿造的基本原料之一的新东西了

认识啤酒花

阅读全文 »

限流

限流是保护高并发系统的三把利器之一(限流、缓存、降级);其目的是通过对并发访问或请求进行限速或者一个时间窗口内的的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务或进行流量整形

限流的类型可大致分为:

  • 限制总并发数 - 数据库连接池、线程池
  • 限制瞬时并发数 - nginx 的 limitconn 模块、Java Semaphore 限制并发
  • 限制时间窗口内的平均速率 - Guava 的 RateLimiter
  • 其他 - 根据网络流量、CPU 占用率、内存占用率等作为标准来进行限流

桶漏 & 令牌桶

阅读全文 »

背景

在 Spring 框架和 MVC 三层模式下,对于创建一个对象并对属性进行赋值的操作不需要复杂的设计

代码中创建的对象往往是一个 “贫血模型”,只用来充当数据的传递者

应该根据不同的类及其功能选择合适的对象创建方式

方式

阅读全文 »

Article-lactic-syrup-800x450.jpg (800×450) (punchdrink.com)

深红酸酒 Crimson Sour

Crimson Sour Vermouth Cocktail Recipe | PUNCH (punchdrink.com)

Sour 作为名词直接有”酸味鸡尾酒“的意思

a drink made from strong alcohol, lemon, or lime juice, sugar, and ice

Whisky Sour 威士忌酸味鸡尾酒

娜塔莎 · 大卫在她的书 Drink Lightly 中建议大家制作这杯鸡尾酒时使用大量应季的柑橘类水果

阅读全文 »
0%