思考

思考

centos7下搭建redis集群

写在前面 本文介绍基于centos7和redis5.0.0版本的redis集群搭建。reids最少需要6个集群节点(3主3从),可以搭建在一台机器或者多台机器上。本文介绍在6台机器上搭建集群的过程,ip地址为10.0.101.1 ~ 10.0.101.6。单台机器搭建集群可参考官方文档。 安装re...

2018-10-19 13:34:37

阅读数 147

评论数 0

Redis-为什么只有整数对象池?

因为整数比较算法时间复杂度为O(1),保留一万个整数为了防止对象池浪费。 字符串判断行灯行,时间复杂度为O(n)。 hash、list等数据结构,判断相等性时间复杂度为O(n^2)。 所以Redis只有整数对象池。...

2018-09-07 15:34:08

阅读数 111

评论数 0

Reids-RDB优缺点

优点: RDB是一个紧凑压缩的二进制文件,代表Redis在某个时间点上的数据快照。非常适用于备份,全量复制等场景。比如每6个小时执行bgsave备份,并把RDB文件拷贝到远程机器或者文件系统中(如hdfs),用于灾难恢复。 Redis加载RDB恢复数据远远快于AOF的方式。 缺点: ...

2018-08-29 16:23:05

阅读数 40

评论数 0

dubbo源码分析-dubbo-cluster

dubbo-cluster dubbo-cluster 集群模块:将多个服务提供方伪装为一个提供方。 LoadBalance /** * random load balance. * */ public class RandomLoadBalance extends Abstr...

2018-08-16 11:05:51

阅读数 98

评论数 0

dubbo源码分析-dubbo-serialization

dubbo-serialization dubbo-serialization是dubbo中实现序列化相关的代码。 共5种序列化方式,可从名字直接看出含义,这里不再赘述。 dubbo-serialization-fastjson dubbo-serialization-fst dub...

2018-08-13 16:53:19

阅读数 484

评论数 0

dubbo源码分析-dubbo-container-spring

dubbo-container-spring只有一个类,SpringContainer implements Container SpringContainer 继承Container,有两个方法start和stop /** * SpringContainer. (SPI, Sing...

2018-08-13 10:31:42

阅读数 226

评论数 0

dubbo源码分析-dubbo-registry-zookeeper

dubbo-registry-zookeeper非常简单,只有两个类。 ZookeeperRegistryFactory package org.apache.dubbo.registry.zookeeper; import org.apache.dubbo.common.URL; i...

2018-08-12 21:45:24

阅读数 357

评论数 0

单例模式

单例模式——确保一个类只有一个实例,并提供全局访问点。 单例模式确保程序中一个类最多只有一个实例。 单例模式也提供访问这个实例的全局点。 在Java中实现单例模式需要私有的构造器、一个静态方法和一个静态变量。 确定在性能和资源上的限制,然后小心地选择适当的方案来实现单例,以解决多线程的问题(我...

2018-08-02 14:17:17

阅读数 67

评论数 0

工厂模式

抽象工厂模式——提供了一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。 工厂方法模式——定义了一个常见对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。 所有的工厂都是用来封装对象的创建。 简单工厂,虽然不是真正的设计模式,但仍不失为一个简单的方法...

2018-08-01 14:33:21

阅读数 50

评论数 0

装饰者模式

装饰者模式——动态地将责任附加到对象上。想要扩展功能,装饰者挺有别于继承的另一种选择。 继承属于扩展形式之一,但不见得是达到弹性设计的最佳方式。 在我们的设计中,应该允许行为可以被扩展,而无须修改现有的代码。 组合和委托可用于在运行时动态地加上新的行为。 除了继承,装饰者模式也可以让我们扩展行...

2018-07-31 15:13:06

阅读数 47

评论数 0

开放-关闭原则

类应该对扩展开发,对修改关闭。

2018-07-30 14:51:03

阅读数 142

评论数 0

观察者模式

观察者模式——在对象之间定义一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象都会收到通知,并自动更新。 观察者模式定义了对象之间一对多的关系。 主题(也就是可观察者)用一个共同的接口来更新观察者 观察者和可观察者之间用松耦合方式结合(loosecoupling),可观察者不知道观察者的...

2018-07-30 14:21:06

阅读数 59

评论数 0

OO原则

封装变化 多用组合,少用继承 针对接口编程,不针对实现编程 为交互对象之间的松耦合设计而努力

2018-07-30 14:12:52

阅读数 177

评论数 0

Kubernetes-Node节点

Node节点 Node是Pod运行的地方,Kubernetes支持Docker、rkt等容器Runtime。Node上运行的Kubernetes组件有kubelet、kube-proxy和Pod网络(例如flannel),如下图: kubelet kubelet是Node的agent,...

2018-07-12 17:25:54

阅读数 287

评论数 0

Kubernetes-Master节点

Master节点 Master是Kubernetes Cluster的大脑,运行着的Daemon服务包括kube-apiserver、kube-scheduler、kebu-controller-manager、etcd和Pod网络(例如flannel)。如下图: API Server(...

2018-07-12 16:20:25

阅读数 571

评论数 0

Kubernetes重要概念

Cluster Cluster是计算、存储和网络资源的集合,Kubernetes利用这些资源运行各种基于容器的应用。 Master Master是Cluster的大脑,它的主要职责是调度,即决定将应用放在哪里运行。Master运行Linux操作系统,可以是物理机或者虚拟机。为了实现高可用...

2018-07-12 13:23:58

阅读数 141

评论数 0

策略模式-Strategy Pattern

设计原则 找出应用中可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混在一起。 针对接口编程,而不是针对实现编程。 多用组合,少用继承。 策略模式 定义了算法族,分别封装起来,让他们之间可以互相替换,此模式算法的变化独立于使用算法的客户。...

2018-07-03 17:40:40

阅读数 39

评论数 0

Java无法读取node.js设置的Cookie

经调查,问题出在node.js设置的一个Cookie的key中含有冒号(:),如 app:sess=jjdkew909cv0klwlwk0909dsll3 替换冒号(:)后,解决问题,修改后如下: app_sess=jjdkew909cv0klwlwk0909dsll3 原因 Cooki...

2018-04-25 18:03:24

阅读数 141

评论数 0

Python-json

写入json.dump() import json cars = ['audi','bmw'] # 将json写入文件 with open('test.json','w') as json_object: json.dump(cars,json_object) 读出json.read(...

2018-04-24 17:22:06

阅读数 57

评论数 0

Python-异常

使用try except捕获异常。 try: print(1/0) except: print('devide 0') 输出 devide 0

2018-04-24 17:05:19

阅读数 48

评论数 0

提示
确定要删除当前文章?
取消 删除