信息存储

vue中使用localStorage存储信息

感情迁移 提交于 2020-02-05 01:25:41
一 什么是localStorage 对浏览器来说,使用 Web Storage 存储键值对比存储 Cookie 方式更直观,而且容量更大,它包含两种:localStorage 和 sessionStorage sessionStorage(临时存储) :为每一个数据源维持一个存储区域,在浏览器打开期间存在,包括页面重新加载 localStorage(长期存储) :与 sessionStorage 一样,但是浏览器关闭后,数据依然会一直存在 所以上次使用cookie的时候就遇到了一个坑,设置后马上访问session会获取不到,蛋疼,还需要刷新一下,原因是: 当我们首次访问设置Cookie的页面时,服务器会把设置的Cookie值通过响应头发送过来,告诉浏览器将cookie存储的本地相应文件夹中(注意:第一次访问时本地还没有存储Cookie,所以此时获取不到值); 当第二次访问(或在进行cookie设置后,过期前所有的访问)时,请求头信息你中都会把Cookie值携带。(百度到的,暂时还没理解透彻,先搬过来). 二 使用方法 注意:sessionStorage 和 localStorage 的用法基本一致,引用类型的值要转换成JSON,所以这里就只列举localStorage 1 保存 //对象 const info = { name: 'hou', age: 24, id: '001'

部署Nfs服务

