您现在的位置是:亿华云 > IT科技
NoSQL数据库服务之Redis
亿华云2025-10-04 00:53:15【IT科技】6人已围观
简介一图详解DB的分支产品Nosql数据库介绍是一种非关系型数据库服务,它能解决常规数据库的并发能力,比如传统的数据库的IO与性能的瓶颈,同样它是关系型数据库的一个补充,有着比较好的高效率与高性能。专注于
一图详解DB的据库分支产品
Nosql数据库介绍
是一种非关系型数据库服务,它能解决常规数据库的服务并发能力,比如传统的据库数据库的IO与性能的瓶颈,同样它是服务关系型数据库的一个补充,有着比较好的据库高效率与高性能。
专注于key-value查询的服务redis、memcached、据库ttserver
解决以下问题:
1)对数据库的服务高并发读写需求
2)大数据的高效存储和访问需求
3)高可扩展性和高可用性的需求
Nosql数据库的应用环境
1)数据模型比较简单
2)需要灵活性更强的IT系统
3)对数据库的性能要求较高
4)不需要高度数据一致性
5)对于给定KEY,比较容易映射复杂值的据库环境
Nosql软件的分类与特点
1)key-value键值存储数据库(redis、memcached)
用于内容缓存,服务适合负载并扩展大的据库数据集 数据类型是一系列的键值对 有快速查询功能,但存储数据少结构化 对事务的服务支持不好,服务器托管数据库故障产生时不可进行回滚2)列存储数据库(HBase)
用于分布式的据库文件系统 以列簇式存储,将同一列数据存在一起 查找速度快,服务可扩展强,据库更容易进行分布式扩展 功能相对局限3)面向文件的数据库(mongoDB)
用于WEB应用较多 数据类型是一系列键值对 查询性能不高,没有统一的查询语法4)图形数据库(Graph)
社交网络应用较多 不容易做分布式的集群方案常用的Nosql数据库介绍
1)memcached
是一个开源高性能的,具有分布式内存对象的缓存系统
特点:
1、安装布署简单
2、支持高并发、高性能
3、通过程序或负载均衡可以实现分布式
4、仅为内存缓存,重启服务数据丢失
官方网站:http://memcached.org
2)memcacheDB
是新浪基于memcached开发的一个开源项目,具备了事务恢复功能
特点:
1、高并发读写
2、高效存储
3、高可用数据存储
官方网站:http://memcachedb.org/benchmark.html
生产环境如何选择Nosql数据库
1、最常规的缓存应用,memcached最合适
2、持久化存储方案memcacheDB
3、2000万以内数据量的小数据用memcached
4、源码下载大数据量可以用redis
redis持久化数据服务
REmote DIctionary server(redis)是一个基于key-value键值对的持久化数据库存储系统,对支持数据存储类型更多,包括字符串、列表、集合等
是一种持久化缓存服务,会周期的把更新的数据写入磁盘以及把修改操作记录追加到文件里记录下来,还支持主从同步模式,是一个开源的基于C语言编写的,支持网络、内存可持久化的日志型、key-value数据库
redis持久服务的特点
key-value键值类型存储系统 支持数据可靠存储 单进程单线程高性能服务器 恢复比较慢 单机qps(秒并发)可以达到10W 适合小数据高速读写访问redis存储系统优、缺点:
可以持久化存储数据 支持每秒10W的读写频率 支持丰富的数据类型 所有操作都是原子性的 支持异机主从复制 内存管理开销大(低于物理内存的3/5) 不同命令延迟差别大官方网站:http://www.redis.io
redis持久化介绍
redis将数据存储于内存中,通过快照、日志两种方式实现持久化存储,前者性能高,会有数据丢失的情况,后者相反。源码库
redis应用场景
MYSQL+memcached网站架构的问题:数据量大就需要拆表,需要扩容,数据一致性是个问题
1)***应用场景就是内存服务
2)作为memcached替代方案
3)对数据一致性有一定要求但不高的业务
4)需要更多数据类型支持的业务
5)需要主从同步及负载均衡的业务
redis的安装
要进行主从同步配置,可以实现故障切换,主上禁用数据持久化,从上配置,内存要够大
wget http://download.redis.io/releases/redis-2.8.24.tar.gz [root@redis-m tools]#tar zxf redis-2.8.24.tar.gz [root@redis-m tools]#cd redis-2.8.24 [root@redis-m redis-2.8.24]#make [root@redis-m redis-2.8.24]#make PREFIX=/application/redis-2.8.24 install [root@redis-m redis-2.8.24]#ln -s /application/redis-2.8.24 /application/redis [root@redis-m tools]# tree /application/redis /application/redis `-- bin |-- redis-benchmark #性能测试工具 |-- redis-check-aof #检测更新日志 |-- redis-check-dump #检查本地数据库rdb文件 |-- redis-cli #命令行客户端操作工具 |-- redis-sentinel -> redis-server `-- redis-server #服务的启动程序配置环境变量
[root@redis-m tools]# echo "PATH=/application/redis/bin:$PATH">>/etc/profile [root@redis-m tools]# source /etc/profile [root@redis-m tools]# which redis-server /application/redis/bin/redis-server查看帮助文档
[root@redis-m tools]# redis-server --help Usage: ./redis-server [/path/to/redis.conf] [options] ./redis-server - (read config from stdin) ./redis-server -v or --version ./redis-server -h or --help ./redis-server --test-memory <megabytes> Examples: ./redis-server (run the server with default conf) ./redis-server /etc/redis/6379.conf ./redis-server --port 7777 ./redis-server --port 7777 --slaveof 127.0.0.1 8888 ./redis-server /etc/myredis.conf --loglevel verbose启动服务
[root@redis-m ~]# cd /application/redis/ [root@redis-m redis]# ll total 4 drwxr-xr-x 2 root root 4096 Mar 22 04:50 bin [root@redis-m redis]# mkdir conf [root@redis-m redis]# cp /download/tools/redis-2.8.24/redis.conf ./conf/ [root@redis-m redis]# redis-server /application/redis/conf/redis.conf & [6072] 22 Mar 05:00:51.373 # Server started, Redis version 2.8.24 [6072] 22 Mar 05:00:51.374 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add vm.overcommit_memory = 1 to /etc/sysctl.conf and then reboot or run the command sysctl vm.overcommit_memory=1 for this to take effect.#内存不足的时候,数据加载到磁盘可能失效,可以使用命令解决或修改配置文件
[6072] 22 Mar 05:00:51.375 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. [6072] 22 Mar 05:00:51.375 * The server is now ready to accept connections on port 6379 [root@redis-m redis]# lsof -i :6379 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME redis-ser 6072 root 4u IPv6 24271 0t0 TCP *:6379 (LISTEN) redis-ser 6072 root 5u IPv4 24273 0t0 TCP *:6379 (LISTEN) vm.overcommit_memory0表示用户空间请求更多内存时,内核尝试估算出余下可用内存
1表示内核允许***限度的的使用内存
关闭服务命令
[root@redis-m redis]# redis-cli shutdown [6072] 22 Mar 05:09:32.699 # User requested shutdown... [6072] 22 Mar 05:09:32.699 * Saving the final RDB snapshot before exiting. [6072] 22 Mar 05:09:32.710 * DB saved on disk [6072] 22 Mar 05:09:32.711 # Redis is now ready to exit, bye bye... [1]+ Done redis-server /application/redis/conf/redis.conf很赞哦!(27122)
相关文章
- 域后缀首选.com,.net,然后是.cn。后缀选择不当,导致流量损失。域名是企业与互联网网址之间的链接,关键是企业在网络上存在的标志。因此,选择好域名是开展网上工作的首要重要条件。
- 因为域名解析需要同步到DNS根服务器,而DNS根服务器会不定时刷,只有DNS根服务器刷新后域名才能正常访问,新增解析一般会在10分钟左右生效,最长不会超过24小时,修改解析时间会稍微延长。
- 5、企业注册国内域名需要证件,其它情况一律不需要证件。
- 这个不用多说,不同平台的注册价格不同,且不同平台对域名释放交易的把控与曝光不同,当然价格相对便宜且平台渠道广操作便利的平台最好。
- 2、根据用户基础选择访问提供程序。由于互联问题的存在,接入商的选择也非常重要,如果用户群主要在联通,尽量选择联通接入较好的接入商,如果用户群主要在电信,那么选择电信接入较好的接入商。如果用户组位于国家/地区,则选择更好的访问提供程序进行交互。
- 为啥修改dns服务器?dns服务器与域名有何联系?
- 四、配置网站,填充内容
- CNAME:对应解析的记录值为域名地址
- 注册域名要了解几大点?新手有什么方式注册域名?
- 公司和个人选域名方法一样吗?有什么不同?
热门文章
- a、变更前的公司证件扫描件(代码证或者营业执照)及联系人身份证复印件、变更后的公司证件扫描件(代码证或者营业执照)及新的联系人身份证复印件;身份证复印件需本人签名,公司证件复印件需加盖公章。
- 当投资者经过第二阶段的认真学习之后又充满了信心,认为自己可以在市场上叱咤风云地大干一场了。但没想到“看花容易绣花难”,由于对理论知识不会灵活运用.从而失去灵活应变的本能,就经常会出现小赢大亏的局面,结果往往仍以失败告终。这使投资者很是困惑和痛苦,不知该如何办,甚至开始怀疑这个市场是不是不适合自己。在这种情况下,有的人选择了放弃,但有的意志坚定者则决定做最后的尝试。
- 国内域名
- ICANN 规章禁止转移已经被记录或者在60天前内转移的域名。