微服务管理系统(1.微服务管理-11.缓存-3.实践-缓存使用)

2024-09-05 08:40:31 1

微服务管理系统(1.微服务管理-11.缓存-3.实践-缓存使用)

本篇文章给大家谈谈微服务管理系统,以及1.微服务管理-11.缓存-3.实践-缓存使用对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

本文目录

1.微服务管理-11.缓存-3.实践-缓存使用

微服务实践目录 ,可以参见连接。

缓存系列包括: 1.微服务管理-11.缓存概述 1.微服务管理-11.缓存-0.技术 1.微服务管理-11.缓存-1.多级缓存设计 1.微服务管理-11.缓存-2.典型缓存架构设计 1.微服务管理-11.缓存-3.实践-缓存使用 1.微服务管理-11.缓存-4.总结

在前面的几篇文章中讨论了很多关于缓存使用时要注意的事项。但在实际的工作中在哪些地方考虑这些事项其实还是不明确。为了帮助读者在生产中更好的使用缓存,本文主要以例子的方式说明在生产环境中使用缓存的方式。

结合前面几篇文章中的内容,并通过尽量的减少对于(相对)慢速服务/设备的访问来提高业务处理速度。但在业务处理过程中减少对于慢速服务/设备的访问并不一定就可以提升业务处理速度,并还有可能带来其他的问题。所以,这里展示几个例子来解释这些问题,并提供可用的生产环境方案。

在前几篇文章中出现过大量请求的时候的一个终极方案,如下:

这个方案参照了之前使用cdn缓存业务接口的方式来设计。通过OpenResty中支持的脚本语言Lua去控制本地返回还是使用Redis中结果返回。还有如果发生miss之后还需要调用后端服务来更新缓存。

这种方式的缓存的特点:适合IO密集型业务中,不适合计算密集型业务。并在业务过程中查看的业务占系统业务的绝大部分。例如:大型线上商城中的商品展示,新闻网站,网站门户,微博/陌生人社交,音视频服务,图片网站等。

在实际的缓存更新过程中一般有以下几种方式来更新缓存:

这几种方式针对不同的缓存模型来进行。

被动更新的特点在于有一个系统中的触发源去触发数据的更新动作。主动更新的特点在于只有用户在使用系统的特定功能时才会触发更新的动作。被动更新可以保证缓存和数据源之间的数据永远是一致的,并且不需要过多的补偿机制来保证数据一致性。主动更新的方式就会发生缓存和数据源中数据不一致的问题。所以,在后面会讨论在主动更新模式下尽量保证数据一致性的方式。

定时更新的方式在很多地方都有使用,例如CDN的定时溯源的机制就是以这种方式运行的。

事件更新中最核心的概念是 事件 ,这里的事件最好是在领域驱动设计中的事件风暴阶段中这里出来的事件。因为这种事件代表着业务发生的动作,也代表着业务价值的流动。

在微服务架构模式下,任务、定时器都会由一个任务调度中心来完成。所以,在使用定时触发缓存更新时还是使用分布式任务调度中心来完成任务的调度工作。这样可以保证同一时间只有一个实例在处理。以这种方式简单的进行排他工作,防止同时操作缓存的问题。

用户触发更新也可以称为非固定周期更新,因为用户的触发时间是不确定的、任何时候都可能。有一种随机数的产生方式就是使用类似的机制:操作系统使用内核接受到中断的时间点作为随机数使用。所以,用户触发更新的方式就是一种随机发生的缓存更新。

下面一一说明图中内容的含义:

如上图中箭头所指向位置,在这里使用同步方式还是使用异步方式。从这两种方式产生的问题角度入手分析他们的优缺点:

不管同步还是异步都有可能造成 缓存击穿 问题,所以更新缓存的过程中最好进行一些排他动作以防止洪泛的发生。

