- Unity3d架构之-Unity MVC框架 StrangeIoC
flybirding1001
游戏测试
Strange是一个unity3d中用于控制反转的第三方框架,控制反转(IOC-InversionofControl)思想是类间解耦的一个重要方法,对于我来说,任何解耦技术都值得去学习。什么是IOC?这里有详细解答。IOC框架已经在企业级开发和其他非游戏软件的开发中成为了主流,并且可以说已经非常成熟。我觉得它可以帮助游戏开发变得更加容易测试,更好的进行协作开发。我非常想尝试它看看到底可以在游戏开发
- Unity轻量级开源框架StrangeIoc
tangmeng1996
框架unity框架架构
StrangeIoc依赖注入1.什么是依赖关系:依赖可以被认为是一个对象想要执行其功能,需要另外一个对象的相应功能。假设A类的变化引起了B类的变化,则说明B类依赖于A类。uml图(Diver依赖于Car):publicclassDriver{publicvoiddrive(Carcar){car.move();}……}publicclassCar{publicvoidmove(){......}…
- StrangeIoC(三)
虫小白
使用StrangeIoC写一个可以启动的程序现在开始做一个简单的程序,点击屏幕上的按钮后输出“HelloStrange”,我们将使用Signal的方式发送指令创建创建上下文类新建脚本,命名为MyFristContext输入以下内容usingUnityEngine;usingstrange.extensions.context.impl;usingstrange.extensions.mediati
- [Unity]使用StrangeIOC框架中的Dispatcher设计响应式编程
肖浩呗
[Unity]技术学习路线图(长期更新)[Unity]使用StrangeIOC框架设计响应式编程下载与安装下载地址GitHubStrangeIOC特性介绍Strange框架的目的是为了在混乱的Unity项目代码中,设计支持响应式编程设计模式Strange框架中提供的特性大部分都是可选性的使用EventDispatcher完成事件分发功能EventDispatcher是strange框架内的默认分发
- 【Unity】mvcs中StrangeIoc框架的概念和使用方法汇总(详尽版)
天生爱赞美
Unity
最近想项目中需要使用这个架构因此上网看了很多资料摸索但是对于初学者来说大多数的资料不是那么容易理解而且文档也是英文的阅读起来有点吃力所以记录一下自己阅读的过程方便以后翻阅和跟我一样的新人学习其中也借鉴了一些前辈的资料如有反感请联系我立马进行修改谢谢文档坐标http://strangeioc.github.io/strangeioc/TheBigStrangeHowTo.htmlStrangeIoc
- Unity3d StrangeIoC实现简单左右移动[EventDipatcher方式]
superlinmeng
Unity3D
Unity3dStrangeIoC实现简单左右移动[EventDipatcher方式]本Demo主要实现一个简单的左右移动(使用StrangeIoC框架),效果如下图:首先新建一个空的Unity工程,导入StrangeIoC框架,导入素材如下图图片素材新建几个工作目录文件夹和几个基本的文件,如下图创建GameEvent和PressType枚举类型代码如下:创建模型类Model代码如下:模型很简单,
- 简单的开始StrangeIoc之旅
YuanY丶
StrangeIoc
StrangeIoc,也就是MVCS框架。她是什么,这里我就不赘述了,网上大篇幅的列举了purMVC和StrangeIoc的各个特点和功能。就我个人而言,更喜欢MVCS,其一是因为它的绑定机制用起来很舒服,再一个依赖注入获得对象更便捷,Dispatcher绑定事件传递消息也似曾相识。当然不熟悉的刚开始用会很绕,不过当你第一次发现这样写的好处之后也就一发不可收拾了。我觉得她不能算是一个轻量级的框架,
- mvcs中StrangeIoc框架的概念和使用方法汇总
w87580575
StrangIOC
最近想项目中需要使用这个架构因此上网看了很多资料摸索但是对于初学者来说大多数的资料不是那么容易理解而且文档也是英文的阅读起来有点吃力所以记录一下自己阅读的过程方便以后翻阅和跟我一样的新人学习其中也借鉴了一些前辈的资料如有反感请联系我立马进行修改谢谢文档坐标http://strangeioc.github.io/strangeioc/TheBigStrangeHowTo.htmlStrangeIoc
- StrangIOC详解
w87580575
StrangIOCStrangIOC
这是接上面的博文讲到的StrangeIoc的简要介绍后(参考http://blog.csdn.net/leoleocs/article/details/47664221),介绍一下extension中详细的内容,以及如何在Unity3d中使用该框架。Extensions该框架的应用是以extension的扩展为基础的,主要的扩展如下:InjectionextensionInjection的扩展可以
- unity框架strangeioc研究分享
紫龙大侠
IT常用
strangeioc涉及到的设计模式有media中介者模式,binding数据绑定模式,1)基本概念依赖倒置原则(DIP):一种软件架构设计的原则(抽象概念)。控制反转(IoC):一种反转流、依赖和接口的方式(DIP的具体实现方式)。依赖注入(DI):IoC的一种实现方式,用来反转依赖(IoC的具体实现方式)。IoC容器:依赖注入的框架,用来映射依赖,管理对象创建和生存周期(DI框架)。控制反转i
- Unity3d架构之-Unity MVC框架 StrangeIoC
守枫竹清
Unity3D
由于工作原因最近在看unity的一个IOC框架:StrangeIOC,官方的文档都不是很好理解,找到了一篇比较好的GetStart文章,顺手翻译一下,一来方便自己加深理解,二来还是想共享出来,Strange是一个unity3d中用于控制反转的第三方框架,控制反转(IOC-InversionofControl)思想是类间解耦的一个重要方法,对于我来说,任何解耦技术都值得去学习。什么是IOC?这里有详
- Unity3d架构之-Unity MVC框架 StrangeIoC
守枫竹清
Unity3D
由于工作原因最近在看unity的一个IOC框架:StrangeIOC,官方的文档都不是很好理解,找到了一篇比较好的GetStart文章,顺手翻译一下,一来方便自己加深理解,二来还是想共享出来,Strange是一个unity3d中用于控制反转的第三方框架,控制反转(IOC-InversionofControl)思想是类间解耦的一个重要方法,对于我来说,任何解耦技术都值得去学习。什么是IOC?这里有详
- 专门为C#和Unity编写的IoC框架:StrangeIoC
zzc张涵
Unity3D
http://www.unitymanual.com/thread-38740-1-1.htmllogo.png(39.22KB,下载次数:0)下载附件保存到相册2015-3-1718:04上传本教程目录地址http://www.cnblogs.com/Keyle/p/4345044.html推荐你先快速阅读下项目概览Overview翻译地址http://www.cnblogs.com/Keyle
- StrangeIoC官网文档摘要
-兮
U3D
介绍Strange框架的基本方法使用与部署项目应用程序的入口点是一个叫ContextView类,这是一个简单的MonoBehaviour,用来对MVCSContext实例化。MVCSContext(实际上是MVCSContext的子类)是你设置绑定信息的位置调度程序是一个通信总线,允许您在您的应用程序中发送消息。在MVCSContext派发的对象是TmEvents,或者,您可以按照上面列出的步骤重
- StrangeIoC(一)
虫小白
框架介绍StrangeIoC是采用控制反转(IoC)思想书写的一个框架。什么是控制反转呢?简单来说就是我们需要引用某一个类的实例时,不需要主动的获取(比如new一个实例然后对该实例引用,或者public之后在Unity的Inspector面板中拖拽),框架会自动把所需的实例传递给我们,StrangeIOC正是一个这样的框架。在实际的项目中一个类可能会有多个实例,那么StrangeIOC如何知道我们
- 接入StrangeIoC
gttt
目前工程项目分为多个Scenemain作为入口场景用于加载其他的场景信息service用于启动服务器等server信息login用于登录界面和进入房间选项room用于主场景界面关于StrangeIOC关于StrangeIOC框架刚看过一遍框架学习笔记:Unity3D的MVC框架——StrangeIoCUnityStrangeIoc框架StrangeIOCMVCS框架介绍及进阶值得阅读,刚看了开头U
- ECS框架学习
sika0819
UnityECSUnity
简介ECS在各种Unity版本上表现都不一样,官方给的例子如果用Unity2018.3.1打开就会满处飘红。坑很多,官方文档像屎一样。好在有大神们在,看了很多博客,终于找到一个能用的,完成了一个小demo,十万个小立方体围着中间转,有三种不同的材质,最后跑了70帧,大功告成,可喜可贺。一开始有点困惑,不过好在之前接触过StrangeIOC框架,用抽象的概念去理解,很快就明白了。(大部分时间都坑在E
- Unity3D strangeIoC框架学习
UniThan
strangeIoC是一个典型的MVC框架整体的结构是这样的:root(contextView)->MVCSContext->Controller->1.View2.(Services,Model)整个框架是这样运行的:1.Root实例化context2.ContextEvent.START发起第一个Command3.Mediator向Command发出IVents4a.Command拥有注入的S
- 跟诸子学游戏 Unity3d必学框架
诸子百家谁的天下
StrangeIoc:http://gad.qq.com/article/detail/19392https://zhuanlan.zhihu.com/p/25957663GameFramework:https://github.com/EllanJiang/GameFrameworkhttp://gameframework.cn/xLua:https://github.com/Tencent/x
- unity StrangeIoc框架总结
叶小健
概念StrangeIoc是依据控制反转和解耦原理设计的,支持依赖注入。控制反转即Ioc(InversionofControl)它把传统上由程序代码直接操控的对象的调用权交给容器,通过容器来实现对象组件的装配和管理。所为的“控制反转”概念就是对组件对象控制权的转移,从程序代码本身转移到了内部的容器。依赖注入(DependencyInjection)依赖注入的基本原则是:应用组件不应该负责查找资源或者
- strangeIoC中的一种解耦合编程思想
UniThan
strangeIoC使用事件触发的方式让两个类相互独立这里以Mediator和Command为例:假设Mediator要向Command寻求数据,那么1.定义一个事件(enum)类型,同时将事件和command进行一对一的绑定2.在Mediator的OnRegister方法中调用dispatcher的Dispatch方法,就会触发command的excute方法的执行,当excute执行完后,还需
- 基于StrangeIoC的点击方块加分的Demo
dmk17771552304
Unity3D框架StrangeIoC
1、项目简介:创建一个Cube,Cube上有一个Text的UI显示一个随机的分数,Text上的值也是随机的,当我们鼠标点击中一次Cube分数就会增加一。运行逻辑是:开始的时候View通过Mediator向Controller请求数据,然后Controller向服务端请求数据,服务端Service返回一个随机值给Controller里面创建的请求数据的Command,Controller逻辑层再将
- StrangeIOC: 在Start中初始化上下文报错MediationException: A view was added with no context. Views must be ad...
RichMartin
voidStart(){this.context=newDemo1ContextView(this);}在Start中初始化上下文报错MediationException:Aviewwasaddedwithnocontext.ViewsmustbeaddedintothehierarchyoftheirContextViewlestallhellbreakloose.SolvedWayMediat
- Unity之基于MVCS框架的StrangeIoC学习(一)
Cyzeus
学习
最近准备学习框架相关知识,想了很多感觉自己先写一个框架的话有点操之过急,虽然尝试写过小型的PureMVC框架,也成功了,但还是想多看看成熟的框架,了解框架思想,多多充实自己以后!那就可以!……仍然不打算写!就是这么皮!因为准备看看.Net相关的框架,所以先以学习为主吧。此系列博客以学习框架为主,并不是以学习使用为主,请根据自己的需求阅读。StrangeIoC框架是Unity支持的一款基于MVCS的
- StrangeIOC 个人学习笔记
高小耸
学习
学习Unity有一段时间了,最近打算找工作了,但是先要做一个Demo练练手,现在需要一个游戏框架来做客户端。根据所知道的Unity的框架,除了MVC就是StrangeIOC了,所以打算使用StrangeIOC来做这个游戏Demo。现在先来回顾一下对StrangeIOC的使用:1.启动这个框架:ContextView=>Awake()=>context=newMVCSContext(this);需要
- Unity笔记——浅谈StrangeIoc框架
Sorski_Cao
Unity
首要知道什么是MVCS1、M 即Model是本地数据类型比如从服务器、表、xml等获得的数据赋值给model,以后再取用数据时直接读取model对象即可。一般为单例的对象。2、V 即View 是视图 一般就是UI这一块,在StrangeIoc中View一般以组件的形式挂在物体身上的,负责查找UI上需要交互的对象。并且在view中提供更新UI的方法。3、C 即Command 是命令 在Strang
- Unity3d接入tolua+fairyGUI+StrangeIOC
quFFFFLLL
因为项目需要,近期了解一下在unity3d引擎中使用tolua以及strangeioc相关的内容,同时做了一个测试工程,当做部分工作的总结吧。主要参考内容:Git:toluaFairyGUI教程StrangeIOC官网demo地址:https://github.com/qufangliu/Demo_LuaStrangeIOC.git具体接入流程,以及测试代码可以在commit中看到。首先创建了一个
- StrangeIOC MVCS框架介绍及简单实现
LoveMollyWendy
C#
先来看看MVCMVC(Model-View-Controller)是最老牌的的思想,其中Model就是作为数据管理者,View作为数据展示者,Controller作为数据加工者,Model和View又都是由Controller来根据业务需求调配,所以Controller还负担了一个数据流调配的功能。分工总结:
视图(View):用户界面
控制器(Controller):业务逻辑及处理
模型(Mod
- StrangeIOC框架心得
jianlun3009
先说Binder,这个框架出现最多的就是Binder,也是很多人刚接触的时候不能理解的地方,中文意思就是粘合剂。有几个主要的Binder,他们都是继承至Binder的,Binder其实就是一个高级表。里面存放的是以typeof(T)为key的对象。同key下以name(通常用枚举)来区分。,value存在binding中。1、CrossContextInjectionBinder(跨上下文注入)核
- StrangeIOC游戏编程框架
_凉笙
160010517611623.png这是一个MVCS的游戏编程框架,下面是这个编程框架的框架图,在做项目的时候可以多对照这张框架图去实现模块与模块之间的对接。ROOT:会去启动整个StringeIOC框架MVCSConText:进行框架的绑定[图片上传中...(7SF3LKON@%M8FOZ%{RO]
[email protected])]Controller:控制逻辑层
- Linux的Initrd机制
被触发
linux
Linux 的 initrd 技术是一个非常普遍使用的机制,linux2.6 内核的 initrd 的文件格式由原来的文件系统镜像文件转变成了 cpio 格式,变化不仅反映在文件格式上, linux 内核对这两种格式的 initrd 的处理有着截然的不同。本文首先介绍了什么是 initrd 技术,然后分别介绍了 Linux2.4 内核和 2.6 内核的 initrd 的处理流程。最后通过对 Lin
- maven本地仓库路径修改
bitcarter
maven
默认maven本地仓库路径:C:\Users\Administrator\.m2
修改maven本地仓库路径方法:
1.打开E:\maven\apache-maven-2.2.1\conf\settings.xml
2.找到
 
- XSD和XML中的命名空间
darrenzhu
xmlxsdschemanamespace命名空间
http://www.360doc.com/content/12/0418/10/9437165_204585479.shtml
http://blog.csdn.net/wanghuan203/article/details/9203621
http://blog.csdn.net/wanghuan203/article/details/9204337
http://www.cn
- Java 求素数运算
周凡杨
java算法素数
网络上对求素数之解数不胜数,我在此总结归纳一下,同时对一些编码,加以改进,效率有成倍热提高。
第一种:
原理: 6N(+-)1法 任何一个自然数,总可以表示成为如下的形式之一: 6N,6N+1,6N+2,6N+3,6N+4,6N+5 (N=0,1,2,…)
- java 单例模式
g21121
java
想必单例模式大家都不会陌生,有如下两种方式来实现单例模式:
class Singleton {
private static Singleton instance=new Singleton();
private Singleton(){}
static Singleton getInstance() {
return instance;
}
- Linux下Mysql源码安装
510888780
mysql
1.假设已经有mysql-5.6.23-linux-glibc2.5-x86_64.tar.gz
(1)创建mysql的安装目录及数据库存放目录
解压缩下载的源码包,目录结构,特殊指定的目录除外:
- 32位和64位操作系统
墙头上一根草
32位和64位操作系统
32位和64位操作系统是指:CPU一次处理数据的能力是32位还是64位。现在市场上的CPU一般都是64位的,但是这些CPU并不是真正意义上的64 位CPU,里面依然保留了大部分32位的技术,只是进行了部分64位的改进。32位和64位的区别还涉及了内存的寻址方面,32位系统的最大寻址空间是2 的32次方= 4294967296(bit)= 4(GB)左右,而64位系统的最大寻址空间的寻址空间则达到了
- 我的spring学习笔记10-轻量级_Spring框架
aijuans
Spring 3
一、问题提问:
→ 请简单介绍一下什么是轻量级?
轻量级(Leightweight)是相对于一些重量级的容器来说的,比如Spring的核心是一个轻量级的容器,Spring的核心包在文件容量上只有不到1M大小,使用Spring核心包所需要的资源也是很少的,您甚至可以在小型设备中使用Spring。
 
- mongodb 环境搭建及简单CURD
antlove
WebInstallcurdNoSQLmongo
一 搭建mongodb环境
1. 在mongo官网下载mongodb
2. 在本地创建目录 "D:\Program Files\mongodb-win32-i386-2.6.4\data\db"
3. 运行mongodb服务 [mongod.exe --dbpath "D:\Program Files\mongodb-win32-i386-2.6.4\data\
- 数据字典和动态视图
百合不是茶
oracle数据字典动态视图系统和对象权限
数据字典(data dictionary)是 Oracle 数据库的一个重要组成部分,这是一组用于记录数据库信息的只读(read-only)表。随着数据库的启动而启动,数据库关闭时数据字典也关闭 数据字典中包含
数据库中所有方案对象(schema object)的定义(包括表,视图,索引,簇,同义词,序列,过程,函数,包,触发器等等)
数据库为一
- 多线程编程一般规则
bijian1013
javathread多线程java多线程
如果两个工两个以上的线程都修改一个对象,那么把执行修改的方法定义为被同步的,如果对象更新影响到只读方法,那么只读方法也要定义成同步的。
不要滥用同步。如果在一个对象内的不同的方法访问的不是同一个数据,就不要将方法设置为synchronized的。
- 将文件或目录拷贝到另一个Linux系统的命令scp
bijian1013
linuxunixscp
一.功能说明 scp就是security copy,用于将文件或者目录从一个Linux系统拷贝到另一个Linux系统下。scp传输数据用的是SSH协议,保证了数据传输的安全,其格式如下: scp 远程用户名@IP地址:文件的绝对路径
- 【持久化框架MyBatis3五】MyBatis3一对多关联查询
bit1129
Mybatis3
以教员和课程为例介绍一对多关联关系,在这里认为一个教员可以叫多门课程,而一门课程只有1个教员教,这种关系在实际中不太常见,通过教员和课程是多对多的关系。
示例数据:
地址表:
CREATE TABLE ADDRESSES
(
ADDR_ID INT(11) NOT NULL AUTO_INCREMENT,
STREET VAR
- cookie状态判断引发的查找问题
bitcarter
formcgi
先说一下我们的业务背景:
1.前台将图片和文本通过form表单提交到后台,图片我们都做了base64的编码,并且前台图片进行了压缩
2.form中action是一个cgi服务
3.后台cgi服务同时供PC,H5,APP
4.后台cgi中调用公共的cookie状态判断方法(公共的,大家都用,几年了没有问题)
问题:(折腾两天。。。。)
1.PC端cgi服务正常调用,cookie判断没
- 通过Nginx,Tomcat访问日志(access log)记录请求耗时
ronin47
一、Nginx通过$upstream_response_time $request_time统计请求和后台服务响应时间
nginx.conf使用配置方式:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_r
- java-67- n个骰子的点数。 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。
bylijinnan
java
public class ProbabilityOfDice {
/**
* Q67 n个骰子的点数
* 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。
* 在以下求解过程中,我们把骰子看作是有序的。
* 例如当n=2时,我们认为(1,2)和(2,1)是两种不同的情况
*/
private stati
- 看别人的博客,觉得心情很好
Cb123456
博客心情
以为写博客,就是总结,就和日记一样吧,同时也在督促自己。今天看了好长时间博客:
职业规划:
http://www.iteye.com/blogs/subjects/zhiyeguihua
android学习:
1.http://byandby.i
- [JWFD开源工作流]尝试用原生代码引擎实现循环反馈拓扑分析
comsci
工作流
我们已经不满足于仅仅跳跃一次,通过对引擎的升级,今天我测试了一下循环反馈模式,大概跑了200圈,引擎报一个溢出错误
在一个流程图的结束节点中嵌入一段方程,每次引擎运行到这个节点的时候,通过实时编译器GM模块,计算这个方程,计算结果与预设值进行比较,符合条件则跳跃到开始节点,继续新一轮拓扑分析,直到遇到
- JS常用的事件及方法
cwqcwqmax9
js
事件 描述
onactivate 当对象设置为活动元素时触发。
onafterupdate 当成功更新数据源对象中的关联对象后在数据绑定对象上触发。
onbeforeactivate 对象要被设置为当前元素前立即触发。
onbeforecut 当选中区从文档中删除之前在源对象触发。
onbeforedeactivate 在 activeElement 从当前对象变为父文档其它对象之前立即
- 正则表达式验证日期格式
dashuaifu
正则表达式IT其它java其它
正则表达式验证日期格式
function isDate(d){
var v = d.match(/^(\d{4})-(\d{1,2})-(\d{1,2})$/i);
if(!v) {
this.focus();
return false;
}
}
<input value="2000-8-8" onblu
- Yii CModel.rules() 方法 、validate预定义完整列表、以及说说验证
dcj3sjt126com
yii
public array rules () {return} array 要调用 validate() 时应用的有效性规则。 返回属性的有效性规则。声明验证规则,应重写此方法。 每个规则是数组具有以下结构:array('attribute list', 'validator name', 'on'=>'scenario name', ...validation
- UITextAttributeTextColor = deprecated in iOS 7.0
dcj3sjt126com
ios
In this lesson we used the key "UITextAttributeTextColor" to change the color of the UINavigationBar appearance to white. This prompts a warning "first deprecated in iOS 7.0."
Ins
- 判断一个数是质数的几种方法
EmmaZhao
Mathpython
质数也叫素数,是只能被1和它本身整除的正整数,最小的质数是2,目前发现的最大的质数是p=2^57885161-1【注1】。
判断一个数是质数的最简单的方法如下:
def isPrime1(n):
for i in range(2, n):
if n % i == 0:
return False
return True
但是在上面的方法中有一些冗余的计算,所以
- SpringSecurity工作原理小解读
坏我一锅粥
SpringSecurity
SecurityContextPersistenceFilter
ConcurrentSessionFilter
WebAsyncManagerIntegrationFilter
HeaderWriterFilter
CsrfFilter
LogoutFilter
Use
- JS实现自适应宽度的Tag切换
ini
JavaScripthtmlWebcsshtml5
效果体验:http://hovertree.com/texiao/js/3.htm
该效果使用纯JavaScript代码,实现TAB页切换效果,TAB标签根据内容自适应宽度,点击TAB标签切换内容页。
HTML文件代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
- Hbase Rest API : 数据查询
kane_xie
RESThbase
hbase(hadoop)是用java编写的,有些语言(例如python)能够对它提供良好的支持,但也有很多语言使用起来并不是那么方便,比如c#只能通过thrift访问。Rest就能很好的解决这个问题。Hbase的org.apache.hadoop.hbase.rest包提供了rest接口,它内嵌了jetty作为servlet容器。
启动命令:./bin/hbase rest s
- JQuery实现鼠标拖动元素移动位置(源码+注释)
明子健
jqueryjs源码拖动鼠标
欢迎讨论指正!
print.html代码:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<title>发票打印</title>
&l
- Postgresql 连表更新字段语法 update
qifeifei
PostgreSQL
下面这段sql本来目的是想更新条件下的数据,可是这段sql却更新了整个表的数据。sql如下:
UPDATE tops_visa.visa_order
SET op_audit_abort_pass_date = now()
FROM
tops_visa.visa_order as t1
INNER JOIN tops_visa.visa_visitor as t2
ON t1.
- 将redis,memcache结合使用的方案?
tcrct
rediscache
公司架构上使用了阿里云的服务,由于阿里的kvstore收费相当高,打算自建,自建后就需要自己维护,所以就有了一个想法,针对kvstore(redis)及ocs(memcache)的特点,想自己开发一个cache层,将需要用到list,set,map等redis方法的继续使用redis来完成,将整条记录放在memcache下,即findbyid,save等时就memcache,其它就对应使用redi
- 开发中遇到的诡异的bug
wudixiaotie
bug
今天我们服务器组遇到个问题:
我们的服务是从Kafka里面取出数据,然后把offset存储到ssdb中,每个topic和partition都对应ssdb中不同的key,服务启动之后,每次kafka数据更新我们这边收到消息,然后存储之后就发现ssdb的值偶尔是-2,这就奇怪了,最开始我们是在代码中打印存储的日志,发现没什么问题,后来去查看ssdb的日志,才发现里面每次set的时候都会对同一个key