7月目标 socket , 一致性哈希算法 ; mongodb分片; 分布式消息队列; 中间件的使用场景
分布式的基础:一致性哈希 路由算法的一致性hash
http://www.jiacheo.org/blog/174
http://www.tuicool.com/articles/vQVbmai
http://www.cnblogs.com/huangxincheng/p/3708316.html
redis 和 mongodb的使用,要能自己写 helper帮助类,和多台机器上的使用
socket
http://www.cnblogs.com/JimmyZhang/archive/2008/09/07/1286300.html
socket一般都是用在控制台、form程序(winform、wpf)等能够持续运行的环境。asp.net也可以使用(你可以将你在控制台里面建立好的socket程序代码完整的复制到aspx后台代码中一样运行),但是不适合做为长期运行的socket服务端,适合做简单的socket客户端程序,去请求socket服务。
只搞过1W以内的用户!做一个windows服务不会的可以百度windows服务;作为服务端,使用UDP通信只要客户端登录就将该客户端加入在线列表中,不在线的就不用管喽!客户端过一定的时间发送心跳如果服务端接收不到心跳消息就认为客户端离线,将该客户端踢出在线列表!
redis
http://www.cnblogs.com/huangxincheng/archive/2013/04/10/3013407.html
消息队列
我也要谈谈大型网站架构之系列(4)——分布式中的异步通信
中间件的定义:
答:服务器 之前 通信 那是不同服务直接的数据交换 比如 你有一个验证服务器(可以验证用户权限) 然后你还有一个添加数据的服务! 用户添加数据肯定要用相应的权限! 所以他们会通信
答:传什么 无所谓 就给你们客户端连接服务器一样 服务器连接服务器 也是一样的
问:那,比如说,我用个c# 新建个类库,实现了这个所谓的中间接收和发送的机制,这个类库生成的dll我就可以叫做 中间件了把
答:server 是服务 中间件 是介于服务和客户之间的东西! 故名中间件
问:那我举这样的例子
用户登陆,请求调用A服务器上的验证, 但是用户数据在B数据库上,于是A发消息到B数据库,验证后返回数据到A,然后又返回给用户
这个过程,A和B之间通讯的过程,叫做服务器通讯
A和B之间,发送消息和接收消息的代码,叫做 中间件
可以这样理解么?
答:
如果你愿意 也可加入负载均衡 不过中间件更多要做的是 服务端逻辑操作 .
客户端并不知 服务端到底有多少服务 有什么服务!
问:也就是说,如果我只有一台服务器,这个服务器上有个 webservice给别人调用,也可以叫做 中间件?
答:中间件会根据没过客户的请求 做出逻辑操作 具体要请求那个服务进行返回请求! 很多时候 中间件会调用多个服务 进行组合数据然后返回给客户
问:嗦嘎 明白了
简单的说,就是 负责在中间干活,不是直接调用服务器的,就是中间件
至于有没有 分布式,有没有 消息队列什么的 这个跟 中间件 没有直接关系
只不过大型的项目里面,一般中间件都是分布式,并且带了消息队列而已
可以这样理解了不
答:你只要理解中间 这2个字就行了
7月目标 socket , 一致性哈希算法 ; mongodb分片; 分布式消息队列; 中间件的使用场景的更多相关文章
- memcached 一致性哈希算法
本文转载自:http://blog.csdn.net/kongqz/article/details/6695417 一.概述 1.我们的memcache客户端使用了一致性hash算法ketama进行数 ...
- 一致性哈希算法与Java实现
原文:http://blog.csdn.net/wuhuan_wp/article/details/7010071 一致性哈希算法是分布式系统中常用的算法.比如,一个分布式的存储系统,要将数据存储到具 ...
- 五分钟理解一致性哈希算法(consistent hashing)
转载请说明出处:http://blog.csdn.net/cywosp/article/details/23397179 一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法 ...
- 每天进步一点点——五分钟理解一致性哈希算法(consistent hashing)
转载请说明出处:http://blog.csdn.net/cywosp/article/details/23397179 一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT) ...
- 一致性哈希算法以及其PHP实现
在做服务器负载均衡时候可供选择的负载均衡的算法有很多,包括: 轮循算法(Round Robin).哈希算法(HASH).最少连接算法(Least Connection).响应速度算法(Respons ...
- Java_一致性哈希算法与Java实现
摘自:http://blog.csdn.net/wuhuan_wp/article/details/7010071 一致性哈希算法是分布式系统中常用的算法.比如,一个分布式的存储系统,要将数据存储到具 ...
- 一致性哈希算法(consistent hashing)【转】
一致性哈希算法 来自:http://blog.csdn.net/cywosp/article/details/23397179 一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希 ...
- 一致性哈希算法学习及JAVA代码实现分析
1,对于待存储的海量数据,如何将它们分配到各个机器中去?---数据分片与路由 当数据量很大时,通过改善单机硬件资源的纵向扩充方式来存储数据变得越来越不适用,而通过增加机器数目来获得水平横向扩展的方式则 ...
- 一致性哈希算法——算法解决的核心问题是当slot数发生变化时,能够尽量少的移动数据
一致性哈希算法 摘自:http://blog.codinglabs.org/articles/consistent-hashing.html 算法简述 一致性哈希算法(Consistent Hashi ...
随机推荐
- iOS开发之按钮的基本使用
实现功能: 点击向上的箭头,按钮图片向上,移动,点击向下的箭头,按钮图片向下移动 点击向左的箭头,按钮图片向左移动,点击向右的箭头,按钮图片向右移动, 点击加号图片放大,点击减号,图片缩小 第一步: ...
- (转)C++头文件顺序
转自:http://blog.csdn.net/clever101/article/details/7269058关键总结:先包含的头文件的函数会覆盖后包含的头文件的同名函数.建议采用Google C ...
- 【C/C++】C/C++中Static的作用详述
在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条. ❶先来介绍它的第一条也是最重要的一条:隐藏.当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可 ...
- VS2015打开项目慢、死机和卡顿解决方案
VS2015功能强大,但是经常慢 网上有解决方案如下几个,留着备用: 1.选项-环境-基于客户端性能自动调整视觉体验,去掉选项. 2.选项-源代码管理-插件选无. 3.选项-文本编辑器-所有语言-滚动 ...
- vim复制,粘贴,删除,撤销,替换,光标移动等用法
我接触linux的时候,用的是nano这个文本编辑器,个人觉得他的最大优点就是方便,快速.打开文件,修改文件,到退出都十分的快速,简单.这一点上比vi,vim要强,但是nano不能显示彩色字,不能进行 ...
- 项目bug
word-break: normal|break-all|keep-all; 值 描述 normal 使用浏览器默认的换行规则. break-all 允许在单词内换行. keep-all 只能在半角空 ...
- 设置Chrome忽略网站证书错误
本人在XP下使用Chrome.总是莫名其妙的提示整数错误,一部分https网站无法直接访问.网上找了下,把解决思路记录下来. 解决这个问题很简单,只需要修改你平时用来启动Chrome的快捷方式就可以忽 ...
- Beginning SDL 2.0(5) 基于MFC和SDL的YuvPlayer
本文是在“Beginning SDL 2.0(4) YUV加载及渲染”(以下简称BS4)基础上做的功能完善,如果你对之间介绍的内容了解不多,麻烦先阅读之前的内容. 本文主要介绍如何完成一个基于MFC和 ...
- Spring Boot 中使用WebJars
WebJars能使Maven的依赖管理支持OSS的JavaScript库/CSS库,比如jQuery.Bootstrap等: WebJars是将Web前端Javascript和CSS等资源打包成Jav ...
- mysql 通过echo的方式写入数据库 中文乱码解决方案
echo "set names utf8;insert into xxx (path, sn, time, flag) values ('$wav', '$sn', '$secs', 'op ...