主动更新、被动更新这些技术适应于不同的场景。它们各自有各自的优缺点,在技术设计阶段需要考虑实际的业务场景来决策到底使用那种方式合适。这个很多时候是需要设计人员的经验来进行决策。所以,任何一种软件设计过程都是一个决策和权衡的过程。

使用缓存的目标就是: 通过减少对慢速服务的访问,来提速 。所以在实际的缓存环境中,最主要的目标是减少访问慢速来达到使用缓存提速的目标。而在这个过程中可以使用的整体方案很多,可以通过不同事项的调整来完成自己的方案。

浅谈 Cache

如何设计实现真正的响应式微服务系统

一、清晰轻量的产品逻辑

奥卡姆剃须刀法则同样在产品架构设计中适用,越简单的架构越有利于产品的生长。清晰轻量的产品逻辑,会减少用户的负担感,从而提高交互上的效率和愉悦感。

分析MaterialDesign,会发现Google归纳了两类复杂内容信息的层级关系,分别是Card和Tile(List

以及其他相似定义属于同类的内容信息层级),其他定义多用于UI结构及细节。其中,Google定义Card是一种多功能信息的聚合入口,信息层级应较

高,体现在Z轴应高于其他信息,视觉上有阴影表现并加以圆角处理。而tile(或同类信息列表)则是(同类或相关)信息的模块展现,信息层级应较低,体现

在Z轴应略低于其他信息,视觉上应无阴影表现不加圆角处理。其结果是从视觉层面让产品对象更高效、更简单,同时也更具物理世界的“真实感”。

最近接手的项目是Gekec.com的全站改版。Gekec(革客)是Geek和Maker交集,喜欢革新,喜欢技术范儿、新潮的科技消费品,喜欢

自己动手创造产品,Gekec.com也就是这类人的聚集地,整个产品囊括电商、资讯(或h5宣传)、拆机、以及社区讨论等各种功能,改版前逻辑复杂,功

能繁多。改版开始之初,笔者了解到革客群体时,便认为理性加浓重Geek味道的Google风格或许是最适合Gekec.com的视觉体系,然而复杂的产

品逻辑不能给用户带来高效的交互体验和愉悦的使用感受,视觉上也并不能很好的通过Material

Design推演并且变化,所以梳理出清晰、轻量且方便视觉统一的产品逻辑成为第一任务。

Gekec.com的产品全功能在此并不赘述,ProctFeature全部为达成宜家式的体验式设计,经过梳理可以归纳成三层,首层为体验层(多入口的首页封面)、第二层为货架层(包括商城模块、拆机模块、体验模块)、第三层为详细、操作层;

如上图,轻量的产品结构即可方便设计的推演。例如其中第一层可以通过H5灵活排版做产品全方位体验,第二层与第三层的关系即可利用Material

Card和Tile表现。Card表达了全部信息的聚合和入口,tile则表现同类信息的罗列。从card跳转到最终页应有一种卡片展开的体验。

二、适宜UI推演的响应办法

在产品逻辑清晰简洁的基础上,一套适宜MaterialDesign变化的全尺寸响应办法就成为复杂响应式网页设计的核心内容,响应办法能够直接决定功能模块的响应逻辑以及UI的变化。实际操作中,响应办法的确定主要就是确定栅格和占比。

1)栅格

网页栅格系统是从平面栅格系统中发展而来。对于网页设计来说,栅格系统的使用,不仅可以让网页的信息呈现更加美观易读,更具可用性。而且,对于前端

开发来说,网页将更加的灵活与规范。栅格系统的具体含义以及使用方法在此不再赘述,感兴趣的朋友可以参考淘宝UED的一些文章:

网页栅格系统研究(1):960的秘密

网页栅格系统研究(2):蛋糕的切法

网页栅格系统研究(3):粒度问题

网页栅格系统研究(4):技术实现

