`
dalan_123
  • 浏览: 87388 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论
文章列表
一、内存构成   内存管理组件构成 二、扩容 一般来说当内存空间span不足时,需要进行扩容。而在扩容前需要将当前没有剩余空间的内存块相关状态解除,以便后续的垃圾回收期能够进行扫描和回收,接着在从中间部件(central)提取新的内存块放回数组中。 // 根据空间规格 获取对应的索引 再获取alloc数组中对应的span func (c *mcache) refill(spc spanClass){ s := c.alloc[spc] if s != &emptymspan{ s.incache = false} // 解除当前span的状态 ...

beego源码-config部分

    博客分类:
  • go
写在前面beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架,但是结合了 Go 本身的一些特性(interface、st ...
一、缓存 cache模块是一个go缓存管理器,目前能够支持多种缓存方式: Memory、File、Redis、Memcached等多种缓存适配模式,整体的设计想法参考'database/sql', 二、如何使用 go get -u github.com/astaxie/beego/cache 三、代码使用 1、首先要导入cache import ( "github.com/astaxie/beego/cache" ) 2、初始化Cache // 初始化一个内存缓存器并提供 60s进行缓存key有效检查 bm, err := cache.NewCache(&a ...
首先从github上获取对应的源码Nacos源码git clone https://github.com/alibaba/nacos.git 使用idea打开,由于项目是使用maven进行管理的mvn clean install -Dmaven.test.skip=true 进入到module:nacos-console【由于项目是使用SpringBoot】需要进行Run/Debug Configurations注意事宜:一定要增加VM options:-Dnacos.standalone=true, 否则启动的是集群模式​ 关于配置application.properties 和 ...
HyperLedger Fabric基础内容-gossip  
HyperLedger Fabric基础内容(续)
关于HyperLedger Fabric基础内容
最近,有一个朋友问了一个问题:如何实现实时消息推送架构,当时只是说了比较笼统的概念,并没有进行深入的探讨。再加上时间比较也就没有进行一个归总。刚好今天进行一个梳理。具体内容如下   那么整体的设计如上。 ...
一、作用   主要是通过结合zookeeper,在zookeeper指定的目录下创建不同的自己 代表不同的transaction state,并赋予不同的内容;通过zookeeper完成对partitions的transaction的管理 二、源码分析 package storm.trident.topology.state; import backtype.storm.Config; import backtype.storm.utils.Utils; import backtype.storm.utils.ZookeeperAuthInfo; import org.apache.cur ...
一、作用    构建一个Rotationg transaction的state类 用于完成partition的state管理及操作 二、源码分析 package storm.trident.topology.state; import backtype.storm.utils.Utils; import org.apache.zookeeper.KeeperException; import java.util.HashSet; import java.util.List; import java.util.SortedMap; import java.util.TreeMap; publ ...
一、作用     Partition Spout对应的executor 二、源码分析 package storm.trident.spout; import backtype.storm.task.TopologyContext; import backtype.storm.tuple.Fields; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import storm.trident.operation.TridentCollector; ...
一、作用       基于LinkedList + HashMap<K,V>实现一个循环Map 二、源码 // 通过结合LinkedList 和 HashMap 构成一个循环Map数据结构 public class RotatingMap<K, V> {     // this default ensures things expire at most 50% past the expiration time     //  默认bucket数目为3     private static final int DEFAULT_NUM_BUCKETS = 3;       ...
一、作用 RichSpoutBatchExecutor是IRichSpout及其子类Spout的executor执行器;主要包括:         1、RichSpoutEmitter :用户tuple的emit         2、RichSpoutCoordinator:用于spout的调度         3、CaptureCollector: 用于获取spout的collect的field的 二、 package storm.trident.spout; import backtype.storm.Config; public class RichSpoutBatchExecuto ...
在jstorm中对应TridentTopology的源码如下,TridentTopology的主要作用是用来创建trident的 一、一般使用的方式如下 // 1、创建一个topology对象 TridentTopology topology = new TridentTopology(); // 2、设置相关参数: each分片、group by分组、聚合aggregate //  返回TridentState          TridentState wordCounts = topology.newStream("spout1", spout).parallelis ...
启动ZOOPKEEPER zkServer.sh start 启动NIMBUS jstorm nimbus & 启动SUPERVISOR jstorm supervisor & 启动UI jstorm ui & 部署TOPOLOGY jstorm jar /opt/hadoop/loganalyst/storm-dependend/data/teststorm-1.0.jar teststorm.TopologyMain /opt/hadoop/loganalyst/storm-dependend/data/words.txt 删除TOPOLOGY jstorm kill ...
Global site tag (gtag.js) - Google Analytics