架构
文章平均质量分 80
架构知识
mydriverc2
这个作者很懒,什么都没留下…
展开
-
Nginx、HAProxy、LVS三者的优缺点
https://blog.csdn.net/qlj324513/article/details/81541282一、Nginx优点:1、工作在网络7层之上,可针对http应用做一些分流的策略,如针对域名、目录结构,它的正规规则比HAProxy更为强大和灵活,所以,目前为止广泛流行。2、Nginx对网络稳定性的依赖非常小,理论上能ping通就能进行负载功能。3、Nginx安装与配置比较简单,测试也比较方便,基本能把错误日志打印出来。4、可以承担高负载压力且稳定,硬件不差的情况下一般能支撑几转载 2021-05-11 10:14:05 · 612 阅读 · 0 评论 -
前后端分离部署方式
转自https://www.cnblogs.com/moveofgod/p/12363544.html写得简洁明了。------例如 vue , 这种前后端分离的框架如何部署1. 前后端一起部署, 前端打包成静态文件后, copy 到后端项目中,然后部署后端项目。 如果选择这种方式, 需要把dist文件夹里的内容, 一样的 copy 到 resource/static 文件夹下. 这种静态资源不会被 spring security 拦截. 所以这里需要配置一下, 让它不拦截..转载 2021-02-23 09:51:22 · 4912 阅读 · 0 评论 -
9种常见的前端跨域解决方案(详解)
https://www.imooc.com/article/291931一、什么是跨域? 在前端领域中,跨域是指浏览器允许向服务器发送跨域请求,从而克服Ajax只能同源使用的限制。什么是同源策略? 同源策略是一种约定,由Netscape公司1995年引入浏览器,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。 同源策略限制以转载 2021-02-22 18:18:57 · 18437 阅读 · 1 评论 -
nginx反向代理前后端分离项目(后端多台)
https://www.cnblogs.com/liuxiutianxia/p/11046160.html目前软件架构都比较流行前后端分离,前后端的分离也实现了前后端架构的分离,带来的好处 —— 整个项目的开发权重往前移,实现真正的前后端解耦,动态资源和静态资源分离,提高了性能和扩展性。通常SpringBoot与vue 进行前后端分离,主要有两种方式:1.打包(npm run build命令)vue项目出来的dist文件夹拷贝到springboot项目的static文件目录,部署到tomcat即转载 2021-02-22 18:15:51 · 789 阅读 · 0 评论 -
SpringBoot 实现前后端分离的跨域访问(Nginx)
https://www.jianshu.com/p/520021853827序言:使用Nginx反向代理,可以解决跨域无权和Session丢失的问题,十分方便。下面我们以前后端分离为案例,展开Nginx的使用教程。一. 配置和启动Nginx下载地址Nginx下载传送门:Nginx Stable Version Download注意事项:下载之后,记得解压到全英文路径,避免中文路径导致Nginx启动失败。修改配置打开nginx.conf ,清空配置项,然后将下面的配置信息原封不转载 2021-02-22 18:13:03 · 433 阅读 · 0 评论 -
nexus简介
https://blog.csdn.net/wc1695040842/article/details/102575420一、什么是Nexusnexus的全称是Nexus Repository Manager,是Sonatype公司的一个产品。它是一个强大的仓库管理器,极大地简化了内部仓库的维护和外部仓库的访问。我们主要用它来搭建公司内部的maven私服。但是它的功能不仅仅是创建maven私有仓库这么简单,还可以作为nuget、docker、npm、bower、pypi、rubygems、git转载 2021-02-22 17:34:44 · 5450 阅读 · 0 评论 -
centos搭建elasticsearch
1 创建用户因为启动Elasticsearch5.0版本及以上需要使用非root用户,需要新建一个用户来启动Elasticsearch,命令如下所示。useradd elastic #创建用户elasticgroupadd elastic #创建组elasticuseradd elastic -g elastic #将用户添加到组2 rpm下载安装rpm --import https://artifacts.elastic.co/GPG-KEY-elasti...原创 2021-02-21 00:17:04 · 1607 阅读 · 0 评论 -
Lucene,Solr,Elasticsearch之间的区别和联系
https://blog.csdn.net/weixin_44318830/article/details/109166004简介LuceneLucene是 apache 软件基金会某个项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。顺便提一下,Lucene最初是由Doug Cutting开发的,没错,就是那个创造了大数据Hadoop的...转载 2021-02-20 10:46:34 · 357 阅读 · 0 评论 -
ES与Solr的区别
https://blog.csdn.net/qq_34412985/article/details/97621382背景:它们都是基于Lucene搜索服务器基础之上开发,一款优秀的,高性能的企业级搜索服务器。【是因为他们都是基于分词技术构建的倒排索引的方式进行查询】开发语言:Java语言开发诞生时间:Solr :2004年诞生。ES:2010年诞生。ES 更新【功能越强大】区别:1.当实时建立索引的时候,solr会产生io阻塞,而es则不会,es查询性能要高于solr。2.在不断动态转载 2021-02-20 10:18:18 · 1094 阅读 · 0 评论 -
MySQL+MGR 单主模式和多主模式的集群环境 - 部署手册 (Centos7.5)
MySQL Group Replication(简称MGR)是MySQL官方于2016年12月推出的一个全新的高可用与高扩展的解决方案。MGR是MySQL官方在5.7.17版本引进的一个数据库高可用与高扩展的解决方案,以插件形式提供,实现了分布式下数据的最终一致性, 它是MySQL5.7版本出现的新特性,它提供了高可用、高扩展、高可靠的MySQL集群服务。MySQL组复制分单主模式和多主模式,mysql 的复制技术仅解决了数据同步的问题,如果 master 宕机,意味着数据库管理员需要介入,应用系统可能需要转载 2021-01-29 11:14:19 · 528 阅读 · 0 评论 -
vue、react、angular三大框架对比 && 与jQuery的对比
本文原链接:https://www.cnblogs.com/zhuzhenwei918/p/7447434.htmlvue与react vue和react是当前最火的两个前端框架,vue的发展很快,但是目前来说,react的生态系统会更强大,世界上使用这个框架的人也很多。 另外,react是facebook官方维护的, 而vue是尤雨溪本人维护的。 并且在其他周边库,如react的react-rouer和redux,是react社区在维护的。 而vue的vuex和vue-router都是尤雨溪在维转载 2021-01-27 14:34:39 · 805 阅读 · 0 评论 -
SPI
SPI ,全称为 Service Provider Interface,是一种服务发现机制。它通过在ClassPath路径下的META-INF/services文件夹查找文件,自动加载文件里所定义的类。SPI机制(Service Provider Interface)其实源自服务提供者框架(Service Provider Framework,参考【EffectiveJava】page6),是一种将服务接口与服务实现分离以达到解耦、大大提升了程序可扩展性的机制。引入服务提供者就是引入了spi接口的实现者原创 2020-08-29 12:48:33 · 156 阅读 · 0 评论 -
AOP面向切面编程
在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。web层级设计中,web层->网关层->服务层->数据层,每一层之间也是一个切面。编程中原创 2020-08-29 12:02:06 · 183 阅读 · 0 评论 -
Zookeeper 05 示例代码-主备节点切换
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/yanliang1/article/details/46548819收起主备节点的切换,是分布式应用的基本要求。现在用 Zookeeper 实现主备节点自动切换功能。基本思路:1 多个服务启动后,都尝试在 Zookeeper中创建一个EPHEMERAL 类型的节点,Zookeeper本身会保证,只有一个服务会创建成功,其他服...转载 2020-08-22 16:01:48 · 413 阅读 · 0 评论 -
正排索引和倒排索引
正排索引:正排索引是指文档ID为key,表中记录每个关键词出现的次数,查找时扫描表中的每个文档中字的信息,直到找到所有包含查询关键字的文档。Doc1:[Term1,Pos1],[Term2,Pos2],...Doc2:[Term1,Pos1],[Term2,Pos2],...倒排索引:由于正排的耗时太长缺点,倒排就正好相反,是以word作为关键索引。表中关键字所对应的记录表项记录了出现这个字或词的所有文档,一个表项就是一个字表段,它记录该文档的ID和字符在该文档...原创 2020-08-22 12:43:52 · 140 阅读 · 0 评论 -
Paxos算法原理和过程解析
https://blog.csdn.net/wolf_love666/article/details/92832811我们了解了2PC和3PC之后,我们可以发现,无论是二阶段提交还是三阶段提交都无法彻底解决分布式的一致性问题以及无法解决太过保守及容错性不好。Google Chubby的作者Mike Burrows说过,世上只有一种一致性算法,那就是Paxos,所有其他一致性算法都是Paxos算法的不完整版。Paxos算法是公认的晦涩,很难可能能将清楚,但是工程上也很难实现,所以有很多Paxos算法的工转载 2020-08-22 11:12:56 · 309 阅读 · 0 评论 -
CAS和ABA
CAS(Compare And Swap)是一种有名的无锁算法。CAS算法是乐观锁的一种实现。CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。当且仅当预期值A和内存值V相同时,将内存值V修改为B并返回true,否则返回false。某一线程执行一个CAS逻辑(如上图线程A),如果中途有其他线程修改了共享变量的值(如:上图中线程A执行到笑脸那一刻时),导致这个线程的CAS逻辑运算后得到的值与期望结果不一致,那么这个线程会再次执行CAS逻辑(这里是一个do while循环),直到成功为止。..原创 2020-08-22 09:56:34 · 210 阅读 · 0 评论 -
什么是乐观锁,什么是悲观锁
一、并发控制当程序中可能出现并发的情况时,就需要通过一定的手段来保证在并发情况下数据的准确性,通过这种手段保证了当前用户和其他用户一起操作时,所得到的结果和他单独操作时的结果是一样的。这种手段就叫做并发控制。并发控制的目的是保证一个用户的工作不会对另一个用户的工作产生不合理的影响。没有做好并发控制,就可能导致脏读、幻读和不可重复读等问题。常说的并发控制,一般都和数据库管理系统(DBMS)有关。在DBMS中的并发控制的任务,是确保在多个事务同时存取数据库中同一数据时,不破坏事务的隔离性和.转载 2020-08-22 09:44:10 · 202 阅读 · 1 评论 -
一文搞懂蓝绿发布、灰度发布和滚动发布
https://www.cnblogs.com/nulige/articles/10929182.html应用程序升级面临最大挑战是新旧业务切换,将软件从测试的最后阶段带到生产环境,同时要保证系统不间断提供服务。长期以来,业务升级渐渐形成了几个发布策略:蓝绿发布、灰度发布和滚动发布,目的是尽可能避免因发布导致的流量丢失或服务不可用问题。一、 蓝绿发布项目逻辑上分为AB组,在项目系统时,首先把A组从负载均衡中摘除,进行新版本的部署。B组仍然继续提供服务。当A组升级完毕,负载均衡重新.转载 2020-08-17 22:28:44 · 252 阅读 · 0 评论 -
SpringCloud各个组件说明及发音
1. 前言对于SpringCloud来说,首先我们需要认识一些基本的组件,这会让我们之后的讨论和交流更有效率。2. 组件名字和发音如果你都不知道别人再说什么,或者别人都不知道你再讲什么,就很尴尬了。Eureka [jʊ'ri:kə] Ribbon [ˈrɪbən] Feign [fen] Hystrix [hɪst'rɪks] Zuul [zulu] Sleuth [sluθ] Turbine [ˈtɜ:rbaɪn]3. 重要组件说明这里的说明借用网上一个很6的分类方式来说转载 2020-08-15 21:01:10 · 1231 阅读 · 0 评论 -
ZUUL-API网关
Zuul是Spring Cloud全家桶中的微服务API网关。所有从设备或网站来的请求都会经过Zuul到达后端的Netflix应用程序。作为一个边界性质的应用程序,Zuul提供了动态路由、监控、弹性负载和安全功能。Zuul底层利用各种filter实现如下功能:认证和安全 识别每个需要认证的资源,拒绝不符合要求的请求。 性能监测 在服务边界追踪并统计数据,提供精确的生产视图。 动态路由 根据需要将请求动态路由到后端集群。 压力测试 逐渐增加对集群的流量以了解其性能。 负载卸载 预先为每种类型的转载 2020-08-15 20:53:05 · 151 阅读 · 0 评论 -
微服务的发展历史
1 单机小型机时代2 互联网的诞生,IBM小型机,EMC的高端存储,追求单机服务能力3 复杂应用拆分。将大应用拆分为多个子应用。也叫垂直拆分。4 负载均衡设备产生,例如F5,PC形成一个集群,第一次引入了水平扩展的概念,实现了动态扩缩。5 工程师为节省成本,基于普通PC开发了软负载软件,例如LVS linux virtual Server6 将共同的功能抽象出来,形成服务。远程调用,服务治理,旁路负载。7 服务继续细化,出现微服务8 第一代服务网格架构Sidecar...原创 2020-08-15 14:43:29 · 1288 阅读 · 0 评论 -
一致性哈希算法
在了解一致性哈希算法之前,最好先了解一下缓存中的一个应用场景,了解了这个应用场景之后,再来理解一致性哈希算法,就容易多了,也更能体现出一致性哈希算法的优点,那么,我们先来描述一下这个经典的分布式缓存的应用场景。场景描述假设,我们有三台缓存服务器,用于缓存图片,我们为这三台缓存服务器编号为0号、1号、2号,现在,有3万张图片需要缓存,我们希望这些图片被均匀的缓存到这3台服务器上,以便它们能够分摊缓存的压力。也就是说,我们希望每台服务器能够缓存1万张左右的图片,那么,我们应该怎样做呢?如果我们没有任何规转载 2020-07-25 14:23:06 · 167 阅读 · 0 评论 -
OpenStack_Swift源码分析——Ring基本原理及一致性Hash算法
1、Ring的基本概念Ring是swfit中最重要的组件,用于记录存储对象与物理位置之间的映射关系,当用户需要对Account、Container、Object操作时,就需要查询对应的Ring文件(Account、Container、Object都有自己对应的Ring),Ring 使用Region(最近几个版本中新加入的)、Zone、Device、Partition和Replica来维护这些信息,对于每一个对象,根据你在部署swift设置的Replica数量,集群中会存有Replica个对象。部署完成后,转载 2020-07-25 14:14:48 · 466 阅读 · 0 评论 -
HDFS、Ceph、GFS、GPFS、Swift、Lustre
HDFS/CEPH/GFS/GPFS/Swift这类分布式存储,按照存储的类型来区分,HDFS/GPFS/GFS属于文件存储,CEPH属于统一存储–即块/对象/文件统一体,Swift属于对象存储-目前属于OpenStack下面的一个子项目。1)HDFSHadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部转载 2020-07-25 14:03:36 · 1211 阅读 · 0 评论 -
HDFS 与 Swift 区别
Swift和Hadoop分布式文件系统(HDFS)都有着相似的目的:实现冗余、快速、联网的存储swift 扩展性好,跨集群,无单点 无限的可扩展性 无单点故障swift 的多租户架构swift 可以写入多次swift 是通用的解决方案, 存储数量非常多的大小不一的文件, hdfs存储数量中等的大文件在Swift中,元数据呈分布式,跨集群复制。而在HDFS使用了中央系统来维护文件元数据(Namenode,名称节点),这对HDFS来说无异于单一故障点,因而扩展到规模非常大的环境显得更困难。...转载 2020-07-25 13:48:14 · 398 阅读 · 0 评论 -
OpenStack基础知识介绍(IaaS,PaaS,SaaS)
原文地址:http://cloud.51cto.com/art/201507/484616.htm了更好的理解,我们首先来说一下云计算的类型。根据所提供服务的类型,云计算有以下三种落地方式。为了更好的理解,我们首先来说一下云计算的类型。根据所提供服务的类型,云计算有以下三种落地方式:1、Iaas(基础架构即服务),用户能从中申请到硬件或虚拟硬件,包括裸机或虚拟机,然后在上边安装操作系统或其他应用程序。2、PaaS(平台即服务),用户能从中申请到一个安装了操作系统以及支撑应用程序运行所需.转载 2020-07-25 13:42:36 · 2392 阅读 · 0 评论 -
KVM和Xen虚拟化有什么区别?Xen和KVM优缺点对比
KVM和Xen是两大虚拟化技术,KVM和Xen又是免费开源的管理程序,新手站长网分享虚拟化技术KVM和Xen的区别优势对比:KVM和Xen的区别KVM:KVM是轻量级的虚拟化管理程序模块,该模块主要来自Linux内核;KVM的虚拟化需要硬件支持,如具有VT功能的Intel CPU和具有AMD-V功能的AMD CPU,KVM只能在具有虚拟化支持的CPU上运行。 Xen:Xen是Linux下的虚拟化解决方案,Xen的实现是基于支持Xen功能的kernel,在Xen控制下的kernel,称之为Domai转载 2020-07-25 10:46:09 · 13876 阅读 · 0 评论 -
Docker 和虚拟机的区别
Docker是基于容器的虚拟化技术,它提供了一种轻量级的打包和运行程序的方式,不需要为业务应用新启动一个操作系统。其原理是把应用程序和其运行环境一起打包到镜像中,增强了运行环境的一致性,大幅缩短业务应用部署上线的时间。另外由于Docker能够直接访问主机硬件,使得它的I/O操作比虚拟机要快得多。hypervisor虚拟化基于架构层,具体分为两类: 1. 直接运行在物理硬件上,基于内核实现的虚拟机,比如KVM。打开kvm有1,2,3,4等按钮,分别是不同的客户端; 2. 运行在一个操作系统内.转载 2020-07-25 10:44:24 · 1066 阅读 · 0 评论 -
libvirt简介
提到KVM的管理工具,首先不得不介绍的就是大名鼎鼎的libvirt,因为libvirt是目前使用最为广泛的对KVM虚拟机进行管理的工具和应用程序接口(API),而且一些常用的虚拟机管理工具(如virsh、virt-install、virt-manager等)和云计算框架平台(如OpenStack、OpenNebula、Eucalyptus等)都在底层使用libvirt的应用程序接口。libvirt是为了更方便地管理平台虚拟化技术而设计的开放源代码的应用程序接口、守护进程和管理工具,它不仅提供了对虚拟化客转载 2020-07-25 10:33:20 · 4002 阅读 · 0 评论 -
hypervisor
1、概念 Hypervisor——一种运行在基础物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享硬件。也可叫做VMM( virtual machine monitor ),即虚拟机监视器。Hypervisors是一种在虚拟环境中的“元”操作系统。他们可以访问服务器上包括磁盘和内存在内的所有物理设备。Hypervisors不但协调着这些硬件资源的访问,也同时在各个虚拟机之间施加防护。当服务器启动并执行Hypervisor时,它会加载所有虚拟机客户端的操作系统同时会分配给每.转载 2020-07-25 10:32:06 · 453 阅读 · 0 评论 -
openstack基本组件基础知识
https://blog.csdn.net/qq_33932782/article/details/107296426?fps=1&locationNum=2&spm=1018.2118.3001.4187Openstack:一.云计算+openstack概念:1.云计算是一种按使用量付费的模式,这种模式提供可用的,便捷的,按需的访问,通过互联网进入可配置的计算资源共享池(资源包括网络,计算,存储,应用软件,服务);2.OpenStack:是一个开源的云计算管理平台项目.转载 2020-07-25 10:01:41 · 995 阅读 · 0 评论 -
网络分裂(network partition)
一次网络分裂指的是,为了各自节点的优化,或者因为宕机,使得网络分离成独立子网的现象。例如,在这种情况下,各个子网需要具备分裂容忍(partition-tolerant)的能力,保证情况发生时,仍然能正常工作。CAP中的分区容错性:单台服务器,或多台服务器出问题(主要是网络问题)后,正常服务的服务器依然能正常提供服务,并且满足设计好的一致性和可用性重点在于:部分服务器因网络问题,业务依然能够继续运行Partition tolerance – if the network stops d..转载 2020-07-18 14:12:32 · 2128 阅读 · 1 评论 -
实现mysql的读写分离(mysql-proxy)
https://blog.csdn.net/wzt888_/article/details/81660849mysql-proxy简介MySQL读写分离是指让master处理写操作,让slave处理读操作,非常适用于读操作量比较大的场景,可减轻master的压力。 使用mysql-proxy实现mysql的读写分离,mysql-proxy实际上是作为后端mysql主从服务器的代理,它直接接受客户端的请求,对SQL语句进行分析,判断出是读操作还是写操作,然后分发至对应的mysql服务器上...转载 2020-07-04 14:31:56 · 258 阅读 · 0 评论 -
Java后台技术(TDDL)
https://www.cnblogs.com/chenchaochao034/p/11574820.html出现背景 当代互联网项目的数据都是海量的,当数据达到一定水平时,无法通过单个数据库服务器来实现,然后就出现了垂直分区(分库),根据业务不同对数据进行拆散,存储到不同的数据库中。但当数据继续增加时,单个数据库任然会因为数据量过大而导致性能下降,这时就可以采用水平分区(分表),将一个业务表拆成多个子表,比如user_table0、user_table1、user_table2,用N张表来维护同转载 2020-07-04 14:08:36 · 620 阅读 · 0 评论 -
mysql-proxy简介
转载于:https://www.cnblogs.com/jwentest/p/8552075.html# 背景今天同事分享的主题就是mysql-proxy,于是下来自己了解下,不求精通,只求知道这个玩意# 简介mysql-proxy是mysql官方提供的mysql中间件服务,上游可接入若干个mysql-client,后端可连接若干个mysql-server。它使用mysql协议,任何使用mysql-client的上游无需修改任何代码,即可迁移至mysql-proxy上。my.转载 2020-07-04 14:06:44 · 468 阅读 · 0 评论 -
ShardingSphere x Seata,一致性更强的分布式数据库中间件
日前,分布式数据库中间件ShardingSphere将 Seata 分布式事务能力进行整合,旨在打造一致性更强的分布式数据库中间件。背景数据库领域,分布式事务的实现主要包含:两阶段的 XA 和 BASE 柔性事务。XA 事务底层,依赖于具体的数据库厂商对 XA 两阶段提交协议的支持。通常,XA 协议通过在 Prepare 和 Commit 阶段进行 2PL(2 阶段锁),保证了分布式事务的 ACID,适用于短事务及非云化环境(云化环境下一次 IO 操作大概需要20ms,两阶段锁会锁住资源长...转载 2020-07-04 13:54:15 · 1023 阅读 · 0 评论 -
HBase和HDFS的关系
https://blog.csdn.net/zhangvalue/article/details/102155571问题:关系数据库已经流行很多年,并且Hadoop已经有了HDFS和MapReduce,为什么需要HBase?1、首先了解一下 HDFS文件存储系统和HBASE分布式数据库HDFS是Hadoop分布式文件系统。HBase的数据通常存储在HDFS上。HDFS为HBase提供了高可靠性的底层存储支持。Hbase是Hadoop database即Hadoop数据库。它是一个适合于非结构转载 2020-07-04 11:18:35 · 1549 阅读 · 0 评论 -
深入理解Hadoop HDFS【一篇就够】
又是一篇值得收藏温习的好文,更多好文请关注原文博主!!!原文=>https://blog.csdn.net/bingduanlbd/article/details/51914550#t24文本详细介绍了HDFS中的许多概念,对于理解Hadoop分布式文件系统很有帮助。1. 介绍在现代的企业环境中,单机容量往往无法存储大量数据,需要跨机器存储。统一管理分布在集群上的文件系统称为分布式文件系统。而一旦在系统中,引入网络,就不可避免地引入了所有网络编程的复杂性,例如挑战之一是如果保证在.转载 2020-07-04 11:05:34 · 662 阅读 · 1 评论 -
Redis和Memcache区别,优缺点对比
https://www.cnblogs.com/williamjie/p/11287167.html1、 Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等。2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。3、虚拟内存–Redis当物理内存用完时,可以将一些很久没用到的value 交换到磁盘4、过期策略–memcache在set时就指定,例如set key1 0...转载 2020-07-04 10:31:10 · 347 阅读 · 0 评论