在Gekec.com的项目中,经历产品功能模块的梳理,笔者使用了12栅格系统,目的是能够满足2、3、4、6的页面等分。注:具体栅格系统的建立应因产品和设计所决定,栅格系统并不是万能的,而确定的栅格系统可以为整个响应式设计做规范性参考。

2)占比

A.占比

如上文说,12栅格约束网页的内容区,而网页的内容往往并不占据屏幕的全部宽度,而是在两侧留有间隙,营造空间感。由于屏幕的限制,这种空间感在移动端设备显得更加重要,如图,然而强加固定的marginpixel会使得12栅格占比不定,难以控制设计效果。

所以占比应是12栅格宽度对应屏幕的比值,即:

12栅格宽度X占比=屏幕宽(临界点)

优秀而巧妙的占比确定可以让网页设计呈现在各个主流屏幕上均是100%像素。

这里简单解释一下,若一个200px宽的元素在1200px宽的屏幕上,其占比为16.67%,同样的逻辑,到1024px的屏幕上这个占比

16.67%的元素即占据了170.67px,这样的情况下,某一个物理像素无法占据100%,在完美主义的设计师眼里,是无法接受的事情。而巧妙的占

比,可以让元素在各个主流屏幕占据100%像素,完美展现设计意图。

B.临界点

临界点(breakpoint)是指响应式网页发生布局变化的关键点,如“当屏幕宽度小于480px时加载...样式,当宽度在480px-

600px之间时加载样式”。响应式网页理论上有无数种尺寸,我们不可能也没有必要为每个尺寸都去做设计,需要做的是选定几个临界点做设计,在两个临界

点之间是延续上一个临界点的布局。

临界点确认总体目的就是为了保证页面在手机(屏幕很小)、平板(屏幕中等)、PC(屏幕大)上加载相应的样式,然而经验较少的设计师往往会苦恼一个

问题,那就是高像素的手机屏幕和低像素的平板屏幕应如何处理。例如设计师会担心1080p的手机加载大屏幕页面,或者720p的平板加载小屏幕页面。

但需要注意的是,响应式网页不同于APP的屏幕适配。网页是沉浸于浏览器的产品,浏览器所启动的屏幕像素才可以被认为是临界点的参考点,为此,笔者

做了一些测试,如下表,可以看出不少1080p手机在浏览器中仅启动360px,而神奇的ipad无论是不是retina屏幕,无论是不是mini,均显

示1024x768px。

1.微服务管理-17.用户管理-0.概述

微服务实践目录 ,可以参见连接。

对于软件系统来说不管以怎样的形式服务于人,最终都是为了人们更舒适,更便利,更高效的生活而出现的。所以,对于软件系统来说识别出用户,并给用户提供相关的便利就是软件系统的最终目标。

对于人们直接能看到的软件系统,人们能直接感觉到软件系统再对其进行识别和认证的工作。但有很多软件系统是一般的用户看不到的,这些系统里面也有认证不过人们不关心。例如:在使用Wifi的时候,显示的需要知道Wifi的密码才允许登录,隐式的需要IP才能够进行通信。那DHCP系统是不是需要对设备进行认证,认证过程是什么样的?

在显示生活中有很多类似的例子,再比如:打电话的时候我可以通过电话号码知道对方是谁,但是通话过程中通信的链路是怎样建立起来的,这中间是不是有认证的过程,是不是有授权的过程,是不是有计费的过程?

这些就是软件在用户不感知或无法感知的情况下对用户进行了识别与认证的工作。并未客户提供了服务。这就是用户管理的意义。

在用户管理的过程中 AAA 是用户管理的重中之重。我们也会对AAA进行大概的介绍。但除了AAA之外还有一部分比较重要的内容:用户会话管理。用户会话管理主要是技术上的实现,跟最终用户的关系不太大或者最终用户看不到。所以,在进行用户管理时一般向用户展示的内容提到级别比较高,用户注意不到的内容就省略了。

大概说明这四个部分的关注点:

在上面所介绍的用户管理四部分中,每一个部分都可以独立于其他部分独立使用。现在业界有很多独立的解决方案出现。有专门负责认证部分的SSO,有专门负责鉴权的Apache Shiro,有专门负责计费的PAAS计费系统。也有很多联合技术,例如OpenAPI系统的用户管理,鉴权,计费的处理。

对于不同的使用场景来说,独立使用四部分中的一部分还是联合使用其中的几部分都是需要根据具体的使用场景进行分析与设计的。为了更清晰的介绍四部分,下面会具体的介绍着四部分。并且会在之后连续的几篇文章中深入的介绍每一个部分。

对于软件系统来说,外部所有的利益相关者都是需要定义出来的。那对于用户管理系统的用户的定义具体是什么样的?可以使用一个更加能够体现出它的特点的词语: 认证实体 来表示。

那么定义出用户管理系统的用户之后,那就定义认证过程的动作。认证过程就是通过验证认证实体的某些信息达到认为《认证实体》是软件系统中存在的《认证实体》的目的。

软件业界用户认证思路:

对于通过认证的认证实体来说,认证实体使用软件系统中的某个服务。系统需要判断认证实体是否对这个服务有操作权限,数据是否允许被访问等。更有甚者,对用户的服务级别都有定义。例如:

对于权限控制比较重要的两项:

现在很多互联网企业都对C端用户实行免费使用政策。采用B2C或者融合后的B向C提供服务都是需要一个收费模式的。

在很多Iaas,Paas,Saas中最常采用的计费方式是租户计费方式,而像印象笔记,Processon等直接面对C端用户的更长采用的用户计费模式。

前两种都是比较常见的。资源计费在用户使用资源时才会计费,这是云基础设施推出时的目标。服务质量计费可以简单的理解为京东Plus会员,电信服务商提供的带宽。

会话保持,会话保存,会话记录都是会话管理需要管理的内容。它们每个项可以在不同的领域发挥作用。

接下来几篇文章我们会先讨论用户管理的内容,然后在进行用户管理的一些技术实践。在实践中介绍各种技术的不同点,方便之后在实际项目中选用。

AAA

RBAC

RADIUS portal认证 TACACS+ Diameter LDAP Kerberos

以上就是我们为大家找到的有关“微服务管理系统(1.微服务管理-11.缓存-3.实践-缓存使用)”的所有内容了,希望可以帮助到你。如果对我们网站的其他内容感兴趣请持续关注本站。

微服务管理系统(1.微服务管理-11.缓存-3.实践-缓存使用)

本文编辑:admin

本文相关文章:


微服务管理系统(1.微服务管理-17.用户管理-0.概述)

微服务管理系统(1.微服务管理-17.用户管理-0.概述)

本文目录1.微服务管理-17.用户管理-0.概述1.微服务管理-11.缓存-3.实践-缓存使用如何设计实现真正的响应式微服务系统1.微服务管理-17.用户管理-0.概述 微服务实践目录 ,可以参见连接。 对于软件系统来说不管以怎样的形式

2024年5月17日 01:07

更多文章:


基础入门教程(学做菜如何入门)

基础入门教程(学做菜如何入门)

本文目录学做菜如何入门如何学习插花的花艺技巧,有什么适合零基础入门知识教程word2010基础操作教程之快速选择文本的窍门WORD入门教程零基础怎么开始学习VBWeb前端零基础可以学吗难学吗想学app开发,零基础怎么入手突然想从事安卓开发的

2024年7月4日 03:07

random函数生成多个随机数(产生多个随机数)

random函数生成多个随机数(产生多个随机数)

本文目录产生多个随机数一个单元格怎么自动生成多个随机数python同时生成多个不同的随机数怎么搞产生多个随机数参考注释说明《html》《body》《title》随机数《/title》《body》《body》《input type="butt

2024年5月10日 16:55

surfacert刷安卓教程(如何在surface上运行安卓应用)

