1、什么是Redis?简述它的优缺点? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。 因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是 ...
分类:
其他好文 时间:
2019-08-17 20:03:36
阅读次数:
87
做一件事情: 打开冰箱,把大象放进冰箱,关上冰箱门 这是一串动作:面向过程 三个动作:打开,放进,关上,都围绕冰箱进行 把三个动作通过冰箱串起来: 冰箱.打开 冰箱.存储 冰箱.关闭 这个事情就是面向冰箱这个对象进行的:面向对象 1 //面向对象:三个特征:封装,继承,多态 2 3 //以后开发:其 ...
分类:
编程语言 时间:
2019-08-16 14:34:48
阅读次数:
121
一、计算机与网络基础知识 1.1、计算机基础知识 应用软件对硬件的操作必须调用操作系统的接口,由操作系统操控硬件 客户端软件想要基于网络发送一条消息给服务端软件的流程: 1、客户端软件产生数据,存放于客户端软件的内存中,然后调用接口将自己内存中的数据发送或拷贝给操作系统内存。 2、操作系统收到数据后 ...
分类:
其他好文 时间:
2019-08-15 18:58:43
阅读次数:
84
唯一id生成方案: a. 使用UUID生成唯一主键: 优点: 全局唯一。 缺点: 因为生成的内容是字符串, 不能排序, 不能按照时间先后排序,因为生成的是字符串类型的id, 可读性差。 b. 使用redis来生成全局唯一主键: 优点: redis是内存操作, 速度快, 生成的是数字, 可读性好, 并 ...
分类:
编程语言 时间:
2019-08-13 20:15:48
阅读次数:
115
https://my.oschina.net/u/1859679/blog/1844109 该模式可以有简单实现、也可以多线程实现、要看场景,比喻redis的实现就是简单,因为都是基于内存操作。 学习下! 基于Reactor Pattern 处理模式中,定义以下三种角色: Reactor 将I/O事 ...
分类:
编程语言 时间:
2019-08-10 14:20:41
阅读次数:
135
创建文本sum.c并编写如下程序: 通过如下命令生成sum.o文件。 gcc -O2 -c sum.c 通过如下命令查看在x86-64平台上的机器指令: objdump -d sum.o 最终的机器指令如下: lea传输源操作数偏移(而不是值)到目的寄存器。源操作数必须为内存操作数,目的寄存器必须为 ...
分类:
编程语言 时间:
2019-08-02 20:52:58
阅读次数:
114
redis单线程,为什么比较快 单线程指的是网络请求模块使用了一个线程(所以不需考虑并发安全性),即一个线程处理所有网络请求,其他模块仍用了多个线程。redis能够快速执行的原因有三点: (1) 绝大部分请求是纯粹的内存操作(非常快速) (2) 采用单线程,避免了不必要的上下文切换和竞争条件 (3) ...
分类:
其他好文 时间:
2019-07-12 12:36:31
阅读次数:
86
环境需求 1. 最低硬件配置:1核CPU,1G内存(1+1)提示:如果你的应用较多,而主机节点的硬件配置较低,建议在部署节点时开通虚拟虚拟内存;2. 生产环境建议使用2G或以上内存;3. 推荐安装系统:Ubuntu-16.04、Ubuntu-18.04、CentOS7.X、Debian9X的64位的 ...
分类:
Web程序 时间:
2019-07-11 17:22:22
阅读次数:
137
不管硬件寄存器和内存之间的强相似性, 存取 I/O 寄存器的程序员必须小心避免被 CPU(或者编译器)优化所戏弄, 它可能修改希望的 I/O 行为. I/O 寄存器和 RAM 的主要不同是 I/O 操作有边际效果, 而内存操作没有: 一个内存写的 唯一效果是存储一个值到一个位置, 并且一个内存读返回 ...
分类:
其他好文 时间:
2019-07-06 11:42:55
阅读次数:
117
操作内存流的时候(从读取出来,注意一定要把真正的数据用toByteArray或者toCharArray将数据读出来) 之前的文件操作流是以文件的输入输出为主的,当输出的位置变成了内存,那么就称为内存操作流。此时要使用内存流完成内存的输入和输出操作。 如果程序运行过程中要产生一些临时文件,可采用虚拟文 ...
分类:
编程语言 时间:
2019-07-05 09:19:34
阅读次数:
126