…衆ロ難τιáo~ 提交于 2020-02-04 11:16:26
服务概述 Nfs是network file system的缩写,中文意思是网络文件系统,主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或者目录 互联网中小型网站集群架构后端常用Nfs进行相互据共享 大型网站,有可能用到更复杂的分布式文件系统,例如:Moosefs GlusterFs FastDFS 存储服务器存在的意义 ①实现数据统一存储 ②节省磁盘购买成本 存储服务存储原理 在存储客户端创建本地存储数据目录 在存储服务端创建共享存储数据目录 实现客户端目录和存储目录建立挂载 客户端目录中操作数据等价于存储服务器目录中操作数据 部署过程 服务端 安装软件 yum -y install rpcbind nfs-utils 编写配置文件 vim /etc/exports 创建存储目录 mkdir /data chown nfsnobody.nfsnobody /data 编写本地解析配置文件 vim /etc/hosts 启动服务程序 systemctl start nfs rpcbind 客户端 安装软件程序 yum -y install nfs-utils 2.挂载应用存储服务 临时挂载 mount -t nfs ip地址或者主机名:/存储目录 挂载点 永久挂载 ①vim /etc/rc.local ②vim /etc/fstab( 先加载/etc/fstab

MongoDB入门

橙三吉。 提交于 2020-02-03 09:02:53
概念 MongoDB:是一个数据库 ,高性能、无模式、文档性,目前 nosql 中最热门的数据库,开源 产品,基于 c++开发。是 nosql 数据库中功能最丰富,最像关系数据库的。 MongoDB与mysql的概念关系对比 MongoDB 的应用已经渗透到各个领域,比如游戏、物流、电商、内容管理、社交、物联网、 视频直播等,以下是几个实际的 应用案例: 游戏场景,使用 MongoDB 存储游戏用户信息,用户的装备、积分等直接以内嵌文档 的形式存储,方便查询、更新 物流场景,使用 MongoDB 存储订单信息,订单状态在运送过程中会不断更新,以 MongoDB 内嵌数组的形式来存储,一次查询就能将订单所有的变更读取出来。 社交场景,使用 MongoDB 存储存储用户信息,以及用户发表的朋友圈信息,通过地 理位置索引实现附近的人、地点等功能 物联网场景,使用 MongoDB 存储所有接入的智能设备信息,以及设备汇报的日志信 息,并对这些信息进行多维度的分析 视频直播,使用 MongoDB 存储用户信息、礼物信息等 不使用 MongoDB 的场景 高度事务性系统:例如银行、财务等系统。MongoDB 对事物的支持较弱; 传统的商业智能应用:特定问题的数据分析,多数据实体关联,涉及到复杂的、高度优 化的查询方式; 使用 sql 方便的时候;数据结构相对固定,使用 sql

Git内部原理探索

人走茶凉 提交于 2020-02-03 02:14:21
目录 前言 Git分区 .git版本库里的文件/目录是干什么的 Git是如何存储文件信息的 当我们执行git add、git commit时,Git背后做了什么 Git分支的本质是什么 HEAD引用 参考 @ 前言 洞悉技术的本质,可以让我们在层出不穷的框架面前仍能泰然处之。用了那么久的 Git,不懂点内部原理,那可不行!懂点原理可以让我们遇到问题的时候能够更好更快的理清解决问题的思路。 博客原文 要真正读懂本文可能需要以下基础: 有 Git 使用经验 对 Git 的三个分区有所了解 熟悉常用的 Linux 命令 对经典哈希算法有一定的了解,比如 SHA-1 、SHA-256、MD5等 在开始之前,让我们先抛出几个问题,然后一一解决、回答它们 .git版本库里的文件/目录是干什么的? Git是如何存储文件信息的? 当我们执行git add、git commit时,Git背后做了什么? Git分支的本质是什么? Git分区 在真正开始之前,让我们先回顾下Git的三个分区(Workspace、Index / Stage、git repository) 工作区(Workspace):此处进行代码文件的编辑 索引或称暂存区(Index / Stage):存储文件状态信息,进行commit前会对此时的文件状态作快照(Snapshot) Git版本库(git repository):由Git

远程监控 – 数据采集管道

时光怂恿深爱的人放手 提交于 2020-01-30 08:01:42
数据采集​​管道是远程监控解决方案的核心所在,后者是 Windows Azure 中云服务基础项目的一部分。该管道是 Wiki 系列 中第三篇 文章 的主题。它在解决方案中的角色是从各个存储库中提取不同的信息并将其聚合到一个关系数据库。之后可以将该数据库用于关联和分析捕获指标的长期趋势、深入到具体问题和事件,以及订阅预定义和动态报表与仪表板(但是别急,这将是我们下一篇文章的主题)。以下是一些可以通过该管道调查的示例问题,“客户报告性能下降时,我的应用程序组件出现了什么状况?”或“应用程序在 UTC 时间上午 12 点至下午 1 点之间产生超时错误时,我的数据层发生了什么变化?”这些问题正是我们希望我们的端到端远程监控解决方案能够解决的。 图 1 - 数据采集​​管道是整个远程监控解决方案体系结构中的重点 从体系结构的角度来看,我们可以将数据采集管道的设计细分为三个主要部分: 1. 一个执行导入和转换任务的可配置计划程序引擎。 2. 一组查询各种信息源、应用一些转换逻辑并将结果推送到集中存储库的可扩展任务。 3. 一个将这些数据存储在常规关系架构中的 Windows Azure SQL 数据库实例,可用于执行分析查询并提取有意义的信息。 实施计划程序引擎时,我们决定采用“拉”的机制,按一定的时间间隔查询各种数据源。采用这一方法而非更复杂的“推”和“流化”方法的原因有很多。主要原因是

远程监控 – 数据采集管道

余生颓废 提交于 2020-01-30 06:26:45
数据采集​​管道是远程监控解决方案的核心所在,后者是 Windows Azure 中云服务基础项目的一部分。该管道是 Wiki 系列 中第三篇 文章 的主题。它在解决方案中的角色是从各个存储库中提取不同的信息并将其聚合到一个关系数据库。之后可以将该数据库用于关联和分析捕获指标的长期趋势、深入到具体问题和事件,以及订阅预定义和动态报表与仪表板(但是别急,这将是我们下一篇文章的主题)。以下是一些可以通过该管道调查的示例问题,“客户报告性能下降时,我的应用程序组件出现了什么状况?”或“应用程序在 UTC 时间上午 12 点至下午 1 点之间产生超时错误时,我的数据层发生了什么变化?”这些问题正是我们希望我们的端到端远程监控解决方案能够解决的。 图 1 - 数据采集​​管道是整个远程监控解决方案体系结构中的重点 从体系结构的角度来看,我们可以将数据采集管道的设计细分为三个主要部分: 1. 一个执行导入和转换任务的可配置计划程序引擎。 2. 一组查询各种信息源、应用一些转换逻辑并将结果推送到集中存储库的可扩展任务。 3. 一个将这些数据存储在常规关系架构中的 Windows Azure SQL 数据库实例,可用于执行分析查询并提取有意义的信息。 实施计划程序引擎时,我们决定采用“拉”的机制,按一定的时间间隔查询各种数据源。采用这一方法而非更复杂的“推”和“流化”方法的原因有很多。主要原因是

etcd

一个人想着一个人 提交于 2020-01-30 01:00:03
随着CoreOS和Kubernetes等项目在开源社区日益火热,它们项目中都用到的etcd组件作为一个 高可用、强一致性的服务发现存储仓库 ,渐渐为开发人员所关注。在云计算时代,如何让服务快速透明地接入到计算集群中,如何让共享配置信息快速被集群中的所有机器发现,更为重要的是,如何构建这样一套高可用、安全、易于部署以及响应快速的服务集群,已经成为了迫切需要解决的问题。etcd为解决这类问题带来了福音,本文将从etcd的应用场景开始,深入解读etcd的实现方式,以供开发者们更为充分地享用etcd所带来的便利。 etcd 是一个高可用的 Key/Value 存储系统,主要用于分享配置和服务发现。etcd 的灵感来自于 ZooKeeper 和 Doozer,側重于: 简单 :支持 curl 方式的用户 API (HTTP+JSON) 安全 :可选 SSL client证书认证 高速 :单实例可达每秒 1000 次写操作 可靠 :使用 Raft 实现分布式 Etcd is written in Go and uses the raft consensus algorithm to manage a highly-available replicated log. 经典应用场景 要问etcd是什么?很多人第一反应可能是一个键值存储仓库,却没有重视官方定义的后半句,用于 配置共享和服务发现 。

Cookie&Session会话技术

我的梦境 提交于 2020-01-30 00:19:35
Cookie&Session会话技术 一.会话技术 1) 从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,成为一次会话。会话技术就是记录这次会话中客户端的状态与数据的。 2)会话技术分为Cookie和Session: Cookie:数据存储在客户端本地,减少服务器端的存储的压力,安全性不好,客户端可以清除cookie; Session:将数据存储到服务器端,安全性相对好,增加服务器的压力; 二、Cookie技术 1.服务器端向客户端发送一个Cookie 1)创建Cookie: Cookie cookie = new Cookie(String cookieName,String cookieValue); 注意:Cookie中不能存储中文 。 2)设置Cookie在客户端的持久化时间: cookie.setMaxAge(int seconds); ---时间秒 注意:如果不设置持久化时间,cookie会存储在浏览器的内存中,浏览器关闭 cookie信息销毁(会话级别的cookie),如果设置持久化时间,cookie信息会被持久化到浏览器的磁盘文件里 3)设置Cookie的携带路径: cookie.setPath(String path); 注意:如果不设置携带路径,那么该cookie信息会在访问产生该cookie的 web资源所在的路径都携带cookie信息 4