surfacert刷安卓教程(如何在surface上运行安卓应用)

本文目录如何在surface上运行安卓应用请问谁知道surface平板电脑怎么刷机surface rt怎么用u盘重装系统我的surface pro 2能装安卓系统吗哪位大神能救救我的电脑,我的电脑是surface rt,怎么强刷成别的系统s

2024年7月21日 20:41

游戏代码大全(如果我知道一个游戏的代码,我还需要哪些东西才可以控制一个游戏)

游戏代码大全(如果我知道一个游戏的代码,我还需要哪些东西才可以控制一个游戏)

本文目录如果我知道一个游戏的代码,我还需要哪些东西才可以控制一个游戏有谁能帮我用Python解一个题或者做个小游戏,题目自行设计,大概50行,python能写什么小游戏请用PYTHON编一个小游戏,如五子棋,连连看,贪吃蛇,扫雷,计算器等等

2024年6月7日 06:25

handler翻译(handler是什么意思)

handler翻译(handler是什么意思)

本文目录handler是什么意思handler是什么类型的公司如何翻译handler是什么意思handler_百度翻译handler (信息)处理机;拳击教练handler是什么类型的公司如何翻译个人的话一般指三种人,高端场合:顾问

2024年6月30日 15:00

java的jdk是什么(jdk到底有什么作用)

java的jdk是什么(jdk到底有什么作用)

本文目录jdk到底有什么作用jdk作用是什么jdk是什么,有什么用请问一下JAVA的jdk是什么意思啊是里面分支的技术JDK是什么jdk是什么JAVA里面的JDK是指什么呢jdk到底有什么作用jdk是整个java开发的核心,是Java语言的

2024年7月6日 11:38

curl的形容词形式(curl your toes是很激动的意思吗俚语中)

curl的形容词形式(curl your toes是很激动的意思吗俚语中)

本文目录curl your toes是很激动的意思吗俚语中wind用英语怎么读音读出来curl 与 curve 在使用上有何区别英语中头发的形容词:长短、曲直、颜色、beautiful等 怎么排序y, er, ow, ble结尾的双音节形容

2024年6月17日 19:28

eclipse功能介绍(eclipse 是什么)

eclipse功能介绍(eclipse 是什么)

本文目录eclipse 是什么eclipse是什么意思eclipse常用的一些功能eclipse怎么创建web项目eclipse是干嘛用的eclipse是干什么的用的啊eclipse做什么用的能详细介绍Eclipse么谢谢eclipse 是

2024年6月30日 02:00

logcat可以删除吗(logcat.zip可以删除不)

logcat可以删除吗(logcat.zip可以删除不)

“logcat可以删除吗”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看logcat可以删除吗(logcat.zip可以删除不)!本文目录logcat.zip可以删除不用logcatProc = Runtime.getRun

2024年7月12日 17:42

数据库技术顾问面试题(数据库常见笔试面试题)

数据库技术顾问面试题(数据库常见笔试面试题)

大家好,如果您还对数据库技术顾问面试题不太了解,没有关系,今天就由本站为大家分享数据库技术顾问面试题的知识,包括数据库常见笔试面试题的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录数据库常见笔试面试题数据仓库面试题

2024年8月1日 09:30

服务器系统备份(有两台服务器,如何做双机热备份)

服务器系统备份(有两台服务器,如何做双机热备份)

本文目录有两台服务器,如何做双机热备份服务器怎么做定时备份、自动备份服务器备份方式大概有以下几种 详细�0�3服务器系统如何备份才能保证数据万无一失服务器备份该如何进行服务器数据怎样备份服务器差异备份怎么做如何选择正确的服务器备份方法服务器

2024年7月4日 00:34

html文件怎么改成exe文件(怎么把htm文件转化为exe文件)

html文件怎么改成exe文件(怎么把htm文件转化为exe文件)

