长文前排提醒,收藏向前排提醒,素质三连 (转发 + 在看 + 留言) 前排提醒! 前言 Redis 作为一个开源的,高级的键值存储和一个适用的解决方案,已经越来越在构建 「高性能」.「可扩展」 的 Web 应用上发挥着举足轻重的作用. 当今互联网技术架构中 Redis 已然成为了应用得最广泛的中间件之一,它也是中高级后端工程 技术面试 中面试官最喜欢问的工程技能之一,不仅仅要求着我们对 基本的使用 进行掌握,更要深层次地理解 Redis 内部实现 的细节原理. 熟练掌握 Redis,甚至可以毫不…
持久化介绍 redis 提供了两种方式方式进行数据的持久化(将数据存储到硬盘中):第一种称为快照(snapshotting)RDB,它将某一时刻的所有数据都写入硬盘,所以快照是一次全量备份,并且存储的数据形式是二进制序列化形式:另一种方式是只追加文件(append-only file)AOF, 它会在执行命令时将命令复制一份到硬盘中,AOF在长期运行中会变的非常庞大,数据库重启加载AOF日志将会很慢: redis 将数据持久化的主要原因就是重用数据,或者防止系统故障,备份数据: 两种方式的持久化…
1. Memcache与Redis的区别 1.1. 存储方式不同 1.2. 数据支持类型 1.3. 使用底层模型不同 2. Redis支持的数据类型 3. Redis的回收策略 4. Redis小命令 4.1. 连接 4.2. MONITOR 4.3. SLOWLOG 4.4. INFO 5. 应用场景 5.1. 缓存 5.2. 对用户访问某个API进行频率限制 5.3. 批量获取key 5.4. 用户属性存储 5.5. 实现计数器 5.6. 分布式锁 5.7. 取最新N个数据的操作 5.8. …
1.引言 对于即时通讯网来说,所有的技术文章和资料都在围绕即时通讯这个技术方向进行整理和分享,这一次也不例外.对于即时通讯系统(包括IM.消息推送系统等)来说,MQ消息中件间是非常常见的基础软件,但市面上种类众多.各有所长的MQ消息中件间产品,该怎么去选择?这是个问题! 对于很多经验不足的开发者来说,一个公司内部用的IM聊天系统,总用户量也不过百十来人,动辄就是Kafka.MongoDB,美其名曰为了高性能和可扩展性,真是大炮打蚊子.而对于中大型的即时通讯场景来说,有的开发者确为了贪图使用简单.…
引言 有一次我在培训时说「程序员要善于使用 Terminal 以提高开发效率」,一位程序员反驳道:「这是 21 世纪,我们为什么要用落后的命令行,而不是先进的 GUI?」 是的,在一些人眼里,这个黑黑的终端窗口确实代表着落后,或者装B. 而在另一些人手里,它却是一个高效的工具. 其实很多人觉得 Terminal 难用,他们认为: 命令很多,难记 敲命令很麻烦 界面黑黑的,难看 ... 我认为这些印象可能都来自于「未经任何武装」的 Terminal,实际上始终有一部分人是 Terminal 的忠实…
妈妈再也不用担心我使用git了 Dec 29, 2014 git git由于其灵活,速度快,离线工作等特点而倍受青睐,下面一步步来总结下git的基本命令和常用操作. 安装msysgit 下载地址:msysgit,安装完成后配置系统环境变量,打开git bash,尽量少用图形化工具git gui,推荐使用命令行. 你可以在本地操作git,也可以在远程服务器仓库操作git,例如github,这样你就需要配置下ssh key,详情请查看官方文档说明generating-ssh-keys git操作 1…
前几天,修电脑主析就捣鼓刷BIOS,结果刷完黑屏开不了机,立刻意识到完了,BIOS刷错了.就从网上查资料,各种方法试了个遍,什么用处都没有.终于功夫不负有心人,找到了编码器,知道了怎么用.下面看看具体用法: 先买了一个便宜点的编码器: <ignore_js_op> 把刷错的BIOS芯片先拆下来:<ignore_js_op> 把芯片放到编码器上: 再找一台电脑,我的笔记本派上用场了,下载编码器的驱动程序和编码器软件:  <ignore_js_op> <ignore_…
我们上次做了 你的第一个爬虫,爬取当当网 Top 500 本五星好评书籍 有些朋友觉得 利用正则表达式去提取信息 太特么麻烦了 有没有什么别的方式 更方便过滤我们想要的内容啊 emmmm 你还别说 还真有 有一个高效的网页解析库 它的名字叫做 BeautifulSoup 那可是   它   是一个可以从 HTML 或 XML 文件中提取数据的 Python 库 那么这么玩呢 ... 接下来就是 学习python的正确姿势       首先我们要安装一下这个库 pip install beauti…
用js实现收银功能. <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>xx超市收银系统</title> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script type=…
博主为从区域规划转行地图学的小学渣一枚,最近处理数据希望对结果进行三维可视化,意外发现从小用到大的EXCEL可以绘制地图且功能非常强大,在这里做一下简单介绍,希望可以给看官提供些许帮助.那下面就开始吧 1 前戏 1.1版本 Office2013及以上版本. 1.2PowerMap下载 我使用的是Office2013,因此需要先下载插件PowerMap.(据说2016版本插入选项中自带此功能,整个前戏部分可跳过直接进入高潮) 下载地址:https://www.microsoft.com/en-us…
本文适合的读者?‍?‍?‍? 现在在手淘,京东,今日头条,美柚等过亿用户的手机app中的,都常见h5网页,他们有更新快,灵活,便于分享和传播的特性.这里有他们中的几个h5的例子:(手淘,美柚).这些app中都嵌者数以百计,千计的h5网页.背后他们开发这些h5的框架是怎么样的呢? 或许你也想开发一些h5,或者简单的react,vue应用,做些广告,做些互动和营销,发布到微信朋友圈传播,那如何快速的搭建和发布这些h5呢? 或许你是前端工作不久的初学者,搭建这样的多页h5网站,怎么样的架构才是正确的打…
不知道大家接触 Linux 系统有多久了,可曾了解过 Linux 中有哪些特殊的字符呢?其实啊,那些特殊字符都大有用处呢,今天的文章就给大家简单地科普一下 Linux 中你需要了解的 15 个特殊字符,想学或刚学 Linux 的小伙伴赶紧上车了为! ~ 主目录 这个波浪号 ~ 指的是主目录,也就是我们用户的个人目录,无论你身在何方,输入 cd ~ 它将带你回家! cd ~ 更高端的玩法就是在它后面加上具体的路径,直接定位到家目录中的指定位置,是不是很方便呢? cd ~/work/archive…
写在前面 说来也很巧, 下午再做一个页面,再普通不过的分页列表,我还是像往常一样,基于MVC环境下,我正常用PagedList.MVC AJAX做无刷新分页,这时候问题就来了,列表数据中有个轮播图用到了slides.js插件,轮播图也用到了分页,数据第一页轮播图页码能正常使用,数据列表翻到第二页则轮播图的页码就无法正常使用,实际上PagedList.MVC自带的样式文件已经和slides.j自带的样式文件冲突,我还特意修改了slides.js的样式文件,然并无卵用,让郁闷飞一会... 1.基于M…
获取spring源码: http://repo.springsource.org/libs-release-local/ http://repo.springsource.org/libs-release-local/org/springframework/spring/3.2.4.RELEASE/   从第一个一步步找下去,spring和security都有,包括source源代码 如 spring-aspects-3.2.13.RELEASE.jar对应源码文件为: spring-aop-3…
http://blog.csdn.net/farmer_cc/article/details/41830999 HTML编码:html文件是utf-8编码的,不确定的话用记事本打开,另存为的时候就能够看到是否是utf-8编码的了,不是的改成utf-8编码…
------------------更新:201411190903------------------ 经过思考和实践,发现套路中的第1条是不必要的,就是完全可以不用定义一个名为Default+属性名的字段或属性,只要实现Reset和ShouldSerialize这俩方法就可以了.关于这俩方法,应该是有相关文档的,果然,在MSDN找到说法:http://msdn.microsoft.com/zh-cn/library/53b8022e(v=vs.80).aspx ----------------…
原来JDK早早就给我准备好了要用到的工具..反编译,JVM性能监视.诊断. JDK(Java Development Kit)是Java程序员最核心的开发工具,没有之一. JDK是一个功能强大的Java开发套装,它不仅仅为我们提供了Java运行环境,还给开发人员提供了许多有用的开发组件(位于bin目录中,如下图所示).仅仅使用JDK,就能够解决我们在Java开发过程中遇到的许多问题. 下面,我们就按照工具文件名称的英文顺序来逐一介绍JDK内置的工具. 工具名称 描述 appletviewer.e…
创建一个srceen screen -S test1 从screen离开 crtl+a d (左手按住crtl和a 然后右手按d) 查看当前有多少screen screen -ls 回到screen screen -r test1 退出screen exit…
https://github.com/papyros/qml-material http://www.zhihu.com/question/38523930…
从博主学习前端一路过来的经历了解到,前端移动开发是大部分从PC端转战移动端的小伙伴都非常头疼的一个问题,这边博主就根据一篇自己看过的移动开发文章来剖析一下网易和淘宝的rem解决方案,希望能够帮助到一些从PC端转战web移动开发的小伙伴,因为是第一次写博文,写得不好的地方也希望大家多多包涵啦(*^__^*) 嘻嘻--(pc:文章有点长,如果你现在时间紧迫,那可以先收藏,等到有时间了再回头慢慢品尝喔) 首先我们一起看看这篇打通博主web移动开发任督二脉的武功秘籍吧: 从网易与淘宝的font-size…
什么是 .NET Core Global Tools? Global Tools是.NET Core 2.1 中一个初次出现的特性.Global Tools提供了一种方法,让开发人员编写的.NET Core应用可以打包成NuGet包交付.如果.NET Core运行在目标平台上,那么一个恰当打包的Global Tool就可以在那上面运行.JavaScript开发人员可能会发现一件有趣的事,就是这个工具直接借鉴了NPM Global Tools. 安装程序(工具)命令如下: dotnet insta…
Profiler React16.5正式在devtool中加入了Profiler功能,用于收集每次变更导致的渲染时间,帮助开发者发现潜在的性能问题,有助于开发更高性能的React应用 官方博客 如何使用 在Chrome的开发工具插件react devtool中多了一个Profiler的tab,点击可以切换到Profiler界面 在你使用React16.5之后的版本中,开发时默认开启Profiler功能,要想在正是环境也使用这个功能,可以看这里 默认打开Profiler什么都没有,要点击录制按钮进…
背景 最近互联网上出现一个热词就是"freestyle",源于一个比拼rap的综艺节目.在节目中需要大量考验选手的freestyle能力,freestyle指的是rapper即兴的根据一段主题讲一串rap.freestyle除了考验一个人rap的技巧,其实我觉得最难的是如何在短时间内在脑海中浮现出有韵律的歌词. PAI平台是阿里云人工智能平台,在上面可以通过最简单的拖拉拽的方式,完成对各种结构化以及非结构化数据的处理.因为有了PAI,这种自动生成歌词的事情都不再成为难题.我现在不光可以…
matlab命令 一.常用对象操作:除了一般windows窗口的常用功能键外.1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看.2.who 可以查看当前工作空间变量名, whos 可以查看变量名细节.3.功能键:功能键 快捷键 说明方向上键 Ctrl+P 返回前一行输入方向下键 Ctrl+N 返回下一行输入方向左键 Ctrl+B 光标向后移一个字符方向右键 Ctrl+F 光标向前移一个字符Ctrl+方向右键 Ctrl+R 光标向右移一个字符Ctrl+方向左键 Ctr…
背景 最近互联网上出现一个热词就是“freestyle”,源于一个比拼rap的综艺节目.在节目中需要大量考验选手的freestyle能力,freestyle指的是rapper即兴的根据一段主题讲一串rap.freestyle除了考验一个人rap的技巧,其实我觉得最难的是如何在短时间内在脑海中浮现出有韵律的歌词. 本文会介绍如何自动生成歌词,到底什么工具有这样的功效呢?答案是PAI.PAI平台是阿里云人工智能平台,在上面可以通过最简单的拖拉拽的方式,完成对各种结构化以及非结构化数据的处理.因为有了…
简介 有时候在忙工作,女朋友发了一个消息,就撤回了,但是人天生的都有一颗好奇心,而且在当今这个时代找个女朋友不容易,一个程序猿找一个女朋友更是不容易的.人家好不容易跟你,你还不得把人家当老佛爷侍候着,侍候着也不行,还得小心翼翼地侍候着,但是声明:宏哥可能过分宠她,但绝对不是妻管严哈!因此当她撤回消息后,慌得一逼,是不是不高兴了?是不是生气了?还是发生什么事了?是不是生病了?还是我哪里惹到她了?俗话说:不干亏心事,不怕鬼叫门,虽然自己确实没有干亏心事,但是心里仍然打着小鼓,脑海里一遍一遍的过滤着,…
简介 最近好多人都问到node怎么同时安装多个版本? 如何配置node的环境变量,如何自如的在多个版本中切换node?还有就是自己在做appium自动化的时候,有时候会因为node的版本过高或者是太低用命令启动appium时候而报错,试了一下是否可以安装一个高版本和低版本的node在一个系统中,你如果需要高版本的切换高版本的node,如果需要低版本的切换低版本的node,这样这个问题就会完美解决了,因为这种种原因,所以宏哥打算写一篇文章来专门讲解如何安装多个版本的node!!! node下载 n…
前言 越来越多的业务会用到AI相关的技术,大多数的AI模型是部署在云端使用的,毕竟服务端计算更快,管理也更容易.随着终端设备性能提升,在终端使用 AI 模型有了更大的价值,可以更好满足业务对响应实时性.数据隐私性的需求.滴滴出行的银行卡识别功能也打算部署在客户端,但是遇到的问题也不少: 1.模型升级困难,模型在终端的存在一般都是已应用软件为载体,用户可以选择是否对应用软件进行更新,导致模型版本会产生分化. 2.硬件适配问题,不同的终端设备因为厂商深度定制因素,会出现一些兼容问题 3.不同模型运行…
__dirname : 在任何模块文件内部,可以使用__dirname变量获取当前模块文件所在目录的完整绝对路径. path.resolve(): 方法将一系列路径或路径段解析为绝对路径. 语法: path.resolve([from ...], to) 说明:将参数 to 位置的字符解析到一个绝对路径里. 参数说明 from 源路径 to 将被解析到绝对路径的字符串 chunkname : 我的理解是未被列在entry中,却又需要被打包出来的文件命名配置. 没有给入口文件时,会生成了no-na…
背景 今天谁炒菜,谁洗碗,谁买菜...啊,Boss说用抽签吧,于是有了下图 这样存在作弊的问题(记住棍子特征,谁先,谁后抽等等)于是有了这个抽签小程序(当然小程序我一个人控制,我想不想作弊看心情了) 简介 扫码体验 数据服务,存储 本项目使用的是微信云开发,云数据库声明个抽签chouqianList集合即可(云开发为开发者提供完整的原生云端支持和微信服务支持,弱化后端和运维概念,无需搭建服务器,使用平台提供的 API 进行核心业务开发,即可实现快速上线和迭代) 运行前准备 (1)注册微信小程序,…