
分布式与集群
发布关于分布式与集群的学习资料、分布式与集群区别、常见问题及解决方法、常用的分布式和集群技术的搭建技巧。
Mr_Smile2014
加油↖(^ω^)↗,smile....
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
fastdfs分布式文件系统之与dubbo整合实现分布式服务接口
fastdfs是开源的轻量级分布式文件系统,它提供了java版本的client api。通过client API可以实现对文件的上传、追加、下载、删除等功能。为了避免每个应用都配置fasdtfs参数、读取配置文件、调用client api获取trackerServer和StorageServer进行上传、下载、删除等操作及返回结果的处理。所以采用与dubbo整合,提供分布式服务接口,来简化其它服务和应用的文件操作处理,同时提高代码的复用性。原创 2016-09-13 15:30:23 · 8944 阅读 · 5 评论 -
fastdfs分布式文件系统之TrackerServer连接池实现
公司使用fastdfs文件系统来存储文件和图片,为了避免每个系统都直接通过客户端直接访问fastdfs文件系统,所以我们做了一个dubbo服务。要实现图片上传、下载的服务或工程直接调用dubbo接口就可以了。为了提高性能对fastdfs文件系统TrackerServer写了个连接池,同时写了空闲连接是否可用的监测类。原创 2016-09-05 17:16:30 · 9435 阅读 · 20 评论 -
Fastdfs分布式文件系统之文件同步机制
从fastdfs文件系统结构中我们可以看出不管是上传文件、删除文件、修改文件及新增storager server,文件的同步都是同组内多台storager server之间进行的;tracker server的配置文件中没有出现storage server,而storage server的配置文件中会列举出所有的tracker server。这就决定了storage server和tracker server之间的连接由storage server主动发起,storage server为每个track原创 2016-08-04 15:16:39 · 11086 阅读 · 3 评论 -
fastdfs分布式文件系统文件上传、下载、删除交互过程讲解
fastdfs中的工程流程:首先客户端client 调用fastdfs的api,获取可用的tracker server ,再调用tracker server 获取可用的组,tracker server 通过负载均衡返回一个最优的storage server,这样客户端与client就建立了连接,client就可以调用storage server对文件进行上传、删除和追加的操作。原创 2016-08-03 10:51:51 · 10668 阅读 · 5 评论 -
fastdfs分布式文件系统之tracker server介绍
tracker server是FastDFS文件系统的协调者,其主要作用是负载均衡和调度。Tracker server在内存中记录分组和Storage server的状态等信息,不记录文件索引信息,占用的内存量很少。另外,客户端(应用)和Storage server访问Tracker server时,Tracker server扫描内存中的分组和Storage server信息,然后给出应答。由此可以看出Tracker server非常轻量化,不会成为系统瓶颈。原创 2016-08-02 21:47:41 · 7824 阅读 · 1 评论 -
fastdfs分布式文件系统之Storage server介绍
FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器(tracker)主要做调度工作,就像公交车站里面的调务员一样,它负责通过负载均衡选出最优的存储节点(storage)。存储节点(storage)顾名思义就是负责存储、数据同步、数据的操作的一个服务。原创 2016-08-02 17:11:36 · 4770 阅读 · 1 评论 -
【好文推荐】并发性能优化 : 降低锁粒度
在高负载多线程应用中性能是非常重要的。为了达到更好的性能,开发者必须意识到并发的重要性。当我们需要使用并发时, 常常有一个资源必须被两个或多个线程共享。转载 2016-08-01 17:29:51 · 2218 阅读 · 2 评论 -
在windows、linux中开启nginx的Gzip压缩大大提高页面、图片加载速度
为了降低tomcat服务的压力,把页面上的图片采用windows版的nginx进行加载,由于有些图片比较大,加载特别的慢,所以在nginx中打开了gzip的压缩功能。加载图片的速度快了很多。通过站长工具中的"网页GZIP压缩检测"工具检测图片的压缩率达到了69.53%,如下图:下面介绍nginx.conf文件是怎么配置的:1、打开nginx.co原创 2016-07-21 15:47:13 · 7159 阅读 · 9 评论 -
nginx 代理https后,spring mvc web应用redirect https变成http
前几天用nginx 代理https后,应用redirect https变成http,导致网站无法访问的问题,在网上找了半天,终于找到了解决方法了。虽然自己解决了,我相信还有其他朋友遇到过这个问题,所以转载分享一下:原因分析:浏览器到nginx是https,nginx到应用服务器变成http,应用服务器,再做302 redirect的时候,返回的redirect 地址就好变成转载 2016-06-17 18:11:17 · 11674 阅读 · 5 评论 -
采用nginx_upstream_jvm_route模块解决tomcat多节点session不一致问题
这种方式不需要修改web工程只需要对nginx下载nginx_upstream_jvm_route插件,修改tomcat和nginx配置,就能解决session问题。由于这种方式不会把session存储起来,所以当某tomcat节点挂掉之后就会造成用户需要重新登录的问题。思路:是通过对nginx里面每个参与访问的server都打上不同的标签值,这个值和tomcat的jvmRoute值相同。原创 2015-12-18 17:03:52 · 5756 阅读 · 2 评论 -
使用redis解决tomcat6在nginx负载下多节点共享session问题
使用redis共享tomcat多节点session,需要安装redis、nginx、tomcat6以及用于tomcat存储session到redis的jar包:tomcat-redis-session-manager-1.2-tomcat-6.jar、commons-pool-1.6.jar、jedis-2.1.0.jar等。这些jar包、配置文件及demo程序可以在最后的demo地址中下载。原创 2015-12-17 15:34:29 · 4739 阅读 · 8 评论 -
web集群中常用的session同步解决方案及对比
随着网站的功能越来越多,用户量越来越庞大,单节点模式已经严重不能支撑整个系统的正常运作,轻则用户页面访问时间越来越慢,重则就会导致整个系统瘫痪。这时候就需要优化或调整目前的架构,大部分人就会采用各种负载均衡软件例如nginx、hproxy、LVS等,也有的采用分布式的方式把系统根据功能拆分成很多系统,也有的根据地域和网络不同来实现访问不同节点部署的系统,也有的大型高流量、高负载的系统把负载原创 2015-12-07 22:17:27 · 5732 阅读 · 4 评论 -
Java并发编程:深入剖析ThreadLocal
有多年编程经验的软件行业艺术家们应该都知道ThreadLocal。ThreadLocal很多地方叫做线程本地变量,也有些地方叫做线程本地存储。通俗的讲ThreadLocal可以让创建的变量只被同一个线程进行读和写操作。所以尽管有两个线程同时执行一段相同的代码,而且这段代码都指向同一个ThreadLocal变量的引用,但是这两个线程依然不能看到彼此的ThreadLocal变量域。Th原创 2015-10-31 20:35:34 · 1453 阅读 · 0 评论 -
分布式与集群的区别
简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。例如:如果一个任务由10个子任务组成,每个子任务单独执行需1小时,则在一台服务器上执行改任务需10小时。采用分布式方案,提供10台服务器,每台服务器只负责处理一个子任务,不考虑子任务间的依赖关系,执行完这个任务只需一个小时。(这种工作模式的一个典型代表就是Hadoop的转载 2015-07-14 18:45:18 · 1359 阅读 · 2 评论 -
Nginx负载均衡和LVS负载均衡的比较分析
lvs和nginx都可以用作多机负载的方案,它们各有优缺,在生产环境中需要好好分析实际情况并加以利用。首先提醒,做技术切不可人云亦云,我云即你云;同时也不可太趋向保守,过于相信旧有方式而等别人来帮你做垫被测试。 把所有即时听说到的好东西加以钻研,从而提高自己对技术的认知和水平,乃是一个好习惯。 下面来分析一下两者:一、lvs的优势:1、抗负载能力强,因为lvs工作方转载 2015-07-15 21:49:18 · 1339 阅读 · 2 评论 -
分布式程序防止多用户对同一数据更新问题
在分布式程序中经常遇到多个用户对同一数据的更新,虽然数据库中对更新操作加了锁,防止同时更新的问题,但是也可能会存在数据被重写的问题。比如:用户a 对学生表的name字段进行修改,用户b对学生表的age进行修改,它们是同时执行的。因为我们对更新加了锁,所以假如A执行,b等待,当a执行了后,b开始执行,由于b提交的数据中包含了name字段,所以对a修改的name值也修改了。所以就照成了数据的重写。原创 2015-08-02 21:00:39 · 3800 阅读 · 0 评论 -
负载均衡软件HAProxy学习
一、介绍 HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点, 这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护原创 2015-08-11 22:40:38 · 1380 阅读 · 0 评论