本文目录怎么把htm文件转化为exe文件怎么把360帮帮堂的安装包.html格式改为.exe格式,家里的文件夹都看不到.html只有打开网站才看的到.html怎么把文件的后缀名改exe那种的html怎么转换EXE文件html打包成exe文件

2024年7月18日 10:25

python是强类型还是弱类型(什么是强类型,什么是弱类型哪种更好些为什么)

python是强类型还是弱类型(什么是强类型,什么是弱类型哪种更好些为什么)

各位老铁们,大家好,今天由我来为大家分享python是强类型还是弱类型,以及什么是强类型,什么是弱类型哪种更好些为什么的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我

2024年7月16日 16:13

让div水平垂直居中(html的问题,怎么让一个DIV在另一个DIV中水平垂直居中)

让div水平垂直居中(html的问题,怎么让一个DIV在另一个DIV中水平垂直居中)

大家好,今天小编来为大家解答以下的问题,关于让div水平垂直居中,html的问题,怎么让一个DIV在另一个DIV中水平垂直居中这个很多人还不知道,现在让我们一起来看看吧!本文目录html的问题,怎么让一个DIV在另一个DIV中水平垂直居中怎

2024年7月18日 06:43

java培训课程设计(无锡java培训有哪些内容无锡中软卓越的Java培训课程怎么设置的)

java培训课程设计(无锡java培训有哪些内容无锡中软卓越的Java培训课程怎么设置的)

本文目录无锡java培训有哪些内容无锡中软卓越的Java培训课程怎么设置的参加java培训,怎样的课程设置才合理无锡java培训有哪些内容无锡中软卓越的Java培训课程怎么设置的首先可以从课程体系方面考虑下,可以做如下参考初级JAVA的基础

2024年7月5日 21:24

clown是什么意思(clown这英语怎么念用汉字来表达,)

clown是什么意思(clown这英语怎么念用汉字来表达,)

本文目录clown这英语怎么念用汉字来表达,clown是什么意思 clown怎么解释clown是什么意思clown是什么意思啊Clown是什么意思clown这英语怎么念用汉字来表达,英  一、意思:n. 小丑;粗鲁愚蠢的人v. 扮小丑;胡闹

2024年6月26日 02:57

电子表格数字相加方法(excel表格数据相加的方法)

电子表格数字相加方法(excel表格数据相加的方法)

本文目录excel表格数据相加的方法EXCEL表格里数字相加 有以下几种操作方法excel表格内怎样计算两数值相加表格数字怎么求和excel表格内容相加的方法EXCEL表格,怎么将一个单元格里面的数字全部相加EXCEL表格里数字相加表格里的

2024年6月29日 13:24

网络技术与应用(计算机网络技术和计算机应用技术 哪个好)

网络技术与应用(计算机网络技术和计算机应用技术 哪个好)

本文目录计算机网络技术和计算机应用技术 哪个好计算机网络技术与应用的内容简介网络技术应用都有哪些计算机网络技术和计算机应用技术有什么区别啊计算机网络技术与应用的介绍计算机网络技术与应用的目录计算机网络技术与计算机应用技术有什么区别计算机网络

2024年5月1日 08:55

iomanip和iostream(c++中的iomainp.h和iostream.h有什么区别)

iomanip和iostream(c++中的iomainp.h和iostream.h有什么区别)

本文目录c++中的iomainp.h和iostream.h有什么区别#include #include #include using namespace std; void main() { double suC++头文件iomanip 有

2024年7月24日 12:03

html5模板psd(淘宝C店的psd模版如何使用)

html5模板psd(淘宝C店的psd模版如何使用)

“html5模板psd”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看html5模板psd(淘宝C店的psd模版如何使用)!本文目录淘宝C店的psd模版如何使用网站前台开发:用的模板是PSD,HTML模板,后台程序员用的是A

2024年9月7日 16:40

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1730
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1154
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1151
标签列表

热门搜索