- 浏览: 360134 次
- 性别:
- 来自: 武汉
最新评论
-
missfmaster:
这框架好特么底层。
Terracotta设计原理分析--(部分内容来自官方描述) -
小黄牛:
很好不错!分享一个在电商购物支付流程中,在各大参与者系统中可能 ...
分布式事务设计-两段式提交 -
zhglhy:
学习了,感谢分享
JAVA垃圾回收分析 -
talentluke:
如果在事务一中出现故障,数据库是可以回滚但消息队列不能回滚,队 ...
用消息队列和消息应用状态表来消除分布式事务(转载) -
langmanxingkong123:
谁说jedis不能存集合类的数据。乱说。。。
redis jredis jedis 使用
文章列表
2017年什么最火?
不用问,肯定是人人都“王者荣耀”
只会打游戏,不去研究可不行。一直在想,像王者荣耀这样火的游戏是用什么引擎和语言开发的?
这里就不得不说到现在最主流的游戏开发引擎——Unity3D了。
2年多没有写博客了,很期待自己的下一系博客文章,考虑主要以这两年接触多的移动互联、IOS、four in one 、Meteor为主,公司做移动互联产品定位以及风投的一些感想!!
tddl+diamond(二)
- 博客分类:
- 开源
diamond的相关原理介绍,我们已经通过其他的文章进行了讲解,这篇文章我们着重讲解下diamond的初始化配置,以及tddl的初始化配置。
下载、部署diamond
diamond的svn下载地址:http://code.taobao.org/svn//diamond/trunk(下载16版本的diamond,我们稍后要用到tddl,因此我们不能下载diamond的最新版本20,因为tddl的最新的源代码中调用diamond的源代码部分都是建立在diamond的16版本前的,比如调用的:diamond-client功能包下的com.taobao.diamond.manager.impl ...
tddl+diamond(一)
- 博客分类:
- 开源
简介:
tddl的相关介绍请在http://rdc.taobao.com/team/jm/archives/1642中进行了解,这里就不做介绍了,diamond是淘宝开源管理持久配置的系统,持久配置是指配置数据会持久化到磁盘和数据库中,diamond为应用系统提供了获取配置的服务 ...
webx3整合dubbo
- 博客分类:
- 开源
由于webx3是maven项目,dubbo又是一个分布式服务框架,网上也没有任何文章来介绍,因此在对maven不了解的情况下是无法找到头绪来和dubbo整合的,这里我按照步骤进行图解,以便于有这方面框架的爱好者能够快速整合。
webx3集成 ...
由于webx3采用maven管理项目部署,本地通过maven生成了一个webx3程序开发的框架后,为了能够做二次开发,在eclipse下需要安装maven插件(for eclipse)、springext插件(for eclipse)、git插件(for eclipse),安装后,在eclipse导入了webx3的工程(eclips ...
由于数据量的巨大,大部分Web应用都需要部署很多个数据库实例。这样,有些用户操作就可能需要去修改多个数据库实例中的数据。传统的解决方法是使用分布式事务保证数据的全局一致性,经典的方法是使用两阶段提交协议。
...
对淘宝tair分布式K、V的一些理解
- 博客分类:
- 开源
Tair是什么
Tair是由淘宝开发的key/value方案,系统默认支持基于内存和文件的存储引擎,对应于通常我们所说的缓存和持久化存储,这里可以获取更多关于tair的信息,淘宝团队介绍,Tair在淘宝有着大规模的应用,在登录淘宝、查看商品详情页面、在淘江湖和好友“捣浆糊”等等时候,后面都在直接或间接的和Tair交互。
对照表
Tair使用路由表来解决数据的路由问题。
简单的路由表包含两列,一列是hash值(我们通常称其为桶——bucket),一列是负责这个hash值的节点。比如:
0
192.168.0.1
1
192.168.0.2
2
192.168 ...
CA认证原理以及实现(下)
- 博客分类:
- 应用架构
在上述的文章后了解到原理之后,我们这篇文章来进行CA的搭建。
OPEN SSL 环境搭建在基础原理中我们提到了两种认证服务,单项认证服务和双向认证服务,我们就以双向认证服务举例说明。OpenSSL是一个开放源代码软件包,实现了SSL以及相关加密技术,是最常用的证书管理工具,OpenSSL功能远胜于KeyTool,可用于根证书(KeyTool不含有,因此KeyTool没有办法作为CA)、服务器证书、客户证书的管理。在OpenSSL官网下载:http:www.openssl.org/source/下载最新的源码,官网还提供了windows版的二进制发行版地址:http://www.slproweb ...
CA认证原理以及实现(上)
- 博客分类:
- 应用架构
原理基础数字证书为发布公钥提供了一种简便的途径,其数字证书则成为加密算法以及公钥的载体,依靠数字证书,我们可以构建一个简单的加密网络应用平台,数字证书就好比我们生活中的身份证,现实中,身份证由公安机关 ...
云管理平台云是IT实现,是造出来的,不是买来的。我们可以买服务器,买数据库,但买不了云,不可能说买来以后一装就行了,那就不是云了,那只能是买一个服务器,或者买一个集群,要想买一个云的是不大可能。反过来说,这个集成本身就有复杂性,所以会遇到比如说多种虚机不一样的,不同厂家的虚拟机,多种存储设备,很多API都不一样。然后物理机和虚机又混着使用,有些应用在物理机上运行,有些应用在虚机上运行,还有跟已有的应用要集成起来,所以有很多事情要做。这也是为什么会有云管理平台,云管理平台就是一个框架,这个框架是个云框架,它基本上搭建好了一个架构,就是关于云应该如何来设计,把这个架子搭建起来,然后需要把该放的东西放 ...
云之所以热,是因为现在以及未来市场的业务推动力(回报率),现在哪个家庭中只有一台计算机?哪个企业只有几台计算机?计算机多了就会出现耗电、占地、维修保养、商业软件升级等问题,对于家庭而且这个成本算不上什么,但是对于服务行业的企业而言,这个成本是不可估量的,所以加快信息化脚步的同时,也会无形中出现相应的负担,成本越来越高,大家都在琢磨该如何解决?
我们现在家庭中用水、用电是没有在自己家里安装发电机的,我们都是利用了统一的资源,这个交由国家统一在管理,我们也无需去管理水是怎么来的,电是怎么来的,我们只需要每个月按照使用的量来付费即可,这是一个很好的模式,同样如果有哪家公司能够自己创办一个这样的IT中 ...
Terracotta的介绍以及原理在我之前的文章中已经做了相关介绍,那么这次我们就来看看它是如何实现集群的。
测试代码编写
我们首先写一个demo,该demo在没有terracotta的环境下执行一次,看看结果我们首先先写一个简单的多线程代码(我们这个例子制定共享TerracottaDemo类的demo对象,它包含的count和yale对象也就随之被整个集群共享了):
package yale.terracotta.demo;
public class TerracottaDemo implements Runnable {
private static Terrac ...
因为工作中历史产品采用了terracotta作为分布式缓存线性扩展平台,因此不得不提前对其原理做了相关了解,当然其中很多的设计思想和oracle、memcached的设计相似,但也有自己的亮点,那就是JVM的懒加载细粒度拷贝以及线性扩展,使得序列化对象消耗大大降低,提高CPU使用率以及内存无缝线性扩展。
我在研究terracotta的时候,没有急于去尝试环境搭建以及demo实现,首先我去了解了一下为什么之前产品为什么会选型使用它、它是什么、能做什么、和其他相似的技术相比有什么优势,最后才做了相关的demo验证,以及相关产品中的调优,那么现在让我们来揭开它的面纱吧(文章内容从官方、网络、公司资源 ...
分布式事务设计-三段式提交
- 博客分类:
- 应用架构
前面的文章提到的两段式提交,已经能够很好得解决分布式事务了,然而两阶段在即使只有一个进程发生故障时(协调员发生故障了),那么整个系统中也会存在较长时间的block(参与者进程需要block直至协调员恢复,或者与其他 ...