上个月我写的一篇文章《关于技术能力的思考和总结》引起了大家的关注,好多读者的评论“以写代想、以想促真、以讲验真”,大家的感受很深刻,基于上次的文章,这篇文章我其实更想跟大家聊聊一些常用的思考方法,思考问题的方式对了,往往可以帮助大家少走弯路。 ...
现在的很多程序应用,基本上都是需要多端覆盖,因此基于一个Web API的后端接口,来构建多端应用,如微信、H5、APP、WInForm、BS的Web管理端等都是常见的应用。本篇随笔概括性的介绍基于HBuilderX+UniApp+ThorUI的手机端前端开发处理,总结一下开发工具的设置,以及常见的H... ...
前言 秒杀请求在高度集中在某一个时间点。这样一来,就会导致一 个特别高的流量峰值,它对资源的消耗是瞬时的 。能够抢到商品的人数是有限的,也就是说10人和1000人发 起请求的结果都是一样的。也就是说真正开始下单时,秒杀请求并不是越多越好。 一、秒杀中的削峰 由于服务器的处理资源是恒定的,用或者不用它 ...
随着需求开发迭代,代码库规模逐渐变大,新的团队成员引入等诸多因素,系统起初制定的架构规则不可避免遭到破坏。不仅仅是破坏团队的统一开发规范,更为重要的是随着代码库规模逐渐增长,大大降低系统的可维护性、扩展性,增加评审复杂度和重构成本,也最终导致团队生产力下降以及研发成本增长。
在敏捷开发环境下,系统... ...
摘要:零售企业就需要安全、可信、开放、能力强大的PaaS集成平台支撑自身的云业务,同样也需要一个强大的业务系统来承载业务。 疫情又来了,买买买,赶紧囤。 这么快没货了? 疫情反复态势之下,消费者体验到的商品到达速度和多样的产品选择,以及平台面临的跨区调货和各种渠道的线上流量突增等现状,使得消费品及零 ...
无论是我们在使用word还是记事本,系统都会为我们提供撤销的功能,这几乎是人人都会使用到的功能,而在我们实际开发中,会不会存在一个很复杂的对象,当更改了其中的某一个属性以后,也提供撤销的功能,可以快速恢复到更新前的状态。提供该功能的模式也正是今天的主题——备忘录模式。 ...
我的设计模式之旅,本节学习原型模式。从复制原有对象出现的两大问题思考原型模式存在的必要性。探讨原型模式的实现方法。 ...
在写开源项目的时候,想到了要支持多种redis部署方式,于是对于这块的生产环境的架构选型展开调研。
推荐使用更新的引擎版本以支持更多的特性,
Redis 6.0新特性说明
模块系统新增多个API。
支持SSL/TLS加密。
支持新的Redis协议:RESP3。
服务端支持多模式的客... ...
苍穹之边,浩瀚之挚,眰恦之美; 悟心悟性,善始善终,惟善惟道! —— 朝槿《朝槿兮年说》 写在开头 在Java领域中, 尤其是在并发编程领域,对于多线程并发执行一直有两大核心问题:同步和互斥。其中: 互斥(Mutual Exclusion):一个公共资源同一时刻只能被一个进程或线程使用,多个进程或线 ...
如果你觉得 UITableViewDelegate 和 UITableViewDataSource 这两个协议中有大量方法每次都是复制粘贴,实现起来大同小异;如果你觉得发起网络请求并解析数据需要一大段代码,加上刷新和加载后简直复杂度爆表,如果你想知道为什么下面的代码可以满足上述所有要求: 解耦后的V ...
我的设计模式之旅,本节使用抽象工厂模式实现阿迪达斯、耐克品牌服饰生产,分别用C#跟Golang实现。对抽象方法模式进行了细致的介绍。 ...
享元模式(Flyweight Pattern)主要用于减少创建对象的数量,以减少内存占用和提高性能。这种类型的设计模式属于结构型模式,它提供了减少对象数量从而改善应用所需的对象结构的方式。 ...
摘要:别名分析是编译器理论中的一种技术,用于确定存储位置是否可以以多种方式访问。 本文分享自华为云社区《编译器优化那些事儿(6):别名分析概述》,作者:毕昇小助手。 1.简介 别名分析是编译器理论中的一种技术,用于确定存储位置是否可以以多种方式访问。如果两个指针指向相同的位置,则称这两个指针为别名。 ...
1、spring Cloud概述 Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring ...
我的设计模式之旅,本节实现武器生产工厂,用Golang实现简单工厂模式,用C#实现工厂方法模式。对工厂方法模式进行了细致的介绍。 ...
我的设计模式之旅,本文是对《大话设计模式》基础知识的补充。原书部分概念没有说清楚,如里氏替换原则的几点要求,三大类设计模式各个概念等等,为补充相关知识我阅读了《深入设计模式》,于是有了这篇前置文章。方便入门程序员了解更多基础知识。 ...
安全是产品的底座,是体验的基础,也是企业的一项核心竞争力。安全生产是一项系统性的工作,同时也是一件比较琐碎的事,需要做方方面面的考虑尽一切可能保障系统安全稳定运行。个人之前一直负责商品的稳定性工作,在这方面有比较多的经历和实践。
记得在18年的时候,我们做商品发布的组件化改造,当时正好碰上网站刚开... ...
在我们实际业务中,可能存在多个类之间相互调用,形成了一个复杂的网状结构。这时候就需要有一种模式去“捋顺”他们之间的关系,引出一个中间者让类之间不再相互调用,该模式就是我们今天的主人公——中介者模式。 ...
一、系统架构的演变 1、技术架构发展历史时间轴 ①单机垂直拆分:应用间进行了解耦,系统容错提高了,也解决了独立应用发布的问题,存在单机计算能力瓶颈。 ②集群化负载均衡可有效解决单机情况下并发量不足瓶颈。 ③服务改造架构 虽然系统经过了垂直拆分,但是拆分之后发现有重复的功能,比如,用户注册、发邮件等等 ...
外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。 ...