随笔分类 -  分布式篇

摘要:1. OpenResty 安装及使用 OpenResty 是一个通过 Lua 扩展 Nginx 实现的可伸缩的 Web 平台,内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。 安装: 1. 下载安 阅读全文

posted @ 2019-05-22 23:34 FLGB 阅读(611) 评论(0) 推荐(0) |

摘要:1. Nginx 进程模型简介 多进程+多路复用 master 进程 、 worker 进程 启动nginx,查看nginx的线程,可以发现: worker_processes 1 cpu 总核心数 epoll . select .... #user nobody; 用户 worker_proces 阅读全文

posted @ 2019-05-22 23:32 FLGB 阅读(672) 评论(0) 推荐(0) |

摘要:反向代理 nginx反向代理的指令不需要新增额外的模块,默认自带proxy_pass指令,只需要修改配置文件就可以实现反向代理。 proxy_pass 既可以是ip地址,也可以是域名,同时还可以指定端口 server { listen 80; server_name localhost; locat 阅读全文

posted @ 2019-05-20 22:24 FLGB 阅读(388) 评论(2) 推荐(0) |

摘要:什么是Nginx 是一个高性能的反向代理服务器正向代理代理的是客户端反向代理代理的是服务端 Apache、Tomcat、Nginx 静态web服务器jsp/servlet服务器 tomcat 安装Nginx 1. 下载tar包 (地址:http://nginx.org/en/download.htm 阅读全文

posted @ 2019-05-13 21:50 FLGB 阅读(689) 评论(0) 推荐(0) |

摘要:问题1:哨兵模式下客户端应该连接哪个redis-server? 问题2:集群模式下为什么会有MOVED error Redis Java客户端介绍 已有的客户端支持 Redis Java客户端有很多的开源产品比如Redission、Jedis、lettuce 差异 Jedis是Redis的Java实 阅读全文

posted @ 2019-05-05 22:48 FLGB 阅读(391) 评论(0) 推荐(0) |

摘要:Redis-Cluster 即使是使用哨兵,此时的Redis集群的每个数据库依然存有集群中的所有数据,从而导致集群的总数据存储量受限于可用存储内存最小的节点,形成了木桶效应。而因为Redis是基于内存存储的,所以这一个问题在redis中就显得尤为突出了在redis3.0之前,我们是通过在客户端去做的 阅读全文

posted @ 2019-05-04 22:52 FLGB 阅读(7158) 评论(0) 推荐(0) |

摘要:哨兵机制 在前面讲的master/slave模式,在一个典型的一主多从的系统中,slave在整个体系中起到了数据冗余备份和读写分离的作用。当master遇到异常终端后,需要从slave中选举一个新的master继续对外提供服务,这种机制在前面提到过N次,比如在zk中通过leader选举、kafka中 阅读全文

posted @ 2019-05-04 22:11 FLGB 阅读(559) 评论(1) 推荐(0) |

摘要:集群 先来简单了解下redis中提供的集群策略, 虽然redis有持久化功能能够保障redis服务器宕机也能恢复并且只有少量的数据损失,但是由于所有数据在一台服务器上,如果这台服务器出现硬盘故障,那就算是有备份也仍然不可避免数据丢失的问题。在实际生产环境中,我们不可能只使用一台redis服务器作为我 阅读全文

posted @ 2019-05-04 19:11 FLGB 阅读(1577) 评论(0) 推荐(0) |

摘要:过期时间设置 在Redis中提供了Expire命令设置一个键的过期时间,到期以后Redis会自动删除它。这个在我们实际使用过程中用得非常多。EXPIRE命令的使用方法为EXPIRE key seconds其中seconds 参数表示键的过期时间,单位为秒。EXPIRE 返回值为1表示设置成功,0表示 阅读全文

posted @ 2019-05-03 20:42 FLGB 阅读(717) 评论(0) 推荐(0) |

摘要:Redis的魅力 缓存大致可以分为两类,一种是应用内缓存,比如Map(简单的数据结构),以及EH Cache(Java第三方库),另一种就是缓存组件,比如Memached,Redis;Redis(remote dictionary server)是一个基于KEY-VALUE的高性能的存储系统,通过提 阅读全文

posted @ 2019-04-30 00:27 FLGB 阅读(459) 评论(0) 推荐(0) |

摘要:5.1、MongoDB 用户管理 1、用户管理1.1、添加用户为 testdb 添加 tom 用户 具体角色有read:允许用户读取指定数据库readWrite:允许用户读写指定数据库dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问 system.profileu 阅读全文

posted @ 2019-04-28 23:27 FLGB 阅读(259) 评论(0) 推荐(0) |

摘要:一、下载安装包 http://download.redis.io/releases/ 选择对应的版本 二、copy到对应的虚拟机上 运行 tar -zxvf redis-3.2.8 进行解压 更改文件名称: mv redis-3.2.8 redis 三、cd redis-3.2.8 进入redis目 阅读全文

posted @ 2019-04-28 21:03 FLGB 阅读(238) 评论(0) 推荐(0) |

摘要:引入mongoDb 依赖 类比JDBC写法,相对比较偏底层 官方快速入门demo mongoDB框架:封装了mongoDB基本的操作 Morphia mongoDb的第一个orm框架(spring 的封装 mongoDBTemplate) 引入依赖 创建MorphiaMember实体类 test 输 阅读全文

posted @ 2019-04-23 23:38 FLGB 阅读(637) 评论(0) 推荐(0) |

摘要:默认设置后台启动: vi mongodb.cfg 创建配置文件,配置启动信息 [root@localhost mongodb]# mongod -f mongodb.cfg 命令指定配置文件启动 ps -aux | grep mongod 查看一下mongod当前进程 常用mongodb命令: 2. 阅读全文

posted @ 2019-04-23 22:54 FLGB 阅读(751) 评论(0) 推荐(0) |

摘要:一、MongoDB的应用场景及实现原理二、MongoDB的常用命令及配置三、手写基于MongoDB的ORM框架四、基于MongoDB实现网络云盘实战五、MongoDB 4.0新特性 一、MongoDB 中的应用场景及设计原理 MongoDB 是一个基于分布式文件存储的数据库。由 C++语言编写。旨在 阅读全文

posted @ 2019-04-23 00:34 FLGB 阅读(356) 评论(0) 推荐(0) |

摘要:消息的存储原理: 消息的文件存储机制: 前面我们知道了一个 topic 的多个 partition 在物理磁盘上的保存路径,那么我们再来分析日志的存储方式。通过 [root@localhost ~]# ls /tmp/kafka-logs/firstTopic-1/命令找到对应 partition 阅读全文

posted @ 2019-04-18 22:25 FLGB 阅读(2661) 评论(0) 推荐(1) |

摘要:关于 Topic 和 Partition Topic 在 kafka 中,topic 是一个存储消息的逻辑概念,可以认为是一个消息集合。每条消息发送到 kafka 集群的消息都有一个类别。物理上来说,不同的 topic 的消息是分开存储的,每个 topic 可以有多个生产者向它发送消息,也可以有多个 阅读全文

posted @ 2019-04-17 20:47 FLGB 阅读(14751) 评论(1) 推荐(0) |

摘要:Kafka 的简介: Kafka 是一款分布式消息发布和订阅系统,具有高性能、高吞吐量的特点而被广泛应用与大数据传输场景。它是由 LinkedIn 公司开发,使用 Scala 语言编写,之后成为 Apache 基金会的一个顶级项目。kafka 提供了类似 JMS 的特性,但是在设计和实现上是完全不同 阅读全文

posted @ 2019-04-15 23:35 FLGB 阅读(403) 评论(0) 推荐(0) |

摘要:消费端消费消息的原理 我们通过上一节课的讲解,知道有两种方法可以接收消息,一种是使用同步阻塞的MessageConsumer#receive方法。另一种是使用消息监听器MessageListener。这里需要注意的是,在同一个session下,这两者不能同时工作,也就是说不能针对不同消息采用不同的接 阅读全文

posted @ 2019-04-08 00:02 FLGB 阅读(1686) 评论(0) 推荐(1) |

摘要:持久化消息和非持久化消息的存储原理 正常情况下,非持久化消息是存储在内存中的,持久化消息是存储在文件中的。能够存储的最大消息数据在${ActiveMQ_HOME}/conf/activemq.xml文件中的systemUsage节点 ,SystemUsage配置设置了一些系统内存和硬盘容量 Ø 从上 阅读全文

posted @ 2019-04-07 23:59 FLGB 阅读(360) 评论(0) 推荐(0) |

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3