Django视图

和自甴很熟 提交于 2020-01-29 11:24:30
Django中视图的功能: 接收请求,进行处理,与M和T进行交互,返回应答 返回html内容HttpResponse、重定向页面redirect、json数据及异常等 1. 视图函数 定义视图函数:参数:request(必须),返回一个HttpResponse类型的对象或者HTTP404异常(参数名可以自定义不建议修改) URL配置:建立URL与视图函数之间的对应关系 URL配置 在项目的urls文件中包含具体应用的urls文件,在具体应用的urls文件中包含具体url和视图的对应关系 url配置项定义在一个名叫urlpatterns的列表中,其中的每一个元素就是一个配置项,每一个配置项都调用url函数(高版本使用path、re_path函数) url匹配过程: 注意: 匹配成功调用视图函数产生内容返回客户端,匹配失败产生404异常 不能在开始加反斜杠,推荐在结束加反斜杠 内置错误视图 404:找不到页面(请求的URL没有配置或者配置错误) - 关闭调试模式之后,默认会显示一个标准的错误页面,如果要显示自定义的页面,则需要的templates目录下面自定义一个404.html文件 - 默认情况下Django会向404.html文件传递一个参数:request_path(请求的路径) 500:服务器端错误(视图函数内部执行出错) - 默认会显示一个标准的500服务器错误页面

一起学习JVM-内存结构-方法区(Method Area)(线程共享的区域)

我怕爱的太早我们不能终老 提交于 2020-01-29 09:53:49
文章目录 方法区(Method Area) 运行时常量池 StringTable(串池) 方法区(Method Area) 定义: 存储了跟类相关的信息,如:成员变量、方法、构造器及常量池等。 逻辑上是堆的一部分,但是具体的实现是不一样的。比如:oracle公司的Hotspot JVM 在1.8之前方法区的实现叫永久代,就是使用堆的一部分作为方法区。 而1.8之后方法区的实现叫元空间,使用的是本地内存也就是系统内存。 特点: 1.所有Java线程共享的区域 2.能发生outOfMemoryErrot(内存溢出) 产生方法区内存溢出的场景: 动态产生class并加载的场景:如, spring利用cglib生成的代理类,mybatis用cglib动态生成mapper接口的实现类等 在JDK1.8之前,spring、mybatis等动态生成的类还是很容易造成永久代的内存溢出。 在1.8之后,因为元空间使用的是系统内存,相对来说充裕了很多,而且垃圾回收也是由自己管理的 演示代码: 1.8 以前会导致永久代内存溢出: 注意:该代码应用于JDK1.6版本 /** * 演示永久代内存溢出 java.lang.OutOfMemoryError: PermGen space * 设置启动参数,永久代最大内存为8M: -XX:MaxPermSize=8m */ public class Demo1_6