03 2023 档案
摘要:第二点.Redis哨兵保证高可用性,避免redis出现宕机后,导致全部服务瘫痪,数据库崩溃。 二:缓存击穿的问题,也叫热点KEY失效问题。 两种方法的比较: TRANSLATE with x English Arabic Hebrew Polish Bulgarian Hindi Portugues
阅读全文
摘要:图二中,后4点提供了我们主动防范缓存穿透的一些方法,前两点则是我们已经遇到了缓存穿透问题进行的被动防范。 TRANSLATE with x English Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romani
阅读全文
摘要:1. Redis,它首先是一个内存数据库,其提供的PUB/SUB功能把消息保存在内存中(基于channel),因此如果你的消息的持久性需求并不高且后端应用的消费能力超强的话,使用Redis PUB/SUB是比较合适的使用场景。比如官网说提供的一个网络聊天室的例子:模拟IRC,因为channel就是I
阅读全文
摘要:线程安全问题:线程执行顺序不一致导致的缓存和数据库数据不一致的问题: 第1种策略:先删除缓存,再操作数据库。 第2种策略:先操作数据库,再删除缓存 前面的两种策略都有可能发生缓存和数据库不一致的问题,但是第二种策略相比第一种方法来说发生数据不一致的概率更低。及我们优先选择《先操作数据库,再删除缓存》
阅读全文
摘要:TRANSLATE with x English Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Tradi
阅读全文
摘要:网页样式需要大量时间开发,最省事的方法就是使用 CSS 框架。 Bootstrap 是最著名的 CSS 框架,但是今天我想推荐另一个更轻量化、更易用的框架 Bulma。有了它,即使完全不懂 CSS,也可以轻而易举做出美观的网页。 一、简介 Bulma 框架最大的特点,就是简单好用。所有样式都基于cl
阅读全文
摘要:CSV(逗号分隔值)文件是一种特殊的文件类型,可在Excel 中创建或编辑。 CSV 文件不是采用多列的形式存储信息,而是使用逗号分隔的形式存储信息。 将文本和数字保存在CSV 文件中时,可轻松将它们从一个程序移动至另一个程序。 public class CSVHelper { /// <summa
阅读全文
摘要:网站即软件,而且是一种新型的软件。 这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点。 网站开发,完全可以采用软件开发的模式。但是传统上,软件和网络是两个不同的领域,很少有交集;软件开发主要针对单机环境,网络则主要研究
阅读全文
摘要:所有需要登录的网站,都会提供"找回密码"的功能,防止用户忘记密码。 正确设计这个功能,保证安全可靠,并不简单。下面我们来看下安全专家 Troy Hunt 给出的设计指南。 一、如何保存密码 一个网站要想保证密码安全,第一步就是以正确的方法保存密码。一般说来,密码有三种保存方式。 (1)明文保存 "明
阅读全文
摘要:今天,我读到一篇好文章。 它用图片通俗易懂地解释了,"数字签名"(digital signature)和"数字证书"(digital certificate)到底是什么。 我对这些问题的理解,一直是模模糊糊的,很多细节搞不清楚。读完这篇文章后,发现思路一下子就理清了。为了加深记忆,我把文字和图片都翻
阅读全文
摘要:一、共享主机和云主机 从互联网诞生至今,大部分站长都是从"共享主机"(shared hosting)开始学习建站的。所谓"共享主机",就是一台服务器上有许多网站,大家共享这台服务器的硬件和带宽。如果它发生故障,那么上面的所有网站都无法访问。 "云主机"(Cloud hosting)可以看成是新一代的
阅读全文
摘要:我认为,下一代互联网软件将建立在Web service(也就是"云")的基础上。 今天先写一个最基本的问题,Web service到底是什么? 一、Web service的概念 想要理解Web service,必须先理解什么是Service(服务)。 传统上,我们把计算机后台程序(Daemon)提供
阅读全文