
架构设计
阿利518
专注于互联网技术学习和积累(31702935)
展开
-
MSM--Memcached_Session_Manager介绍及使用
(注: 本文转载自http://www.iteye.com/topic/1125301)我们都知道对于一些大型的web2.0的网站,在正式部署时一般是部署在不同故障域的多台应用服务器上,以j2ee应用为例,一般我们都会部署在tomcat下,假如我们部署了10台tomcat服务器,那这10台tomcat可能是部署在不同的机器上,然后将应用程序copy到这10台tomcat下,然后启动所有tomc转载 2015-03-06 14:59:59 · 322 阅读 · 0 评论 -
Kylin正式发布:面向大数据的终极OLAP引擎方案
日前,eBay公司隆重宣布已经正式向开源业界推出分布式分析引擎:Kylin(http://kylin.io)。作为一套旨在对Hadoop环境下分析流程进行加速、且能够与SQL兼容性工具顺利协作的解决方案,Kylin成功将SQL接口与多维分析机制(OLAP)引入Hadoop,旨在对规模极为庞大的数据集加以支持。背景信息 eBay公司当前面临的主要挑战在于,数据规模正随着用户群体的多样化拓展而转载 2015-10-23 15:35:43 · 557 阅读 · 0 评论 -
商业智能在数据处理平台建设中的应用研究
1 引 言 “金税工程”二期建设中,山东国税系统各类应用系统数据模式采用市局集中或省市分别存储的“集中加分布”方式,数据资源分布在各市局,应用系统经过多年的运行,一方面各市局积累了较多的历史数据,另一方面由于数据分布模式的原因,省局对全省数据尚不能进行全面的综合处理分析。因此,针对现在的数据模式,进一步提高数据集中度,实现异构数据库数据资源的有效整合和分析利用,成为信息化建设的主要课题。转载 2015-10-24 10:25:38 · 880 阅读 · 0 评论 -
开源RBAC权限引擎:Anycmd
权限系统干了什么? 给出一套方法,将系统中的所有功能标识出来,组织起来,托管起来,将所有的数据组织起来标识出来托管起来, 然后提供一个简单的唯一的接口,这个接口的一端是应用系统一端是权限引擎。权限引擎所回答的只是:谁是否对某资源具有实施 某个动作(运动、计算)的权限。返回的结果只有:有、没有、权限引擎异常了。http-anycmd-github-io-anycmd-">文档 h转载 2015-11-19 20:55:48 · 3579 阅读 · 0 评论 -
RBAC用户权限管理数据库设计
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。(如下图)角色是什么?可以理解为一定数量的权限的集合,权限的载体。例如:一个论坛系统,“超级管理员转载 2015-11-19 21:07:34 · 504 阅读 · 0 评论 -
Let’s Encrypt 项目计划自动化地提供免费的 CA 证书
<img class="size-full wp-image-8039" src="http://cnzhx.net/wp-content/uploads/2014/11/lets-encrypt.png" alt="Let's Encrypt" width="912" height="31转载 2015-11-19 21:53:17 · 752 阅读 · 0 评论 -
珠联璧合:组合 R 语言和 D3.js 的力量
根据维基百科,在各种组织里非结构性数据可能占据了所有数据的70%-80%。由于每个人都想在数据的重重高山中搜寻到隐藏的宝藏,因此用于处理、分析、可视化数据的新工具不断地推陈出新。本文主要介绍 R语言 的数据处理和 D3 Javascript库 的数据可视化之间的结合。不可变的图表当我们使用R做数据处理时,R本身自带了一些生成图表的选项。其中一个选项就是使用R的”ggplit2″包。这个转载 2015-11-19 23:03:02 · 1120 阅读 · 0 评论 -
State Threads 回调终结者
State Threads 回调终结者 上回写了篇《一个“蝇量级”C语言协程库》,推荐了一下Protothreads,通过coroutine模拟了用户级别的multi-threading模型,虽然本身足够“轻”,杜绝了系统开销,但这个库本身应用场合主要是内存限制的嵌入式领域,提供原生态组件太少,使用限制太多,比如依赖其它调用产生阻塞等。这回又替大转载 2015-12-17 18:15:20 · 596 阅读 · 0 评论 -
MonaServer服务
前身是CumulusServer,现更名为MonaServer,增加许多新东西,优化性能,提高连接稳定性,增加支持的协议内容。lua强大的可扩展脚本和API接口,NoSQL存储,RTMFP协议,P2P通道,UDP传输。开发上的高效,轻便,多平台,稳定。提供下面的多种服务: - pull data (request + response) - push data (server ->转载 2015-12-22 15:14:34 · 2953 阅读 · 0 评论 -
分布式基础通信协议:paxos,totem和gossip
背景在分布式中,最难解决的一个问题就是多个节点间数据同步问题。为了解决这样的问题,涌现出了各种奇思妙想。只有在解决了如何进行信息同步的基础之上才衍生出形形色色的应用。这里开始介绍几种分布式通信协议。简单即有效——totem协议:totem协议也许你还比较陌生,但是corosync就是totem协议的一个开源实现。比较火的HA软件pacemaker就是基于corosync来提转载 2016-02-02 10:56:58 · 1186 阅读 · 0 评论 -
consul简介
1. 什么是consul?是一个服务管理软件。支持多数据中心下,分布式高可用的,服务发现和配置共享。consul支持健康检查,允许存储键值对。一致性协议采用 Raft 算法,用来保证服务的高可用.成员管理和消息广播 采用GOSSIP协议,支持ACL访问控制。ACL技术在路由器中被广泛采用,它是一种基于包过滤的流控制技术。控制列表通转载 2016-02-02 11:04:21 · 1190 阅读 · 0 评论 -
多维分析OLAP引擎Mondrian学习
1 背景1.1 实时业务监控背景随着信息技术的飞速发展,在电力、电信、金融、大型制造等各个行业ERP、CRM、SCM、OA等越来越多的IT系统得以成功实施,这些分散建设的IT系统为各部门的运营效率提升发挥了很大的作用。同时,为了满足业务管理和决策的报表系统(包括传统报表、数据仓库、OLAP等)也被创建出来,企业主管通过报表了解企业的总体运行状态。转载 2016-04-01 17:50:11 · 8302 阅读 · 2 评论 -
百万级别数据,数据库Mysql,Mongodb,Hbase如何选择?
情况说明:现在需要做一个数据存储,500w左右的数据,日后每天大约产生5w条左右的数据。想把这些数据存储起来,供日后的数据分析用?使用上面说的三种数据库中的哪中比较好?是否有必要建立集群?个人看法是:从长远角度看,由于单台机器的性能瓶颈,后期肯定要做集群,单纯的做复制最终也无法缓解单台master上读的负担。因此,使用mysql的话会使用cluser。但是了解到mysql的clus转载 2016-04-01 18:13:30 · 4358 阅读 · 0 评论 -
采集rtsp流摄像头到浏览器实时播放方案
转载自:严健康的个人博客 http://www.yanjiankang.cn/本文链接地址: http://www.yanjiankang.cn/rtsp_camera_to_web_browser/最近在做一个流媒体的项目,项目中需要采集摄像头的视频流到网页界面实时播放,一般ip摄像头的流格式都是rtsp的,虽然可以通过vlc实时播放,但是不如浏览器观看给用户的体验简单。转载 2017-10-27 10:39:18 · 7488 阅读 · 3 评论 -
实时监控、直播流、流媒体、视频网站开发方案设计简要
一、本地推送端1、本地:采用javaCV(安卓和java平台推荐javaCV)、ffmpeg、openCV或者jmf可以很方便的获取到本地摄像头流媒体javaCV系列文章:javacv开发详解之1:调用本机摄像头视频javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实转载 2017-10-27 11:08:51 · 1626 阅读 · 0 评论 -
LIRE(Lucene Image Retrieval)相似图像索引和搜索机制
众说周知,lucene是一个开源的强大的索引工具,但是它仅限于文本索引。基于内容的图像检索(CBIR)要求我们利用图像的一些基本特征(如颜色纹理形状以及sift,surf等等)搜索相似的图片,LIRE(Lucene Image Retrieval)是一款基于lucene的图像特征索引工具,它能帮助我们方便的对图像特征建立索引和搜索,作者也在不断加入新的特征供用户使用。如果你熟悉lucene,那么用转载 2017-11-22 09:07:32 · 1207 阅读 · 0 评论 -
多维分析OLAP引擎Mondrian学习
1 背景1.1 实时业务监控背景 随着信息技术的飞速发展,在电力、电信、金融、大型制造等各个行业ERP、CRM、SCM、OA等越来越多的IT系统得以成功实施,这些分散建设的IT系统为各部门的运营效率提升发挥了很大的作用。同时,为了满足业务管理和决策的报表系统(包括传统报表、数据仓库、OLAP等)也被创建出来,企业主管通过报表了解企业的总体运行状态。但是,随着转载 2015-10-23 16:36:21 · 1861 阅读 · 0 评论 -
Open Source BI Projects
Open Source BI Projects 介绍当前比较流行的开源商业智能项目和工具。1. OLAP4J OLAP4J一个类似于JDBC驱动,能够用于访问任何OLAP服务器的Java公共类包。所以你可以开发一个应用程序来实现一个OLAP服务器与另一个服务器的交互。2. Mondrian Mondrian是一个采用java转载 2015-10-23 15:58:46 · 588 阅读 · 0 评论 -
使用json web token
由来做了这么长时间的web开发,从JAVA EE中的jsf,spring,hibernate框架,到spring web MVC,到用php框架thinkPHP,到现在的nodejs,我自己的看法是越来越喜欢干净整洁的web层,之前用jsf开发做view层的时候,用的primefaces做的界面显示,虽然primefaces的确提供了很大的便利,可以让开发人员专注于业务逻辑开发,这样其实就省去转载 2015-10-16 14:55:28 · 1764 阅读 · 1 评论 -
Actor编程模型——简介
Actor编程模型——简介2014年10月31日 ⁄ 综合 ⁄ 共 1983字 ⁄ 字号 小 中 大 ⁄ 评论关闭一、 引言之前系统中有这样一处代码:在线上运行一段时间后,这个任务线程竟然莫名其妙地退出了,要不是后来添加了一些日志信息,以及thread-dump分析,根本不晓得这个任务早都没有了。原因就是hand转载 2015-04-10 09:27:36 · 3630 阅读 · 0 评论 -
ZeroMQ的学习和研究
一、ZeroMQ的背景介绍引用官方的说法: “ZMQ(以下ZeroMQ简称ZMQ)是一个简单好用的传输层,像框架一样的一个socket library,他使得Socket编程更加简单、简洁和性能更高。是一个消息处理队列库,可在多个线程、内核和主机盒之间弹性伸缩。ZMQ的明确目标是“成为标准网络协议栈的一部分,之后进入Linux内核”。现在还未看到它们的成功。但是,它无疑是极具前景的、并且是转载 2015-04-22 17:31:30 · 495 阅读 · 0 评论 -
activemq的几种基本通信方式总结
简介 在前面一篇文章里讨论过几种应用系统集成的方式,发现实际上面向消息队列的集成方案算是一个总体比较合理的选择。这里,我们先针对具体的一个消息队列Activemq的基本通信方式进行探讨。activemq是JMS消息通信规范的一个实现。总的来说,消息规范里面定义最常见的几种消息通信模式主要有发布-订阅、点对点这两种。另外,通过结合这些模式的具体应用,我们在处理某些应用场景的时候也衍生转载 2015-04-22 16:35:23 · 434 阅读 · 0 评论 -
用Kibana和logstash快速搭建实时日志查询、收集与分析系统
Logstash是一个完全开源的工具,他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索),您可以使用它。说到搜索,logstash带有一个web界面,搜索和展示所有日志。kibana 也是一个开源和免费的工具,他可以帮助您汇总、分析和搜索重要数据日志并提供友好的web界面。他可以为 Logstash 和 ElasticSearch 提供的日志分析的 Web 界面说到这里,我们转载 2015-04-15 09:06:03 · 479 阅读 · 0 评论 -
LogStash,使日志管理更简单
James Turnbull,通过对日志管理项目情境中的Logstash实施细节的介绍,给了读者信服的理由去使用Logstash进行集中化的日志管理。 《Logstash》一书通过一个双面案例(two side case)从不同方面进行介绍,其低准入门槛适合小企业使用,其扩展能力使其也能满足大企业的需求。今年二月,James在Hangops会议上谈到本书,“它主要面向那些以前没有见过LogSt转载 2015-04-15 09:07:54 · 1984 阅读 · 0 评论 -
设计与开发应用服务器(一)------常见模式
设计与开发服务器算是一个技术含量比较高的领域,需要涉及到网络编程、IO、多线程、分布式、性能和可扩展性等较为复杂的技术细节,比起JSP/servlet或SSH框架开发业务系统来说,开发服务器比较偏重于技术一些,许多开发人员会有些束手无措,但却无法避免,比如基于HTTP协议的服务不适用时,或需要提供某种协议的容器时。其实服务器的设计与开发也是有模式可借鉴,只不过没有框架或是书籍来这么一些模式转载 2015-04-09 17:22:06 · 475 阅读 · 0 评论 -
zookeeper基本原理
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用,因此需要有一种可靠的、可扩展的、分布式的、可配置的协调机制来统一系统的状态。Zookee转载 2015-04-17 17:00:59 · 402 阅读 · 0 评论 -
Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的。现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应。 第一:介绍Dubbo背景 大规模服务化之前,应用可能只是通过RMI或Hessian等工具,转载 2015-04-17 17:15:37 · 340 阅读 · 0 评论 -
理解OAuth 2.0
OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。本文对OAuth 2.0的设计思路和运行流程,做一个简明通俗的解释,主要参考材料为RFC 6749。一、应用场景为了理解OAuth的适用场合,让我举一个假设的例子。有一个"云冲印"的网站,可以将用户储存在Google的照片,冲印出来。用户为了使用转载 2015-05-14 12:39:54 · 359 阅读 · 0 评论 -
RESTful API 设计指南
网络应用程序,分为前端和后端两个部分。当前的发展趋势,就是前端设备层出不穷(手机、平板、桌面电脑、其他专用设备......)。因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信。这导致API构架的流行,甚至出现"API First"的设计思想。RESTful API是目前比较成熟的一套互联网应用程序的API设计理论。我以前写过一篇《理解RESTful架构》,探讨如何理解这个概转载 2015-05-14 11:42:49 · 396 阅读 · 0 评论 -
用户认证授权系统方案思考
一旦用户注册之后,用户信息就保存在服务器端(DB/Cache)。关键在于用户需要提供身份凭证,一般是用户名和密码。即常见的登陆页面:用户输入username和password,勾选Remember Me(可选,一般是记住一周),点击登陆,提交请求到服务端(这里一般是走HTTPS)。服务端根据用户名和密码到数据库查询是否匹配,如果匹配的话,说明身份认证成功。这是一次普通的身份认证过程。非常好理解。转载 2015-06-17 10:15:41 · 1889 阅读 · 0 评论 -
Redis应用场景
1. MySql+Memcached架构的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题: 1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间。 2.Memcached转载 2015-06-16 10:36:30 · 487 阅读 · 0 评论 -
Redis 集群方案
根据一些测试整理出来的一份方案:1. Redis 性能对于redis 的一些简单测试,仅供参考:测试环境:Redhat6.2 , Xeon E5520(4核)*2/8G,1000M网卡Redis 版本:2.6.9 客户端机器使用redis-benchmark 简单GET、SET操作:1. 1单实例测试1. Value大小:10Byte~1390Byte处转载 2015-06-02 14:10:43 · 445 阅读 · 0 评论 -
Session原理、安全以及最基本的Express和Redis实现
基础概念Session管理是Web Application的基础也是一个老生常谈的话题。为了方便后文的展开,更重要的是确认自己清晰的理解了整个Session管理的概念,我在此还是决定赘述的整个流程。如果你已经对于Session概念非常清晰的话,可以跳过本节不影响对于后文的理解。HTTP协议在设计的时候是无状态的。这是一个很关键的概念,意味着服务器在处理请求的时候,并不关注这个请求是转载 2015-06-02 10:10:28 · 705 阅读 · 0 评论 -
使用 AngularJS & NodeJS 实现基于 token 的认证应用
认证是任何 web 应用中不可或缺的一部分。在这个教程中,我们会讨论基于 token 的认证系统以及它和传统的登录系统的不同。这篇教程的末尾,你会看到一个使用 AngularJS 和 NodeJS 构建的完整的应用。传统的认证系统在开始说基于 token 的认证系统之前,我们先看一下传统的认证系统。用户在登录域输入 用户名 和 密码 ,然后点击 登录 ;请求发送之后,通转载 2015-10-16 15:14:04 · 1067 阅读 · 0 评论